Skip to content

Commit beeeb09

Browse files
committed
docs: factory reset
Add instructions to recover broken thingy91x devices. Signed-off-by: Maximilian Deubel <[email protected]>
1 parent a6f4587 commit beeeb09

File tree

2 files changed

+89
-1
lines changed

2 files changed

+89
-1
lines changed

docs/links.txt

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,8 @@
1313
.. _`Cellular Monitor app`: https://docs.nordicsemi.com/bundle/nrf-connect-cellularmonitor/page/index.html
1414
.. _`Serial Terminal app`: https://docs.nordicsemi.com/bundle/nrf-connect-serial-terminal/page/index.html
1515
.. _`Getting started guide`: https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/installation.html
16-
.. _`nRF Util`: https://docs.nordicsemi.com/bundle/nrf-connect-serial-terminal/page/index.html
16+
.. _`nRF Util`: https://docs.nordicsemi.com/bundle/nrfutil/page/README.html
17+
.. _`Installing nRF Util`: https://docs.nordicsemi.com/bundle/nrfutil/page/guides/installing.html
1718
.. _`Connectivity Bridge`: https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/applications/connectivity_bridge/README.html
1819

1920
.. ### github.com
@@ -32,6 +33,12 @@
3233

3334
.. _`Interactive BOM PCA20065 1.0.0.`: https://htmlpreview.github.io/?https://github.com/hello-nrfcloud/firmware/blob/main/docs/pca20065_1_0_0.html
3435

36+
.. _`nRF5340 application firmware`: https://github.com/hello-nrfcloud/firmware/releases/download/v2.0.1/connectivity-bridge-v2.0.1-thingy91x-nrf53-app.hex
37+
.. _`nRF5340 network firmware`: https://github.com/hello-nrfcloud/firmware/releases/download/v2.0.1/connectivity-bridge-v2.0.1-thingy91x-nrf53-net.hex
38+
.. _`nRF9151 firmware`: https://github.com/hello-nrfcloud/firmware/releases/download/v2.0.1/hello.nrfcloud.com-v2.0.1+debug-thingy91x-nrf91.hex
39+
.. _`nRF5340 DFU`: https://github.com/hello-nrfcloud/firmware/releases/download/v2.0.1/connectivity-bridge-v2.0.1-thingy91x-nrf53-dfu.zip
40+
.. _`nRF9151 DFU`: https://github.com/hello-nrfcloud/firmware/releases/download/v2.0.1/hello.nrfcloud.com-v2.0.1+debug-thingy91x-nrf91-dfu.zip
41+
3542
.. _`pyOCD`: https://github.com/pyocd/pyOCD
3643

3744
.. _`hello.nrfcloud.com`: https://hello.nrfcloud.com/

docs/troubleshooting.rst

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,3 +40,84 @@ Complete the following steps to capture and dump modem traces:
4040
modem_trace stop # Stop modem tracing if running
4141
modem_trace size # Check the size of stored traces
4242
modem_trace dump_uart # Dump traces to UART 1 for analysis
43+
44+
Factory reset (Bootloader)
45+
**************************
46+
47+
If you have not used a debug probe to program your Thingy:91 X, and it became unresponsive, it is possible to recover the device without additional tools.
48+
49+
See `Installing nRF Util`_ for instructions for installing nRF Util. Install the nRF Util device command as well.
50+
Download the following files from the hello-nrfcloud/firmware release:
51+
52+
* `nRF5340 DFU`_
53+
* `nRF9151 DFU`_
54+
55+
If the device shows up on USB, the nRF5340 is correctly running the Connectivity bridge.
56+
If not, you can try to put the nRF5340 into serial recovery mode.
57+
This is done by turning off the device using the power switch, and pressing and holding **Button 2** while turning it back on.
58+
An MCUboot device shows up.
59+
60+
.. code-block:: none
61+
62+
nrfutil device program --firmware connectivity-bridge-v2.0.1-thingy91x-nrf53-dfu.zip --traits mcuboot
63+
64+
Then, the Connectivity bridge triggers serial recovery mode for the nRF9151 automatically.
65+
66+
Alternatively, you can force the nRF9151 serial recovery mode the same way with the nRF5340, but using **Button 1** instead.
67+
68+
.. code-block:: none
69+
70+
nrfutil device program --firmware hello.nrfcloud.com-v2.0.1-thingy91x-nrf91-dfu.zip --traits mcuboot
71+
72+
Factory reset (J-Link)
73+
**********************
74+
75+
If your Thingy:91 X is powered on and connected using a USB cable, it shows up as a USB device.
76+
Else, something is preventing the Connectivity bridge application on the nRF5340 from running.
77+
For example, this could be an application running on the nRF9151 that is driving the wrong pins.
78+
Another typical case is that the nRF5340 has been flashed by accident.
79+
80+
You need to use an external J-Link to follow these steps.
81+
A Nordic development kit with a debug-out port can be used as well.
82+
83+
See `Installing nRF Util`_ for instructions for installing nRF Util. Install the nRF Util device command as well.
84+
Download the following files from the hello-nrfcloud/firmware release:
85+
86+
* `nRF5340 application firmware`_
87+
* `nRF5340 network firmware`_
88+
* `nRF9151 firmware`_
89+
90+
Set the SWD switch to **nRF91** and run the ``nrfutil device recover`` command to recover the nRF9151.
91+
Repeat the same for the nRF5340. You can use the ``nrfutil device device-info`` command to check that you are connected to the correct chip.
92+
When using a DK, there is an ambiguity between targeting the on-board chip and using debug-out.
93+
Running the ``nrfutil device device-info`` command is recommended to make sure you are not programming the on-board target accidentally.
94+
95+
If nRF5340 recovery fails, an nRF9151 firmware might have been flashed previously.
96+
Even though the device shows up as unrecoverable, the soft-lock can be removed with these commands.
97+
You might have to repeat them for a successful result.
98+
Do not use them on an nRF91 Series device.
99+
100+
.. code-block:: none
101+
102+
nrfutil device recover --x-family nrf53 --core Network --traits jlink
103+
nrfutil device recover --x-family nrf53 --core Application --traits jlink
104+
105+
Now that both chips are recovered, set the SWD switch to **nRF91**.
106+
To check you are connected to the correct chip, run the ``nrfutil device device-info`` command.
107+
108+
.. code-block:: none
109+
110+
nrfutil device program --firmware hello.nrfcloud.com-v2.0.1+debug-thingy91x-nrf91.hex
111+
112+
Set the SWD switch to **nRF53**.
113+
To check you are connected to the correct chip, run the ``nrfutil device device-info`` command.
114+
115+
.. code-block:: none
116+
117+
nrfutil device program --core Network --options reset=RESET_NONE,chip_erase_mode=ERASE_ALL,verify=VERIFY_NONE --firmware connectivity-bridge-v2.0.1-thingy91x-nrf53-net.hex
118+
nrfutil device program --options reset=RESET_SYSTEM,chip_erase_mode=ERASE_ALL,verify=VERIFY_NONE --firmware connectivity-bridge-v2.0.1-thingy91x-nrf53-app.hex
119+
120+
The device shows up as a USB device again.
121+
Press **Button 2** to reset the nRF9151 DK.
122+
If you see that **LED 1** lights up, the recovery was successful.
123+
If you do not have a usable device after this procedure, contact Nordic Semiconductor's technical support on `DevZone`_.

0 commit comments

Comments
 (0)