Could not update firmware of nRF52840 SoC on Thingy:91 via MCUBoot

Dear Nordic Support, 

Please help me with following.

Hardware - Thingy:91 1.0.0 (2019.43) PCA20035

OS - Windows 10 64 Bit

Laptop - HP core i5, 8GBRAM

I want to connect Thingy91 to Edge Impulse. I want to follow guide given below by Edge Impulse, 

https://docs.edgeimpulse.com/docs/development-platforms/officially-supported-mcu-targets/nordic-semi-thingy91

But as they said in their guide "If Thingy:91 hardware version < 1.4.0" 

As they have given link 

https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/ug_thingy91_gsg.html#updating-firmware-through-usb

 

I started following this guide but got error at step 1. "Updating the firmware in the nRF52840 SoC" 

First I used latest nRFConnect 3.12.0  Application and Programmer v3.0.4  but got following errors 

Device was showing as 

Error Log was as following, 

2022-09-30T16:45:41.338Z DEBUG Application data folder: C:\Users\inspiron\AppData\Roaming\nrfconnect\pc-nrfconnect-programmer
2022-09-30T16:45:41.678Z INFO Using nrf-device-lib-js version: 0.4.13
2022-09-30T16:45:41.678Z INFO Using nrf-device-lib version: 0.12.8
2022-09-30T16:45:41.679Z INFO Using nrfjprog DLL version: 10.16.0
2022-09-30T16:45:41.679Z INFO Using JLink version: JLink_V7.66a
2022-09-30T16:45:41.756Z DEBUG App pc-nrfconnect-programmer v3.0.4 official
2022-09-30T16:45:41.757Z DEBUG App path: C:\Users\inspiron\.nrfconnect-apps\node_modules\pc-nrfconnect-programmer
2022-09-30T16:45:41.757Z DEBUG nRFConnect 3.12.0, required by the app is (^3.12.0)
2022-09-30T16:45:41.757Z DEBUG nRFConnect path: C:\Users\inspiron\AppData\Local\Programs\nrfconnect\resources\app.asar
2022-09-30T16:45:41.757Z DEBUG HomeDir: C:\Users\inspiron
2022-09-30T16:45:41.757Z DEBUG TmpDir: C:\Users\inspiron\AppData\Local\Temp
2022-09-30T16:46:48.621Z ERROR Error while setting up device 0.01: TypeError: Cannot read property '0' of undefined
2022-09-30T16:46:48.621Z INFO Target device closed

Also after clicking on MCUBOOT nRFConnect crashed with this screen

