Issue with Thingy:91 (based on nRF9160 and nRF52840)

GNSS not working on Thingy:91 after modem_shell flash — help and gnss start return ERROR

Device:

Thingy:91 (NK-THINGY91)
RS Stock No. 196-3901
nRF9160 + nRF52840 combo platform

Context:

I'm trying to use GNSS on my Thingy:91 and flash it with the modem_shell application. IM using this device as my own apple air tag so i need gps readings, i followed tutorials online and nothing has worked, ive tested that it has network, the sim works, but the gnss wont work.

What I did:

  1. Entered MCUBOOT mode (SW3 + USB plug-in)

  2. Flashed this firmware using nRF Connect Programmer: I downloaded the latest firmware 1.3.7 from nordics website.

    • modem_shell_.hex

  3. Replugged normally, opened Serial Terminal at 115200 baud

  4. Sent: AT+CGMR → White check mark Response: mfw_nrf9160_1.3.6

  5. Sent: help or gnss start → X Response: ERROR

  6. Flashed thingy91_nrf52_connectivity_bridge.hex successfully

  7. Device appears as expected on COM port (via nRF52840 bridge)

Problem:

  • Despite flashing modem_shell, the device behaves like it’s stuck in AT command mode

  • help and other shell commands give ERROR

  • GNSS functionality (e.g. gnss start) is not available

  • nrf cloud cant find device
  • It seems like modem_shell is either:

    • Not flashing properly

    • Crashing on boot

    • Being skipped by the bootloader in favor of just modem firmware

Goal:

I want to:

  • Run the modem_shell app properly (with help, gnss start, etc.)

  • Have GNSS functionality working

  • if that doesnt work  i want to reset so i can attempt from start again.
  • Ensure full factory-style reset of the Thingy:91 without needing a J-Link

Questions:

  1. Is there a known issue with flashing signed modem_shell apps via MCUboot?

  2. Do I need to flash any special .zip/combined image or DFU package?

  3. Is it possible that the bootloader is skipping the app image?

  4. Any way to verify the modem_shell actually booted (versus fallback to modem firmware)?

  5. Can I safely erase and restore this device without a J-Link?

Tools:

  • nRF Connect Programmer v3.0+

  • nRF Connect Serial Terminal

  • Windows 11

  • Device connected via USB only (no external SWD/J-Link access)

  • I'll add that the lights dont come on at all anymore, they stopped since the moment it was flashed

  • Hi,

    i followed tutorials onlin

    Could you specify if this is our tutorials or resources not created by Nordic Semiconductor? If the resources are "talking to a chatbot/AI tool and following the instructions blindly without crossreferencing official documentation", then I strongly strongly recommend that you stop with that and use the time following official guides and documentation instead. ChatGPT for instance is notoriously bad for giving somewhat bullet proof instructions for anything embedded. Kapa (Nordic chatbot) is quite decent because it mainly describes how to do it from our documentation.

    Flashed this firmware using nRF Connect Programmer: I downloaded the latest firmware 1.3.7 from nordics website.

    You say that you're running the latest 1.37 modem_shell, while your AT command states that the modem firmware is 1.3.6: 

    Please match those.

    After this, I recommend you to go through the academy courses we have for nRF Connect SDK to get a better overview of the build system.

    Is there a known issue with flashing signed modem_shell apps via MCUboot?

    There shouldn't be. https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/releases_and_maturity/known_issues.html 

    Do I need to flash any special .zip/combined image or DFU package?

    Depending on what you're updating and how you're updating there may be different files, so if you point me to the "tutorials online" that you've followed I can have a look at that and see if I can better understand the angle you're coming from.

    Is it possible that the bootloader is skipping the app image?

    Yes, but that's only the case if you do the following:

    1. Build and flash a combined hex that has both MCUboot and the application. Lets say that mcuboot ends at 0xC000 and your application starts at 0xC100. Here MCUboot knows where to find the application.
    2. Build a new application where you've changed the applications start address to 0xC200
    3. Do DFU where you only update the application
    4. Now MCUboot expects the app to start at 0xC100 while the app has been changed to starts at 0xC200 -> It can't boot anything since nothing exists on 0xC100
    Can I safely erase and restore this device without a J-Link?

    If you need you can program the device through another Nordic DK as well, through the debugger interface on a nRF5340DK for instace. But this will require a 10pin programming cable.

    JoJo2895 said:
    I'll add that the lights dont come on at all anymore, they stopped since the moment it was flashed

    Most likely due to the bootloader not being able to boot the application. The reason could be many, but if you reprogram it with a basic sample from the getting started guides it should hopefully be running again.

    Let me know about these items and if any are helpful.

    Kind regards,
    Andreas

  • Thank you so much for your fast response, this is the first tutorial i followed but it didn't work properly for me(https://www.youtube.com/watch?v=TbbDD9Z6HUg), and then after it failing and me trying and trying again i followed this tutorial as its super simple and get me exactly where i need to be (https://www.youtube.com/watch?v=U6wf2U34XO8). however despite following the instructions but with some of the latest firmware(which i now know i need o match properly) it was unsuccessful, i will add a screenshot of how it does following that tutorial because everything is OK until i try read gps.  . Is there any chance you could direct me to the exact files i need to flash my device with?

  • I'm just confused because I try to follow this tutorial https://www.youtube.com/watch?v=U6wf2U34XO8 using the exact same firmware it uses but when i try flash mfw_nrf9160_1.3.4.zip like the tutorial i get this error

  • it seems no matter how i start up the thingy91 its stuck in mcuboot mode, ive lost access to the nRF52840 core. I can launch it in proper mcuboot mode and its displayed as that on nrf connect, but if i just turn it on normally it shows up as thingy91, however it says its communication type is mcuboot and i cant toggle mcuboot settings on nrf connect, it also shows up as 9160 no matter how i turn it on

Related