Thingy91 Firmware Flashing Issues

Hi,

I recently purchased a Thingy91, and here's what I’ve done so far:

  1. Built the firmware
  2. Registered the SIM and device on the cloud platform
  3. Built the Asset Tracker V2 using the Cellular Monitor tool from nRF Connect for Desktop (even though it comes preloaded, I wanted to go through the process to understand it better).

Everything was working perfectly, and I could see MQTT messages being received on the cloud.

Issues Encountered:

Next, I wanted to experiment with other programs, so I built and flashed the at_client app. I flashed the app_signed.hex file using USB cable without any errors during the process. However, after flashing it, the device’s LEDs stopped working, and the Cellular Monitor showed everything as “Unknown” — this is the first issue I ran into.

Thinking I might have made a mistake, I tried to re-flash the Asset Tracker firmware using the Cellular Monitor tool. Unfortunately, I am now unable to flash anything back onto the device — which is the more critical issue. I followed the standard procedure by pressing SW3 while powering on the device, but the flashing process still fails.

Error Message:

This is the error I’m encountering:

Error: Failed with exit code 1. One or more program tasks failed. Message: Failed, [mcuBoot] Error when programming through MCUBoot: Error verifying MCUBoot image prior to update. Error code: 603 (Timeout).
Failed with exit code 1. One or more program tasks failed. Message: Failed, [mcuBoot] Error when programming through MCUBoot: Error verifying MCUBoot image prior to update. Error code: 603 (Timeout).
Failed to program modem firmware: mfw_nrf9160_1.3.5.zip
Failed with exit code 1. One or more program tasks failed. Message: Failed, [mcuBoot] Error when programming through MCUBoot: Error verifying MCUBoot image prior to update. Error code: 603 (Timeout).

This is the cellular monitor window:

It seems like there’s an issue with MCUboot, even though I am pressing SW3 during power-on as instructed.

Request for Help:

Could you please guide me on what might be causing these issues? Specifically:

  1. Why aren't the LEDs working and why is the Cellular Monitor showing “Unknown” after flashing the at_client application?
  2. How can I resolve the flashing issue with the Programmer? Are there any additional steps I can take beyond pressing SW3 while powering on the device?

Any help would be greatly appreciated.

Thanks,