TypeError: Cannot read property 'map' of undefined
at n (C:\Users\inspiron\.nrfconnect-apps\node_modules\pc-nrfconnect-programmer\dist\bundle.js:45:92325)
at Ki (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:57930)
at ys (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:104169)
at ul (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:96717)
at sl (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:96642)
at Qs (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:93672)
at file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:45314
at t.unstable_runWithPriority (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:48:3844)
at zo (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:45023)
at Go (file:///C:/Users/inspiron/AppData/Local/Programs/nrfconnect/resources/app.asar/dist/app-bundle.js:40:45259)

Then I tried nRFConnect 3.7.1, as suggested by EdgeImpulse and many others on devzone. But it also failed with following error

Error Log as following

2022-09-30T17:26:22.738Z INFO Application data folder: C:\Users\inspiron\AppData\Roaming\nrfconnect\pc-nrfconnect-programmer
2022-09-30T17:26:23.949Z DEBUG App pc-nrfconnect-programmer v1.4.11 official
2022-09-30T17:26:23.950Z DEBUG App path: C:\Users\inspiron\.nrfconnect-apps\external\3.7 compatible apps\node_modules\pc-nrfconnect-programmer
2022-09-30T17:26:23.950Z DEBUG nRFConnect 3.7.1, required by the app is (^3.6.0)
2022-09-30T17:26:23.950Z DEBUG nRFConnect path: C:\Users\inspiron\AppData\Local\Programs\nrfconnect\resources\app.asar
2022-09-30T17:26:23.950Z DEBUG HomeDir: C:\Users\inspiron
2022-09-30T17:26:23.951Z DEBUG TmpDir: C:\Users\inspiron\AppData\Local\Temp
2022-09-30T17:26:23.983Z INFO Using nrfjprog library 10.12.1, pc-nrfjprog-js 1.7.6
2022-09-30T17:29:18.302Z INFO Parsing HEX file: C:\Users\inspiron\Downloads\Compressed\img_fota_dfu_hex\thingy91_nrf52_connectivity_bridge_2022-06-02_880c82db.hex
2022-09-30T17:29:18.321Z INFO File was last modified at 6/2/2022, 2:08:00 PM
2022-09-30T17:29:25.838Z INFO Does not need to be reloaded: C:\Users\inspiron\Downloads\Compressed\img_fota_dfu_hex\thingy91_nrf52_connectivity_bridge_2022-06-02_880c82db.hex
2022-09-30T17:29:29.757Z ERROR MCUboot DFU failed. Error occured when program. Errorcode: CouldNotOpenDevice (0x4)
Lowlevel error: Unknown value (ffffff8e)

 

I can successfully completed step 2. "Update the modem firmware on the nRF9160 SiP" to latest one - mfw_nrf9160_1.3.2

using latest nRFConnect 3.12.0  Application and Programmer v3.0.4 

But I could not update firmware of nRF52840 SoC on Thingy:91 i.e Connectivity bridge firmware (specifically - thingy91_nrf52_connectivity_bridge_2022-06-02_880c82db), which is recommended by Edge Impulse to get Edge Impulse CLI to run.

So please let me know, How can I "update firmware of nRF52840 SoC" ?

P.S - I do not have privilege/access to any External probe. So my only way is through a (USB) cable using MCUboot.

I appreciate your time and hope for support from you.

Best Regards

Parents
  • Hi,

    the HW version is old, so you most likely need to use a 10 pin connector and an external debugger to program it.

  • Hello  

    I've successfully upgraded nRF9160(SiP) Firmware and Modem Firmware to the latest one. Using USB secure MCUBoot method. But above mentioned error only occurs with nRF52840(SoC). I dont know why?

    I never used(Updated) this Thingy:91 earlier. Never connected to any external debugger then what is the reason I can not upgrade nRF52840(SoC) firmware which is probably of factory version still untouched/unmodified.

    "External Debug Probe - Like Segger Jlink". I found that these are very costly hardware's (Rs-80000), I'm kind of Hobbyist and student, I cannot afford this costly hardware for just to program one (binary) file "connectivity-bidge.hex", into Thingy:91. Actually I did not know about all this(Old Hardware thing) when I received this hardware from your vendor. If I known this earlier I might have requested them for replacement of this Thingy:91 one to latest hardware.

    Please suggest me any other way than external debugger probe. I'll very grateful to you.

    Best Regards

  • Celeritas said:
    "External Debug Probe - Like Segger Jlink". I found that these are very costly hardware's (Rs-80000), I'm kind of Hobbyist and student, I cannot afford this costly hardware for just to program one (binary) file "connectivity-bidge.hex", into Thingy:91.

    Do you have a DK? You can use the interface chip on the DK to program it.

  • Hi  

    Currently, I do not have any Nordic DK board, I've to check with my friends. but meantime can you please answer my following questions

    1. Can I use Thingy:53 to program Thingy:91? My friend have this thingy:53 dev kit.

    2. Check out following link, Can I use any other ST boards to do above 

    https://www.segger.com/products/debug-probes/j-link/models/other-j-links/st-link-on-board/

    3. Where Can I get proper support(RMA related) for this issue?, Should I contact local distributor from where I received this hardware?

    Please help, I need to use this device for my project. WebUSB also not working.

    Best Regards

Reply Children
  • Celeritas said:
    1. Can I use Thingy:53 to program Thingy:91? My friend have this thingy:53 dev kit.

    No, the Thingy:53 does not have on-board debugger, so it's not possible.

    Celeritas said:
    2. Check out following link, Can I use any other ST boards to do above 

    No, if you check the "Limitations" further down on the page, you can see that it's not supported.

    Celeritas said:
    3. Where Can I get proper support(RMA related) for this issue?, Should I contact local distributor from where I received this hardware?

    I don't think you can get RMA related support for this issue. The best option is probably just buy a nrf9160 dk or an external debugger.

  • Is this NRF9160-DK is the only board which have this capability (On-board SEGGER J-Link debugger/programmer)

    Can I use other DK's like NRF52840-DK or NRF5340-DK or NRF52833 DK, these are somewhat affordable than RF9160-DK.

  • Celeritas said:
    Can I use other DK's like NRF52840-DK or NRF5340-DK or NRF52833 DK, these are somewhat affordable than RF9160-DK.

    You need to check if the debugger is compatible with the Cortex M33, so any nrf9160dk or nrf5340dk should work, and some nrf52dks depending on how recent the version is.

Related