This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

NRF_ERROR_NO_MEM nrf52810, S112, SDK15

I have this error.

In a last time with same error on a nRF52832 I decided this problem with increase:

// <o> NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE - Attribute Table size in bytes. The size must be a multiple of 4. 
#ifndef NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE
//#define NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE 1408
#define NRF_SDH_BLE_GATTS_ATTR_TAB_SIZE 2000
#endif

// <o> NRF_SDH_BLE_VS_UUID_COUNT - The number of vendor-specific UUIDs. 
#ifndef NRF_SDH_BLE_VS_UUID_COUNT
#define NRF_SDH_BLE_VS_UUID_COUNT 3
#endif

On the 52832 it works. But on the 52810- project fall. 

How to fix it?

May be should increase some memory?

Another problem- I can't tune RTT viewer for nrf52810.

Parents Reply
  • Since you only mention "SDK15", I will refer to line numbers from SDK15.0.0. If you use another version, you should be able to find it, but the line numbers may vary.

    If you look in ble.h on line 492 you can see the possible return values for sd_ble_uuid_vs_add(). On line 490 it states that it will return NRF_ERROR_NO_MEM if there are no more free slots for VS UUIDs. 

    You can find all these sd function call descriptions in the SDK. Just search for the function name, and look for the one with SVCALL(...

    So try to increase NRF_SDH_BLE_VS_UUID_COUNT on line 8726 in sdk_config.h. Note that changing this may also trigger the project to require more RAM. Look for it in the log.

Children
Related