Roshan

  • Hello,

    Could you please tell me which SDK version you are using? What is the current status of the Thingy91 in the nRF Connect Programmer app? Is the Thingy91 entering bootloader mode properly? If so, how is it identified by the Programmer app? Could you share a screenshot from the nRF Connect Programmer app?

    The Thingy91 comes with a preloaded default bootloader (MCUBoot). Based on the error messages you shared, it seems the bootloader may be corrupted, causing the device to boot into an invalid state or get stuck in a boot loop. If that’s the case, you will need to use an external debugger to program the Thingy91, See the section Updating the Firmware Through external debug probe .

    Kind regards,
    Abhijith

  • Hi, 

    I am using nRF SDK v2.6.0. It seems like the MCUboot is corrupted. So, as suggested I used an external debugger with the nRF9160 DK, and it successfully flashed and ran the Asset Tracker v2 hex file from mfw1.3.6. I was able to see messages on the nRF Cloud, confirming that it was working correctly.

    However, when I tried flashing the at_client from the img_app_bl folder, the Thingy:91 stopped functioning properly. I no longer see any LED activity, and the Cellular Monitor shows the status as "Unknown." Below is the behavior observed when connecting the Thingy:91 directly via USB after flashing the hex file with the debugger. 

    Additionally, I am getting serial port and SIM-related errors. I have attached the log file for your reference:

     

     

    2024-10-30T16:10:56.926Z INFO Initialising nrfutil module: device
    2024-10-30T16:10:56.998Z DEBUG Application data folder: C:\Users\dell\AppData\Roaming\nrfconnect\pc-nrfconnect-cellularmonitor
    2024-10-30T16:10:57.049Z DEBUG App pc-nrfconnect-cellularmonitor v2.4.1 (official)
    2024-10-30T16:10:57.050Z DEBUG App path: C:\Users\dell\.nrfconnect-apps\node_modules\pc-nrfconnect-cellularmonitor
    2024-10-30T16:10:57.050Z DEBUG nRFConnect 5.0.2, required by the app is (>=4.4.1)
    2024-10-30T16:10:57.050Z DEBUG nRFConnect path: C:\Users\dell\AppData\Local\Programs\nrfconnect\resources\app.asar
    2024-10-30T16:10:57.050Z DEBUG HomeDir: C:\Users\dell
    2024-10-30T16:10:57.051Z DEBUG TmpDir: C:\Users\dell\AppData\Local\Temp
    2024-10-30T16:10:57.059Z DEBUG Could not locate wireshark executable in C:\Program Files\Wireshark\Wireshark.exe
    2024-10-30T16:10:57.059Z DEBUG Could not locate wireshark executable in C:\Program Files\Wireshark\Wireshark.exe
    2024-10-30T16:10:57.060Z DEBUG Could not locate wireshark executable in C:\Program Files\Wireshark\Wireshark.exe
    2024-10-30T16:10:59.976Z INFO Using nrfutil-device core version: 7.13.0
    2024-10-30T16:11:00.646Z INFO Using nrfutil-device version: 2.1.1
    2024-10-30T16:11:00.646Z INFO Using nrf-device-lib version: 0.17.5
    2024-10-30T16:11:00.646Z INFO Using nrfjprog DLL version: 10.24.0
    2024-10-30T16:11:00.647Z INFO Using JLink version: JLink_V7.94e
    2024-10-30T16:11:00.913Z INFO Getting serialport options from persistent store THINGY91_D7868DF3502B.pc-nrfconnect-cellularmonitor
    2024-10-30T16:11:02.184Z DEBUG Could not locate wireshark executable in C:\Program Files\Wireshark\Wireshark.exe
    2024-10-30T16:11:02.194Z INFO Selected device with s/n THINGY91_D7868DF3502B
    2024-10-30T16:11:02.199Z DEBUG Terminal Serial Port: Will attempt to auto-connect to serial port COM15
    2024-10-30T16:11:02.210Z INFO Opened port with options: {"path":"COM15","baudRate":115200}
    2024-10-30T16:11:02.222Z INFO Device is in line mode.
    2024-10-30T16:11:02.223Z DEBUG Terminal Serial Port: Detected AT Host Library: Device is in Line mode
    2024-10-30T16:11:02.854Z DEBUG Trace database already downloaded: mfw_nrf9160_1.1.4_trace-db.json
    2024-10-30T16:11:02.854Z DEBUG Trace database already downloaded: mfw_nrf9160_1.1.4-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.855Z DEBUG Trace database already downloaded: mfw_nrf9160_1.1.5_trace-db.json
    2024-10-30T16:11:02.855Z DEBUG Trace database already downloaded: mfw_nrf9160_1.1.5-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.855Z DEBUG Trace database already downloaded: mfw_nrf9160_1.2.3_trace-db.json
    2024-10-30T16:11:02.855Z DEBUG Trace database already downloaded: mfw_nrf9160_1.2.3-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.855Z DEBUG Trace database already downloaded: mfw_nrf9160_1.2.7_trace-db.json
    2024-10-30T16:11:02.856Z DEBUG Trace database already downloaded: mfw_nrf9160_1.2.7-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.856Z DEBUG Trace database already downloaded: mfw_nrf9160_1.2.8_trace-db.json
    2024-10-30T16:11:02.856Z DEBUG Trace database already downloaded: mfw_nrf9160_1.2.8-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.856Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.0_trace-db.json
    2024-10-30T16:11:02.857Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.0-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.857Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.1_trace-db.json
    2024-10-30T16:11:02.857Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.1-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.857Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.2_trace-db.json
    2024-10-30T16:11:02.857Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.2-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.858Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.3_trace-db.json
    2024-10-30T16:11:02.858Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.3-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.858Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.4_trace-db.json
    2024-10-30T16:11:02.858Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.4-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.858Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.5_trace-db.json
    2024-10-30T16:11:02.858Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.5-FOTA-TEST_trace-db.json
    2024-10-30T16:11:02.859Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.6_trace-db.json
    2024-10-30T16:11:02.859Z DEBUG Trace database already downloaded: mfw_nrf9160_1.3.6-FOTA-TEST_trace-db.json
    2024-10-30T16:11:09.498Z DEBUG Could not locate wireshark executable in C:\Program Files\Wireshark\Wireshark.exe
    2024-10-30T16:11:09.511Z INFO Detected trace database version 1.3.6
    2024-10-30T16:11:09.520Z INFO Started tracefile
    2024-10-30T16:11:09.521Z INFO Refreshing dashboard in 5 seconds
    2024-10-30T16:11:09.523Z DEBUG Could not locate wireshark executable in C:\Program Files\Wireshark\Wireshark.exe
    2024-10-30T16:11:09.590Z ERROR Error when creating trace: error: ERR_SERIALPORT_OPEN message: Win32 open serialport error: Access is denied.  plugin path: C:\Users\dell\.nrfconnect-apps\node_modules\pc-nrfconnect-cellularmonitor\node_modules\@nordicsemiconductor\nrf-monitor-lib-js\Release\win32-x64\nrfml-insight-source.nrfml
    2024-10-30T16:11:09.590Z DEBUG Full error: {"error_code":100,"message":"error: ERR_SERIALPORT_OPEN message: Win32 open serialport error: Access is denied.  plugin path: C:\\Users\\dell\\.nrfconnect-apps\\node_modules\\pc-nrfconnect-cellularmonitor\\node_modules\\@nordicsemiconductor\\nrf-monitor-lib-js\\Release\\win32-x64\\nrfml-insight-source.nrfml","origin":"Error when running nrfml operation worker."}
    2024-10-30T16:11:14.677Z ERROR AT command AT+CPIN? failed: +CME ERROR: 13
    
    2024-10-30T16:11:14.682Z ERROR AT command AT+CIMI failed: +CME ERROR: 0
    
    2024-10-30T16:11:14.830Z ERROR AT command AT%XICCID failed: +CME ERROR: 0
    
    

    Could you please assist me in troubleshooting this issue? Let me know if you need any further information.

    Thanks, 

    Roshan

  • Hello,

    Which build configuration are you using to build the AT_client sample? I'm not sure about the issue you're facing, but I recommend checking out the Developer Academy course exercise. It provides detailed guidance on AT commands and focuses on the AT_client sample, including the correct build configuration and how to flash the Thingy91 properly.

    Please let me know if this helps resolve your issue, or if you're still encountering problems.

    Kind regards,
    Abhijith

Related