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

Getting an address as an error code on service discovery after update to SoftDevice 8

I just updated to SoftDevice 8 and now I'm getting the address 0x200023C4 in my apps error handler function. This error happens to be the start address for the ble_evt_buffer defined in softdevice handler. From looking at the terminal in MCP, it seems to be failing on reading CCCDs for my custom characteristics. If I change the order in which I initialize services then it fails on different characteristics, but always on a CCCD. It does successfully read some values from my custom services. I haven't changed any of my services after upgrading to softdevice 8. Looking at the release notes I thought it might have to do with the new variable size attribute table, but I set that the to default value which is what it should have been with the last softdevice (7.1) so I don't think that is the issue.

Any help would be greatly appreciated,

Seth

EDIT

This is definitely an issue with RAM, but I'm not sure what. When I change IRAM1 to 20002400 the error becomes 200027C4, and when IRAM1 is 20002600, the error is 200029C4. So the error is 0x3C4 greater than IRAM1. I tried changing the size of IRAM1 from 2000 to 2600, but got the original error of 200023C4.

EDIT#2

I just got the exact same error after advertising for a while, presumably when the advertising timed out and it tried to begin advertising again. My theory is that this is some issue with the ble event buffer as that is still the address that is being thrown as an error.

image description

image description

image description

image description

image description

image description

image description

Parents
  • I believe I am using SDK 8.0.0 as I have upgraded all of the keil packs, but to be sure, is there a way to tell definitively (sorry if this is a dumb question, but it's hard to keep track of all the pack numbers and things). I am using custom code that I have been developing over the past four months. Started developing on SDK 6.2.0, recently upgraded to 7.2.0 where it worked, and then soon after upgraded to 8 where problems occurred.

    I am using the chip on the NRF Evaluation Kit. I'm not currently in the office to look at it, but I'm pretty sure the chip is the NRF51822_xxaa_s110. I will verify this when I get in. I will investigate the two links you provided the moment I get in.

    Code=30516 RO-data=612 RW-data=208 ZI-data=6336

Reply
  • I believe I am using SDK 8.0.0 as I have upgraded all of the keil packs, but to be sure, is there a way to tell definitively (sorry if this is a dumb question, but it's hard to keep track of all the pack numbers and things). I am using custom code that I have been developing over the past four months. Started developing on SDK 6.2.0, recently upgraded to 7.2.0 where it worked, and then soon after upgraded to 8 where problems occurred.

    I am using the chip on the NRF Evaluation Kit. I'm not currently in the office to look at it, but I'm pretty sure the chip is the NRF51822_xxaa_s110. I will verify this when I get in. I will investigate the two links you provided the moment I get in.

    Code=30516 RO-data=612 RW-data=208 ZI-data=6336

Children
No Data
Related