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

Program hang in sd_softdevice_enable

Hi all,

I'm working with the nRF52 and I'm trying to run the heart rate sensor example from SDK version 13.1.0 using Crossworks as my IDE. I can compile and run the program but nothing happens and when I debug the program I find that it is hanging in sd_softdevice_enable(). I have used PCA100040 evaluation board and I have set FLASH_START=0x1F000 and RAM_START=0x20002800. I have also tried another ble_app_template example and got the same issue. I am using soft device s132.

I have tried using nRFGo to separate program soft device hex and app code hex separate and it did not work. It worked with pre-provided hex file.

Any ideas as to why this is happening?

Thanks,

William

  • Ok, I built and ran ble_app_hrs, from SDK 13.0 (sorry never downloaded 13.1 seems insignificant) on a PCA100040.

    It was broadcasting and I was able to connect using the HRM app in nRF Toolbox.

    I had to turn off nRF Logging to get the image size down for Keil. Also the ROM start in the app as provided was wrong.

    IROM1 start needs to be 0x1F000 and size is 0x61000. The size is arbitrarily large. Actual size of the image is under 32k. The start is specified in the S132_4.0.2 release notes.

    IRAM1 start is 0x20002558 and size is 0xDAA8

    The S132 4.0.2 image I loaded is the unaltered one in the components folder of the SDK.

    Take a look at this and see how things are configured on your end.

  • Thanks for help!

    I have got a evaluation uVision and followed your step. It worked! It looked like the issue came from my crossworks compiler environment setup for nRF52. I confirmed this is he situation I got.

    Is there some exporter in Nordic are familiar about Crossworks and can give some guide on this issue?

    Thanks!

  • Glad it worked for you in Keil. I know people complain that it is a rather antiquated IDE, but I find it works reliably and the support is excellent.

    On Crossworks, I noticed you already started reaching out for support on it through other postings. If that doesn't work, you might try posting a new very specific question regarding Crossworks and just wait for Nordic to respond.

    If you are a registered developer on the main Nordic site then you can open up support cases with them directly and they are very responsive. If you are interested in doing some serious product development it would be useful to register on the main site.

    Also I found this posting of interest. They claim Crossworks is just a rebranded version of the Segger IDE and they gave help in configuring it.

    devzone.nordicsemi.com/.../

  • Actually, Bjorn who wrote that info up on Crossworks/Segger seems to post a lot on IDE issues. You might try sending him a PM.

  • I finally figure out the right setup for CrossWorks and have tried several sample codes. They all worked as expected. Thanks!

Related