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

Programming nRF51822 via 6pin?

Hello all,

So I've ran into an unfortunate situation, our firmware team decided to ditch us just as we're about to launch our product. I got a dump from them including just about everything we ever paid them to do, and have made my way through programming our PCB boards via an AVR ISP MkII and getting our iOS and Android apps to compile via the ionic framework.

The last thing I've left to do to get us back up and running as we look for replacements is programming the Raytec MDBT40 which houses the nRF51822. Along the lines of developement we had decided to use Adafruits firmware for the unit as it had extensions written that were favorable to what we wanted to do with the module.

Looking through the dump, this seems to be the instruction set to upload the firmware via the 6pin connector on our daughter board, and from what I gather- we need to upload it via a JLink (which we have) but need the 20pin to 6pin adapter (just the PCB part, not the cable since we already have a cable that we use for the AVR ISP MkII).

 .\JLink.exe -if SWD -device nRF51822 -speed auto
 
loadfile  <PATH>\Adafruit_BluefruitLE_Firmware-master\Adafruit_BluefruitLE_Firmware-master\softdevice\s110_nRF51822_7.1.0_softdevice.hex
loadfile  <PATH>\Adafruit_BluefruitLE_Firmware-master\Adafruit_BluefruitLE_Firmware-master\0.5.0\blefriend\blefriend_s110_xxaa_0_5_0_150224_blefriend_release.hex
r
g
for spifriend go to:
loadfile  <PATH>\Adafruit_BluefruitLE_Firmware-master\Adafruit_BluefruitLE_Firmware-master\softdevice\s110_nRF51_8.0.0_softdevice.hex
loadfile <PATH>\Adafruit_BluefruitLE_Firmware-master\Adafruit_BluefruitLE_Firmware-master\0.7.7\blespifriend\blespifriend_s110_xxac_0_7_7_161213_blespifriend.hex

Is there anything I'm missing? Does anyone know if I can buy just the PCB part without the cable? I know that seems silly but why have 2 cables?

Regardless, if there's anyway to do this update via OTA- a bit of help would be appreciated as I haven't found a way to do it via the Adafruit BLE app nor the Nordic BLE Connect app... every time I try to get the module into DFU- it disconnects.

Much appreciate any help and guidance, cheers.

Parents
  • Update yet again...

    So, I can program a fresh unit with the slightly older softdevice and app from Adafruit and see the connection LED blink and connect to the module... (s110_nRF51822_7.1.0_softdevice.hex & blefriend_s110_xxaa_0_5_0_150224_blefriend_release.hex)

    ...but, when I try the later pair of softdevice and app- the module never starts (seemingly) the app. On an older board, I can program this newer combo and see it start up. (s110_nRF51_8.0.0_softdevice.hex & blespifriend_s110_xxac_0_7_7_161213_blespifriend.hex)

    Very close!

    Any thoughts? The files come from Adafruits repository found here:

    https://github.com/adafruit/Adafruit_BluefruitLE_Firmware

    /
    /edit

    Just to clarify, this is both confirmed with nRFgo Studio and JLink commandline.

    //edit 2

    Tested on a much older Rev2 board- functions just like the latest units... works on older softdevice/app but not on the newer- must be something I'm missing.

    Strangely, the high fuse set in the Moteino MEGA board settings to not erase the EEPROM chip upon upload via the AVR ISP MkII only works on the middle board (does not work, much like the BLE situation- on the oldest and newest boards).

Reply
  • Update yet again...

    So, I can program a fresh unit with the slightly older softdevice and app from Adafruit and see the connection LED blink and connect to the module... (s110_nRF51822_7.1.0_softdevice.hex & blefriend_s110_xxaa_0_5_0_150224_blefriend_release.hex)

    ...but, when I try the later pair of softdevice and app- the module never starts (seemingly) the app. On an older board, I can program this newer combo and see it start up. (s110_nRF51_8.0.0_softdevice.hex & blespifriend_s110_xxac_0_7_7_161213_blespifriend.hex)

    Very close!

    Any thoughts? The files come from Adafruits repository found here:

    https://github.com/adafruit/Adafruit_BluefruitLE_Firmware

    /
    /edit

    Just to clarify, this is both confirmed with nRFgo Studio and JLink commandline.

    //edit 2

    Tested on a much older Rev2 board- functions just like the latest units... works on older softdevice/app but not on the newer- must be something I'm missing.

    Strangely, the high fuse set in the Moteino MEGA board settings to not erase the EEPROM chip upon upload via the AVR ISP MkII only works on the middle board (does not work, much like the BLE situation- on the oldest and newest boards).

Children
No Data
Related