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

nRF52840 pca10056 compiled ble_app_blinky hex too small and doesn't work

Windows 10, Keil5 5.27.1.0, Nordic SDK 15.3.0 59ac345, pca10056 devkit for nRF52840.

Works:

The DK shows up as "JLINK" when plugged into USB.  I can copy the prebuilt hex to it and it work great.  Shows up in nRFConnect as "Nordic_Blinky"

I'm copying the 485kb hex from examples\ble_peripheral\ble_app_blinky\hex\ble_app_blinky_pca10056_s140.hex

Does not work:

When I build the uvprojx from examples\ble_peripheral\ble_app_blinky\pca10056\s140\arm5_no_packs, the build succeeds and produces a 63kb .hex in the _build folder.

When I copy this to the JLINK drive, the device resets, but the example does not work.  LED 1 does not illuminate and the stats for "Nordic_Blinky" are grayed out in nRFConnect.

I have tried enabling features in the Configuration Wizard for sdk_config.h, but get the same result.  I have enabled 

LED_SOFTBLINK

LOW_POWER_PWM

BLE_DFU … for the heck of it

NRF_DFU

Enabled a bunch of nRF_BLE_Services

Nordic BLE Button Service Client  (was not enabled, now is)

nRF_BLE

BLE_ADVERTISING_ENABLED  was not enabled, now is

When I copy back the prebuilt 485kb hex to the JLINK drive, it works again, no issues.  LED 1 illuminates and the nRFConnect stats for the device are updating and not grayed out.

------------

Please help me to link in the softdevice or flash this in some way that works.

Thanks!     

Parents
  • Hi Greg,

    I'm copying the 485kb hex from examples\ble_peripheral\ble_app_blinky\hex\ble_app_blinky_pca10056_s140.hex

    This file includes both SoftDevice and the example itself. When you drag this file over to the JLink folder, the device will do a full erase and program this file.

    When I build the uvprojx from examples\ble_peripheral\ble_app_blinky\pca10056\s140\arm5_no_packs, the build succeeds and produces a 63kb .hex in the _build folder

     Yes, this is correct, as this only builds the software itself and does not include the SoftDevice.

    When I copy this to the JLINK drive, the device resets, but the example does not work.  LED 1 does not illuminate and the stats for "Nordic_Blinky" are grayed out in nRFConnect.

     See my first answer. The device does a full erase, so you lose the SoftDevice on the device. This means that you do not get any BLE connectivity. Are you able to find anything when you search for devices in nRF Connect?

    Is there a reason for why you are not programming the device via Keil? When clicking Download (F8) in Keil, see image below, the SoftDevice is not deleted and the example should work as expected.



     

    Please help me to link in the softdevice or flash this in some way that works.

     Please use the Keil programming interface to program the device, as this will not delete the SoftDevice.

    Let me know how this works for you.

    Kind regards,
    Øyvind

  • Great - programming from Keil works.

    For when the pca10056 DK appears as a drive in Windows, is there code and documentation with more detail about how that works?  It's not obvious what is getting erased with either the Keil or drag-and-drop interface.  Does the 'mount as a drive' feature come from one of the bootloaders in the SDK, probably working with your windows driver for the usb device?

    Thanks Øyvind

  • My apologies for the late reply. 

    The drag-and-drop feature is part of the J-Link OB Debugger. I don't know the details about the drag-and-drop feature, but you can read more here.

    Kind regards,
    Øyvind

Reply Children
Related