Thingy:53: Programming

Requesting help on Thingy:53.
I have couple of boards. I was able to program all of them. For programming I use VSCode or prgrammer with precompiled firmware.
Now, scene enters Thingy:53. I have tried all methods of programming. VSCode & Programmer (hex) & Programmer (MCU bootloader).
None of them ever did start BLE module. I seem to have device connected, just not able to program it.
I can see device when I connect via cable & nRF52DK. Meaning Updating through external debug probe. Meaning using 10-pin 2x5 socket-socket 1.27 mm IDC Serial Wire Debug (SWD).
I cannot see bootloader in programmer, as described Bootloader Thingy:53.
I carefully followed instructions from developer.nordicsemi.com/.../thingy53_gs.html
Screens show I tried using precompiled downloadable firmware.
None helped.
What I might be doing wrong?
Using nrfutil-device version: 2.0.3
Using nrf-device-lib version: 0.17.3
Using nrfjprog DLL version: 10.23.1
Using JLink version: JLink_V7.88j
Parents Reply Children
  • Hi Yurii, sorry for another delay.

    Try the following:

    Connect nRF5340 DK via USB and Thingy:53 connected via debug cable (powered by USB and turned on). Download the attached merged.hex and program it the following way.

    nrfjprog -f NRF53 --program merged.hex --chiperase --verify --reset

    You should now see the LED on Thingy:53 flashing red. If this works we at least know that you are able to flash the thingy.

    Try using nRF5340 DK if you have that board at hand. When using an old nRF52 DK that had not been updated I was in some occations not able to flash Thingy:53 properly.

    You could also try to build and flash blinky from VS Code with nRF5340 DK and Thingy:53 connected via the debug cable.

  • Seems like device is still the same.

    I did try precompiled FW. Blinky. Still the same, no lights, no response. That is from start I cannot flash that device. All others are fine.

    yuriiboiko@EG-MBP-YuBo zephyr % nrfjprog -f NRF53 --program merged_CPUAPP.hex --chiperase --verify --reset
    [ ######               ]   0.000s | Erase file - Check image                                        [ #################### ]   0.359s | Erase file - Done erasing                                                          
    [ ######               ]   0.000s | Program file - Checking image                                   [ ####                 ]   0.000s | Check image validity - Initialize device info                   [ ########             ]   0.000s | Check image validity - Check region 0 settings                  [ ############         ]   0.000s | Check image validity - block 1 of 3                             [ ################     ]   0.001s | Check image validity - block 2 of 3                             [ #################### ]   0.011s | Check image validity - Finished                                 [ #############        ]   0.000s | Program file - Programming                                      [ ######               ]   0.000s | Programming image - block 1 of 2                                [ #############        ]   0.231s | Programming image - block 2 of 2                                [ #################### ]   0.000s | Programming image - Write successful                            [ #################### ]   1.711s | Program file - Done programming                                                    
    [ ######               ]   0.000s | Verify file - Check image                                       [ ####                 ]   0.000s | Check image validity - Initialize device info                   [ ########             ]   0.000s | Check image validity - Check region 0 settings                  [ ############         ]   1.217s | Check image validity - block 1 of 3                             [ ################     ]   0.457s | Check image validity - block 2 of 3                             [ #################### ]   0.011s | Check image validity - Finished                                 [ #############        ]   0.000s | Verify file - Verifying                                         [ ######               ]   0.000s | Verifying image - block 1 of 2                                  [ #############        ]   0.226s | Verifying image - block 2 of 2                                  [ #################### ]   0.000s | Verifying image - Verify successful                             [ #################### ]   1.720s | Verify file - Done verifying                                                       
    Applying system reset.
    Run.
    yuriiboiko@EG-MBP-YuBo zephyr % 
    

    Here is setup:

  • Any other ways to check if board itself is ok? That all boot components are there?

  • Hi Yurii, sorry for the delay.

    helsing said:

    Connect nRF5340 DK via USB and Thingy:53 connected via debug cable (powered by USB and turned on). Download the attached merged.hex and program it the following way.

    nrfjprog -f NRF53 --program merged.hex --chiperase --verify --reset

    Have you downloaded and flashed the exact same file that I uploaded? If that one works while yours does not, then there is likely an issue with the way you built something on your end. If it still does not work with this file, there may be something wrong either with the device or something goes wrong when you are flashing it.

    Yurii_B said:
    Any other ways to check if board itself is ok? That all boot components are there?

    Here is one way to verify that the device has a bootloader:

    1. Open nRF Connect for Desktop -> Programmer
    2. Connect Thingy:53 and nRF52840 DK as in the image you uploaded.
      Yurii_B said:
    3. Turn the thingy off. Turn on the DK.
    4. Then press and hold SW2 (marked in pink, located next to SW3) while flipping SW1 to 'on''.
    5. Verify that "Bootloader Thingy:53" is visible in Programmer. This indicates a bootlader is present.
Related