Custom NRF52810 board not advertising and hanging on nrf_sdh_enable_request()

Hello all,

I have recently developed a custom board that uses an nrf52810. It also contains an accelerometer as well as some hardware for regulating the voltage and charging a battery. The issue I am having is that the device is unable to advertise. I have been searching around the internet for days however have been unable to find a solution to my problem. I am using sdk17.1.0 and softdevice s112 v7.2.0. I have been trying to use the ble_blinky_pca10040e example to help me start learning to develop for this board. My board does not contain a LF clock and therefore I set it to use the RC in the sdk_config. I have also set the ram and flash sizes appropriately. I have made numerous other modifications to the sdk_config however nothing appears to work. I at first used rtt viewer to see the logs from the device while it ran and it would sometimes throw errors while attempting to set BLE_CONN_CFG_GAP, BLE_GAP_CFG_ROLE_COUNT, etc, sometimes with a fatal error thrown as well. I started using SES to debug the application. When the program is loaded onto the device it runs until it hits ble_stack_init and then either halts on the register at 00000A60, or (more often) gets stuck on the line SVCALL(SD_SOFTDEVICE_ENABLE, uint32_t, sd_softdevice_enable(nrf_clock_lf_cfg_t const * p_clock_lf_cfg, nrf_fault_handler_t fault_handler));. The errors commented above the call make me think that it has something to do with the LF clock config however if I check the configuration it is correct. (set to RC, accuracy to 1, RC_CTIV 16, RC_TEMP_CTIV to 2), and I can also see the correct values in the variable when debugging. The device is able to run examples that do not involve BLE (like the blinky example) without issue. This is my first time taking on a project this large and I will admit at this point I am feeling rather lost. Any assistance is greatly appreciated. I am also happy to upload any code or hardware files should anyone require them. 

Thank you!

  • Hi,

    Could you share you SDK config file?

    epice500 said:
    Do you know if any examples exist that are programmed specifically for the nrf52810?

    Any SDK PCA10040e example. You only have to remove the DEVELOP_IN_NRF52832 and NRFX_COREDEP_DELAY_US_LOOP_CYCLES defines from the compile flags in your IDE for it to run on actual nRF52810 hardware.

    regards

    Jared 

  • Hey Jared,

    Of course, I will send it right now. I have messed around with a lot of the settings by this point but I have also tried plenty of examples where I simply just change the LF clock settings. Also, the dev kit came in today and I had a chance to check it to see if there was any radio activity coming from my device when I ran the code you supplied me. Turns out there in fact is. When running RSSI viewer, when I power the device on I see a brief and steady jump in radio activity which correlates exactly to when the device is turned on. I took a screen recording of this for you and will include it in this post. I assume this is at least a good sign meaning that the device has the ability to at least briefly generate a radio signal.

    Take care,

    Mitchell

    8004.sdk_config.h

  • Hi,

    epice500 said:
    Of course, I will send it right now. I have messed around with a lot of the settings by this point but I have also tried plenty of examples where I simply just change the LF clock settings. Also, the dev kit came in today and I had a chance to check it to see if there was any radio activity coming from my device when I ran the code you supplied me. Turns out there in fact is. When running RSSI viewer, when I power the device on I see a brief and steady jump in radio activity which correlates exactly to when the device is turned on. I took a screen recording of this for you and will include it in this post. I assume this is at least a good sign meaning that the device has the ability to at least briefly generate a radio signal.

    Ok, so the HW should be somewhat OK. Could you try to flash this hex to your board and use the nRF Connect app and see if the board is advertising as a beacon?

    regards

    Jared 

    ble_app_beacon_pca10040e_s112.hex

  • Hey Jared,

    I flashed the hex file you provided with a s112 softdevice however I am still not sure if it is advertising. I cannot see any beacon with the manufacturing data being Nordic, is it possible that the device shows up as unnamed? I used the Bluetooth scanner in the nrf connect for desktop as well as IOS and get a bunch of unnamed devices. What data should show up from the beacon? Whenever I see the nrf dev kit in Bluetooth search it clearly shows up as a Nordic device. The advertising LED turns on when my board is activated however I cannot see it clearly in any application. Also there does not appear to be the same dramatic change in radio activity when I turn it on like there was for the other code you supplied me. I wonder what could be causing the Bluetooth stack to fail on the device?

    Thank you again,

    Mitchell

  • Hey Jared,

    Just an update, when I click verify application in SES, SES is able to find some small discrepancies in the file which is compiled and the one that is uploaded to the board, usually just a value or two that appears to be different. Could this cause a problem?

    Thank you,

    Mitchell

Related