Hi,
I'm using SDK v15.3.0 which has s132 6.1.1 to program an nRF521832. I had a single custom service on my stack and that was working well. I added a second service and I got ERROR 4 [NRF_ERROR_NO_MEM]. I understand that this is caused by the attribute table size not being large enough. so I increased it from the default - BLE_GATTS_ATTR_TAB_SIZE_DEFAULT = 1408 - to 3000 - approximately more than the double as a starting point. This is definitely an overkill as my second custom service has less characteristics than the first. This is what I did to increase the size of the attribute table - line 18 was added:
I learned that I also have to increase both RAM_START and RAM_SIZE - according to this thread.
Those are the linker macros I had defined before increasing them, and they were working fine for a single service:
And this is after I added 1600 to RAM_START and RAM_SIZE:
I'm not sure what else I'm missing, but I still get the same error.
One other interesting thing I'm getting is that if I set ble_cfg.gatts_cfg.attr_tab_size.attr_tab_size = 2816, I get Error 7 (invalid parameter). I can only seem to be able to use values that are multiples of 100. Is it meant to be this way?
Thanks