Skip to content

Commit c365066

Browse files
committed
doc: Add the Programming nRF91 Series DK firmware page.
Added the Programming nRF91 Series DK firmware page. This page has been moved from the Developing with nRF91 Series documentation to the programmer app to avoid outdated information. Signed-off-by: divya pillai <[email protected]>
1 parent e1a4586 commit c365066

12 files changed

+203
-3
lines changed

doc/docs/programming_91dk.md

Lines changed: 198 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,198 @@
1+
# Programming nRF91 Series DK firmware
2+
3+
You can program the nRF91 Series DK firmware application and network core firmware over USB.
4+
Before you begin to update the firmware, download and extract the latest application and modem firmware from the from the [Nordic Semiconductor website](https://www.nordicsemi.com/), depending on the DK you are using:
5+
6+
- [nRF9151 DK Downloads](https://www.nordicsemi.com/Products/Development-hardware/nRF9151-DK/Download?lang=en#infotabs)
7+
- [nRF9161 DK Downloads](https://www.nordicsemi.com/Products/Development-hardware/nRF9161-DK/Download?lang=en#infotabs)
8+
- [nRF9160 DK Downloads](https://www.nordicsemi.com/Products/Development-hardware/nRF9160-DK/Download#infotabs)
9+
10+
The downloaded ZIP archive contains the following firmware:
11+
12+
* Application firmware
13+
14+
The `img_app_bl` folder contains full firmware images for different applications.
15+
The guides in this section use the image for the [nRF Cloud multi-service](https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/samples/cellular/nrf_cloud_multi_service/README.html#nrf-cloud-multi-service) sample as an example.
16+
17+
The nRF Cloud multi-service sample simulates sensor data and transmits it to Nordic Semiconductor's cloud solution, [nRF Cloud](https://nrfcloud.com/).
18+
19+
The data is transmitted using either LTE-M or NB-IoT.
20+
The nRF Cloud multi-service sample first attempts to use LTE-M, then NB-IoT.
21+
Check with your SIM card provider for the mode they support at your location.
22+
23+
=== "nRF9151 DK"
24+
25+
* For the Onomondo SIM card, check the [Onomondo LTE-M coverage](https://onomondo.com/product/coverage/lte-m-networks/) and [Onomondo NB-IoT coverage](https://onomondo.com/product/coverage/nb-iot-networks/) to see if your country is supported.
26+
* For the Wireless Logic SIM card, check the [Wireless Logic LTE-M/NB-IoT network coverage](https://www.wirelesslogic.com/simclaim/nsctrial/) to see if your country is supported.
27+
28+
=== "nRF9161 DK"
29+
30+
For the Onomondo SIM card, check the [Onomondo LTE-M coverage](https://onomondo.com/product/coverage/lte-m-networks/) and [Onomondo NB-IoT coverage](https://onomondo.com/product/coverage/nb-iot-networks/) to see the network coverage for different countries.
31+
32+
=== "nRF9160 DK"
33+
34+
For the iBasis SIM card provided with the nRF9160 DK, see [iBasis IoT network coverage](https://ibasis.com/solutions/iot-connectivity/network-coverage/).
35+
36+
* Application firmware for Device Firmware Update (DFU)
37+
38+
The images in the `img_fota_dfu_bin` and `img_fota_dfu_hex` folders contain firmware images for DFU.
39+
These images are not used in the guides in this section.
40+
41+
* Modem firmware
42+
43+
The modem firmware is in a ZIP archive instead of a folder.
44+
The archive is named `mfw_nrf9160_` or `mfw_nrf91x1_`, followed by the firmware version number.
45+
Do not unzip this file.
46+
47+
The `CONTENTS.txt` file in the extracted folder contains the location and names of the different firmware images.
48+
49+
You will also need the following USB cables:
50+
51+
* nRF91x1 DK - USB-C cable
52+
* nRF9160 DK - micro-USB cable
53+
54+
## nRF91x1 DK
55+
56+
=== "Updating the modem firmware"
57+
58+
To update the modem firmware, complete the following steps.
59+
60+
!!! tip "Tip"
61+
62+
If you experience any problems during the process, press `Ctrl+R` (`command+R` on macOS) to restart the Programmer app and try again.
63+
64+
1. Open the {{app_name}}.
65+
1. Connect the DK to the computer with a USB cable, and then turn the DK on.
66+
1. Click **SELECT DEVICE** and select the DK from the drop-down list.<br/>
67+
68+
![Programmer - Select device (nRF9151 DK shown)](./screenshots/programmer_select_device_nrf9151.png "Programmer - Select device (nRF9151 DK shown)")
69+
70+
The drop-down text changes to the type of the selected device, with its SEGGER ID below the name.
71+
The **Device memory layout** section also changes its name to the device name, and indicates that the device is connected.
72+
If the **Auto read memory** option is selected in the **J-LINK SETTINGS** section of the side panel, the memory layout will update.
73+
If it is not selected and you wish to see the memory layout, click **Read** in the **DEVICE** section of the side panel.
74+
75+
1. Click **Add file** in the **FILE** section, and select **Browse**.
76+
1. Navigate to where you extracted the firmware, and select the `mfw_nrf91x1_<version-number>.zip` file.
77+
1. Click **Write** in the **DEVICE** section of the side panel.<br/>
78+
79+
![Programmer - Write (nRF9151 DK shown)](./screenshots/programmer_hex_write_nrf9151.png "Programmer - Write (nRF9151 DK shown)")
80+
81+
The **Modem DFU** window appears.<br/>
82+
83+
![Modem DFU window (nRF9151 DK shown)](./screenshots/programmerapp_modemdfu_nrf9151.png "Modem DFU window (nRF9151 DK shown)")
84+
85+
1. Ignore the warning message and click the **Write** button in the **Modem DFU** window to update the firmware.
86+
Do not unplug or turn off the device during this process.
87+
88+
When the update is complete, you see a success message.
89+
If you update the application firmware now, you can skip the initial steps about connecting and selecting the device in the [Updating the application firmware](#nrf91x1-dk) tab.
90+
91+
!!! note "Note"
92+
93+
If you experience problems updating the modem firmware, click **Erase all** in the **DEVICE** section of the side panel and try updating again.
94+
95+
=== "Updating the application firmware"
96+
97+
To update the application firmware using the Programmer app, complete the following steps.
98+
99+
!!! tip "Tip"
100+
101+
If you experience any problems during the process, press `Ctrl+R` (`command+R` on macOS) to restart the Programmer app and try again.
102+
103+
1. Open the {{app_name}}.
104+
1. Connect the DK to the computer with a USB cable, and then turn the DK on.
105+
1. Click **SELECT DEVICE** and select the DK from the drop-down list.<br/>
106+
107+
![Programmer - Select device (nRF9151 DK shown)](./screenshots/programmer_select_device_nrf9151.png "Programmer - Select device (nRF9151 DK shown)")
108+
109+
The drop-down text changes to the type of the selected device, with its SEGGER ID below the name.
110+
The **Device memory layout** section also changes its name to the device name, and indicates that the device is connected.
111+
If the **Auto read memory** option is selected in the **J-LINK SETTINGS** section, the memory layout will update.
112+
If it is not selected and you wish to see the memory layout, **Read** in the **DEVICE** section.
113+
114+
1. Click **Add file** in the **FILE** section, and select **Browse**.
115+
1. Navigate to where you extracted the firmware, and then to the `img_app_bl` folder there.
116+
1. Select the `.hex` file for your DK for the application you are programming:
117+
118+
* nRF9151 DK: `nrf9151dk_nrfcloud_multi_service_coap_<version-number>.hex`
119+
* nRF9651 DK: `nrf9161dk_nrfcloud_multi_service_coap_<version-number>.hex`
120+
121+
1. Click the **Erase & write** button in the **DEVICE** section to program the DK.
122+
Do not unplug or turn off the DK during this process.<br/>
123+
124+
![Programmer - Erase & write (nRF9151 DK shown)](./screenshots/programmer_erasewrite_nrf9151dk.png "Programmer - Erase & write (nRF9151 DK shown)")
125+
126+
## nRF9160 DK
127+
128+
=== "Updating the modem firmware"
129+
130+
To update the modem firmware, complete the following steps.
131+
132+
!!! tip "Tip"
133+
134+
If you experience any problems during the process, press `Ctrl+R` (`command+R` on macOS) to restart the Programmer app and try again.
135+
136+
1. Open the {{app_name}}.
137+
1. Make sure the **PROG/DEBUG SW10** switch on the nRF9160 DK is set to **nRF91**.
138+
On DK v0.9.0 and earlier, this is the **SW5** switch.
139+
1. Connect the DK to the computer with a USB cable, and then turn the DK on.
140+
1. Click **SELECT DEVICE** and select the DK from the drop-down list.<br/>
141+
142+
![Programmer - Select device](./screenshots/programmer_selectdevice_nrf9160.png "Programmer - Select device")
143+
144+
The drop-down text changes to the type of the selected device, with its SEGGER ID below the name.
145+
The **Device memory layout** section also changes its name to the device name, and indicates that the device is connected.
146+
If the **Auto read memory** option is selected in the **J-LINK SETTINGS** section of the side panel, the memory layout will update.
147+
If it is not selected and you wish to see the memory layout, click **Read** in the **DEVICE** section of the side panel.
148+
149+
1. Click **Add file** in the **FILE** section, and select **Browse**.
150+
1. Navigate to where you extracted the firmware, and select the `mfw_nrf9160_<version-number>.zip` file.
151+
1. Click **Write** in the **DEVICE** section of the side panel.<br/>
152+
153+
![Programmer - Write](./screenshots/programmer_write_nrf9160dk.png "Programmer - Write")
154+
155+
The **Modem DFU** window appears.<br/>
156+
157+
![Modem DFU window](./screenshots/programmerapp_modemdfu.png "Modem DFU window")
158+
159+
1. Ignore the warning message and click the **Write** button in the **Modem DFU** window to update the firmware.
160+
Do not unplug or turn off the device during this process.
161+
162+
When the update is complete, you see a success message.
163+
If you update the application firmware now, you can skip the initial steps about connecting and selecting the device in the [Updating the application firmware](#nrf9160-dk) tab.
164+
165+
!!! note "Note"
166+
167+
If you experience problems updating the modem firmware, click **Erase all** in the **DEVICE** section of the side panel and try updating again.
168+
169+
=== "Updating the application firmware"
170+
171+
To update the application firmware using the Programmer app, complete the following steps.
172+
173+
!!! tip "Tip"
174+
175+
If you experience any problems during the process, press `Ctrl+R` (`command+R` on macOS) to restart the Programmer app and try again.
176+
177+
1. Open the {{app_name}}.
178+
1. Make sure the **PROG/DEBUG SW10** switch (**SW5** on DK v0.9.0 and earlier) on the nRF9160 DK is set to **nRF91** or **nRF52** as appropriate for the application or sample you are programming.<br/>
179+
See the [Device programming section in the nRF9160 DK User Guide](https://docs.nordicsemi.com/bundle/ug_nrf9160_dk/page/UG/nrf91_DK/operating_modes/mcu_device_programming.html) for more information.<br/>
180+
181+
For the [nRF Cloud multi-service](https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/samples/cellular/nrf_cloud_multi_service/README.html#nrf-cloud-multi-service) sample, the switch must be set to **nRF91**.
182+
1. Connect the DK to the computer with a USB cable, and then turn the DK on.
183+
1. Click **SELECT DEVICE** and select the DK from the drop-down list.<br/>
184+
185+
![Programmer - Select device](./screenshots/programmer_selectdevice_nrf9160.png "Programmer - Select device")
186+
187+
The drop-down text changes to the type of the selected device, with its SEGGER ID below the name.
188+
The **Device memory layout** section also changes its name to the device name, and indicates that the device is connected.
189+
If the **Auto read memory** option is selected in the **J-LINK SETTINGS** section, the memory layout will update.
190+
If it is not selected and you wish to see the memory layout, **Read** in the **DEVICE** section.
191+
192+
1. Click **Add file** in the **FILE** section, and select **Browse**.
193+
1. Navigate to where you extracted the firmware, and then to the `img_app_bl` folder there.
194+
1. Select the `nrf9160dk_nrfcloud_multi_service_coap_<version-number>.hex` file.
195+
1. Click the **Erase & write** button in the **DEVICE** section to program the DK.
196+
Do not unplug or turn off the DK during this process.<br/>
197+
198+
![Programmer - Erase & write](./screenshots/programmer_erasewrite_nrf9160dk.png "Programmer - Erase & write")

doc/docs/programming_dk.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ The following devices have specific programming requirements or procedures:
1111

1212
| Device | Description |
1313
|-----------------------------------|----------------------------------------------------------------------------------------------------------------------|
14-
| nRF9160 DK | To program the nRF9160 DK, see [Updating the nRF9160 DK firmware using Programmer](https://docs.nordicsemi.com/bundle/ncs-latest/page/nrf/device_guides/working_with_nrf/nrf91/nrf9160.html#updating_the_dk_firmware_using_programmer). |
15-
| Nordic Thingy:91 X | To program Nordic Thingy:91 X, see [Programming Nordic Thingy prototyping platforms](programming_thingy.md).
16-
| Nordic Thingy:91 | To program Nordic Thingy:91, see [Programming Nordic Thingy prototyping platforms](programming_thingy.md).
14+
| nRF91 Series DK | To program the nRF91 Series DK, see [Programming nRF91 Series DK firmware](programming_91dk.md). |
15+
| Nordic Thingy:91 X | To program Nordic Thingy:91 X, see [Programming Nordic Thingy prototyping platforms](programming_thingy.md).|
16+
| Nordic Thingy:91 | To program Nordic Thingy:91, see [Programming Nordic Thingy prototyping platforms](programming_thingy.md).|
1717
| Nordic Thingy:53 | To program Nordic Thingy:53, see [Programming Nordic Thingy prototyping platforms](programming_thingy.md). |
1818
| Nordic Thingy:52 | Nordic Thingy:52 can be programmed using the [general programming procedure](#general-programming-procedure), but only through J-Link and a 10-pin programming cable. |
1919
| nRF52840 Dongle | To program the nRF52840 Dongle, see [Programming the nRF52840 Dongle](programming_nrf52840_dongle.md). |

doc/docs/revision_history.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
| Date | Description |
44
|------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
5+
| October 2025 | - Added the [Programming nRF91 Series DK firmware](programming_91dk.md) page|
56
| August 2025 | - Updated the [supported hardware section](index.md#supported-hardware) with entries for nRF54LM20 and Nordic Thingy:91 X<br/>- Added the [Programming Nordic Thingy prototyping platforms](programming_thingy.md) page<br/>- Added the [General programming procedure](programming_dk.md) page<br/>- Added back the [Programming the nRF52840 Dongle](programming_nrf52840_dongle.md) page<br/>- Created the Programming devices section to include all the separate pages |
67
| January 2025 | - Updated the [supported hardware section](index.md#supported-hardware) with entries for nRF54L15, nRF54H20, and nRF9151<br/>- Added the Programming Nordic Thingy:53 section on the [Programming devices](programming_dk.md) page<br/>- Added the [Application source code](./index.md#application-source-code) section on the [Home](./index.md) page |
78
| November 2024 | Editorial changes |
34.2 KB
Loading
19.5 KB
Loading
90.3 KB
Loading
26.9 KB
Loading
19.5 KB
Loading
30.1 KB
Loading
12.6 KB
Loading

0 commit comments

Comments
 (0)