<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>how determine required ram size that soft device need</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/34796/how-determine-required-ram-size-that-soft-device-need</link><description>hi to all, 
 i am developing a device with nrf51822 and i have Inadequate ram problem, i know that softdevice required ram determined in runtime, so there is any way to know roughtly soft device require how much ram in rumtime(functions that i call or</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 28 May 2018 06:57:29 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/34796/how-determine-required-ram-size-that-soft-device-need" /><item><title>RE: how determine required ram size that soft device need</title><link>https://devzone.nordicsemi.com/thread/133566?ContentTypeID=1</link><pubDate>Mon, 28 May 2018 06:57:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9b3cac9a-3a38-4ed8-a999-cc956179bbd0</guid><dc:creator>bjorn-spockeli</dc:creator><description>&lt;p&gt;The SoftDevice will actually tell you if you have allocated to little RAM, i.e. it will return the application RAM start address. You can start a debug session with a breakpoint after the sd_ble_enable() call in nrf_sdh_ble_enable() in nrf_sdh_ble.c&lt;/p&gt;
&lt;p&gt;If you have RTT logging enabled( should be enabled by default in the ble_app_template example) then the RTT output will be displayed in the Debug Terminal in Segger Embedded Studio, as shown in the screenshot below.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-a672c7f26d394ab49d00df8897f62d5b/SES_5F00_app_5F00_ram_5F00_start_5F00_output.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;It is also possible to use the UART backend instead of the RTT backend by setting NRF_LOG_BACKEND_RTT_ENABLED to 0 and NRF_LOG_BACKEND_UART_ENABLED to 1 insdk_config.h. In both cases you&amp;#39;ll see the following output in the Debug Terminal/Serial TErminal/RTT Viewer if you have allocated to little RAM for the SoftDevice:&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;&amp;lt;warning&amp;gt; nrf_sdh_ble: Insufficient RAM allocated for the SoftDevice.
&amp;lt;warning&amp;gt; nrf_sdh_ble: Change the RAM start location from 0x20002210 to 0x20002220.
&amp;lt;warning&amp;gt; nrf_sdh_ble: Maximum RAM size for application is 0xDDE0.
&amp;lt;error&amp;gt; nrf_sdh_ble: sd_ble_enable() returned NRF_ERROR_NO_MEM.
&amp;lt;error&amp;gt; app: ERROR 4 [NRF_ERROR_NO_MEM] at C:\Nordic_Semiconductor\SDK_Repository\nRF5_SDK\nRF5_SDK_15.0.0_a53641a\examples\ble_peripheral\custom_ble_service_example\main.c:663
PC at: 0x0002EF37&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Best regards&lt;/p&gt;
&lt;p&gt;Bjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>