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

Resetting smart beacon to factory state

I'm doing some work with the nRF51822 smart beacon kit. I tried to do an over the air firmware update of the application, but kept getting dfu invalid state (2) errors after progress got to 1%. I tried to reupload the original precompiled hex application from the firmware files, with the same result. Device appeared to reset and go into advertising mode after any attempts to update the application file.

I figured the failed update may have caused other issues - so I tried to update the bootloader with the one from the precompiled hex folder (along with a init.dat file that was correct). Also updated the softdevice with an unaltered copy as well. Both failed in the same way as the application update. Now the device seems to be stuck in programming mode (blinking blue light), but now does not reset into advertising mode if the firmware update fails. I can still connect to the device to begin a firmware update normally, just the update fails.

I'm doing the update through the nRFBeacon Android app, and also tried with the Master Control Panel app. Phone is an LG L90 with Android 4.4.2. I saw that one other person had an issue with updates with 4.4, so I'm wondering if it's the phone and whether buying the nRF51822 dev kit might help and offer a hardwired option for updates to the beacon.

In any case, I would appreciate any advice on how to get the thing back to a factory state (if I haven't completely ruined it).

Parents
  • If DFU does not work on the beacon kit the first thing to check is what board revision you have. Revision 1.0.0 is pre-programmed with S110 v.6.0.0., thus compatible with beacon firmware v. 1.0.1 that uses the v.6.0.0 API.

    S110 v.6.0.0. does however not have the support for softdevice and bootloader DFU, so unfortunately, going from beacon FW 1.0.1 does require an external J-link/DK kit to update the kit with the cable Asbjørn mentioned. The update procedure is described in the index.html file found in the folder of the downloaded beacon firmware v.1.1.0.

    Board revisions after v.1.0.0 is already running with the latest firmware and can be updated with Master control panel 3.7.1 by following the steps described below the "testing" section in the SDK documentation. This makes an init file internally so you only need to provide the .hex file. On Android this init file has to be made manually. There is a guide on Github on how to do that.

Reply
  • If DFU does not work on the beacon kit the first thing to check is what board revision you have. Revision 1.0.0 is pre-programmed with S110 v.6.0.0., thus compatible with beacon firmware v. 1.0.1 that uses the v.6.0.0 API.

    S110 v.6.0.0. does however not have the support for softdevice and bootloader DFU, so unfortunately, going from beacon FW 1.0.1 does require an external J-link/DK kit to update the kit with the cable Asbjørn mentioned. The update procedure is described in the index.html file found in the folder of the downloaded beacon firmware v.1.1.0.

    Board revisions after v.1.0.0 is already running with the latest firmware and can be updated with Master control panel 3.7.1 by following the steps described below the "testing" section in the SDK documentation. This makes an init file internally so you only need to provide the .hex file. On Android this init file has to be made manually. There is a guide on Github on how to do that.

Children
Related