How to program the nRF9160 with the segger j-link and the jlink.exe

Hello,

this is the first time I work with this device and the device is not for me or for my company.

I have to do an automatic test application, which should program the device and measure some voltage on a customer layout.

From the customer I get 3 modem firmware files and an application file.

Now the big question is, where do I have to put the hex files on the device.

The modem files has the names:

72xxxxx.ipc_dfu.signed_1.1.0.ihex - 14kB

firmware.update.image.segments.0.hex - 7kB

firmware.update.image.degments.1.hex - 5491kB

and then there is the application file:

Firmware_V1.0.4.hex - 612kB

The first question is how to do the correct connection to the device.

At the moment I have connect the segger j-link over SWD and it looks like it works fine with the connection:

J-Link>connect
Device "NRF9160_XXAA" selected.


Connecting to target via SWD
ConfigTargetSettings() start
---Setting ROM table---
ConfigTargetSettings() end - Took 107us
Found SW-DP with ID 0x6BA02477
DPIDR: 0x6BA02477
CoreSight SoC-400 or earlier
Scanning AP map to find all available APs
AP[7]: Stopped AP scan as end of AP map has been reached
AP[0]: AHB-AP (IDR: 0x84770001, ADDR: 0x00000000)
AP[1]: AHB-AP (IDR: 0x24770011, ADDR: 0x01000000)
AP[2]: JTAG-AP (IDR: 0x12880000, ADDR: 0x02000000)
AP[3]: APB-AP (IDR: 0x54770002, ADDR: 0x03000000)
AP[4]: JTAG-AP (IDR: 0x12880000, ADDR: 0x04000000)
AP[5]: JTAG-AP (IDR: 0x12880000, ADDR: 0x05000000)
AP[6]: MEM-AP (IDR: 0x128800A1, ADDR: 0x06000000)
Iterating through AP map to find AHB-AP to use
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xE00FF000
CPUID register: 0x410FD212. Implementer code: 0x41 (ARM)
Feature set: Mainline
Cache: No cache
Found Cortex-M33 r0p2, Little endian.
FPUnit: 8 code (BP) slots and 0 literal slots
Security extension: implemented
Secure debug: enabled
CoreSight components:
ROMTbl[0] @ E00FF000
[0][0]: E000E000 CID B105900D PID 000BBD21 DEVARCH 47702A04 DEVTYPE 00 Cortex-M33
[0][1]: E0001000 CID B105900D PID 000BBD21 DEVARCH 47701A02 DEVTYPE 00 DWT
[0][2]: E0002000 CID B105900D PID 000BBD21 DEVARCH 47701A03 DEVTYPE 00 FPB
[0][3]: E0000000 CID B105900D PID 000BBD21 DEVARCH 47701A01 DEVTYPE 43 ITM
[0][5]: E0041000 CID B105900D PID 002BBD21 DEVARCH 47724A13 DEVTYPE 13 ETM
[0][6]: E0042000 CID B105900D PID 000BBD21 DEVARCH 47701A14 DEVTYPE 14 CSS600-CTI
Memory zones:
Zone: "Default" Description: Default access mode
Cortex-M33 identified.
J-Link>

The question is now, where do I have to put the different hex files?

I think the application should be placed on the adress 0x00000000 is that right?

I hope you can get my problem.

I have been searching for a solution now about 3 hours, but I don't find a hind where to put the hex, maybe I have over looked it.

Hope you can help me

Best regards

Michael

  • Is there a possibility to erase the wohle device to setup the modem firmware with the segger j-link? It looks like it has worked one time but now I get only the message back that the verify failed.

    Programming speed: 400kHz.
    Chip erase successful.
    Programming modem firmware: modem-fw\firmware.update.image.segments.0.hex
    Modem firmware programming block size: 8192
    Programming modem firmware: 59602000 : 2304
    Programming modem firmware: modem-fw\firmware.update.image.segments.1.hex
    Modem firmware programming block size: 8192
    Programming modem firmware: 00006000 : 8192
    Programming modem firmware: 00008000 : 8192
    Programming modem firmware: 0000A000 : 8192
    Programming modem firmware: 0000C000 : 8192
    Programming modem firmware: 0000E000 : 8192
    Programming modem firmware: 00050000 : 8192
    Programming modem firmware: 00052000 : 8192
    Programming modem firmware: 00054000 : 8192
    Programming modem firmware: 00056000 : 8192
    Programming modem firmware: 00058000 : 8192
    Programming modem firmware: 0005A000 : 8192
    Programming modem firmware: 0005C000 : 8192
    Programming modem firmware: 0005E000 : 8192
    Programming modem firmware: 00060000 : 8192
    Programming modem firmware: 00062000 : 8192
    Programming modem firmware: 00064000 : 8192
    Programming modem firmware: 00066000 : 8192
    Programming modem firmware: 00068000 : 8192
    Programming modem firmware: 0006A000 : 8192
    Programming modem firmware: 0006C000 : 8192
    Programming modem firmware: 0006E000 : 8192
    Programming modem firmware: 00070000 : 8192
    Programming modem firmware: 00072000 : 8192
    Programming modem firmware: 00074000 : 8192
    Programming modem firmware: 00076000 : 8192
    Programming modem firmware: 00078000 : 8192
    Programming modem firmware: 0007A000 : 8192
    Programming modem firmware: 0007C000 : 8192
    Programming modem firmware: 0007E000 : 8192
    Programming modem firmware: 00080000 : 8192
    Programming modem firmware: 00082000 : 8192
    Programming modem firmware: 00084000 : 8192
    Programming modem firmware: 00086000 : 8192
    Programming modem firmware: 00088000 : 8192
    Programming modem firmware: 0008A000 : 8192
    Programming modem firmware: 0008C000 : 8192
    Programming modem firmware: 0008E000 : 8192
    Programming modem firmware: 00090000 : 8192
    Programming modem firmware: 00092000 : 8192
    Programming modem firmware: 00094000 : 8192
    Programming modem firmware: 00096000 : 8192
    Programming modem firmware: 00098000 : 8192
    Programming modem firmware: 0009A000 : 8192
    Programming modem firmware: 0009C000 : 8192
    Programming modem firmware: 0009E000 : 8192
    Programming modem firmware: 000A0000 : 8192
    Programming modem firmware: 000A2000 : 8192
    Programming modem firmware: 000A4000 : 8192
    Programming modem firmware: 000A6000 : 8192
    Programming modem firmware: 000A8000 : 8192
    Programming modem firmware: 000AA000 : 8192
    Programming modem firmware: 000AC000 : 8192
    Programming modem firmware: 000AE000 : 8192
    Programming modem firmware: 000B0000 : 8192
    Programming modem firmware: 000B2000 : 8192
    Programming modem firmware: 000B4000 : 8192
    Programming modem firmware: 000B6000 : 8192
    Programming modem firmware: 000B8000 : 8192
    Programming modem firmware: 000BA000 : 8192
    Programming modem firmware: 000BC000 : 8192
    Programming modem firmware: 000BE000 : 8192
    Programming modem firmware: 000C0000 : 8192
    Programming modem firmware: 000C2000 : 8192
    Programming modem firmware: 000C4000 : 8192
    Programming modem firmware: 000C6000 : 8192
    Programming modem firmware: 000C8000 : 8192
    Programming modem firmware: 000CA000 : 8192
    Programming modem firmware: 000CC000 : 8192
    Programming modem firmware: 000CE000 : 8192
    Programming modem firmware: 000D0000 : 8192
    Programming modem firmware: 000D2000 : 8192
    Programming modem firmware: 000D4000 : 8192
    Programming modem firmware: 000D6000 : 8192
    Programming modem firmware: 000D8000 : 8192
    Programming modem firmware: 000DA000 : 8192
    Programming modem firmware: 000DC000 : 8192
    Programming modem firmware: 000DE000 : 8192
    Programming modem firmware: 000E0000 : 8192
    Programming modem firmware: 000E2000 : 8192
    Programming modem firmware: 000E4000 : 8192
    Programming modem firmware: 000E6000 : 8192
    Programming modem firmware: 000E8000 : 8192
    Programming modem firmware: 000EA000 : 8192
    Programming modem firmware: 000EC000 : 8192
    Programming modem firmware: 000EE000 : 8192
    Programming modem firmware: 000F0000 : 8192
    Programming modem firmware: 000F2000 : 8192
    Programming modem firmware: 000F4000 : 8192
    Programming modem firmware: 000F6000 : 8192
    Programming modem firmware: 000F8000 : 8192
    Programming modem firmware: 000FA000 : 8192
    Programming modem firmware: 000FC000 : 8192
    Programming modem firmware: 000FE000 : 8192
    Programming modem firmware: 00100000 : 8192
    Programming modem firmware: 00102000 : 8192
    Programming modem firmware: 00104000 : 8192
    Programming modem firmware: 00106000 : 8192
    Programming modem firmware: 00108000 : 8192
    Programming modem firmware: 0010A000 : 8192
    Programming modem firmware: 0010C000 : 8192
    Programming modem firmware: 0010E000 : 8192
    Programming modem firmware: 00110000 : 8192
    Programming modem firmware: 00112000 : 8192
    Programming modem firmware: 00114000 : 8192
    Programming modem firmware: 00116000 : 8192
    Programming modem firmware: 00118000 : 8192
    Programming modem firmware: 0011A000 : 8192
    Programming modem firmware: 0011C000 : 8192
    Programming modem firmware: 0011E000 : 8192
    Programming modem firmware: 00120000 : 8192
    Programming modem firmware: 00122000 : 8192
    Programming modem firmware: 00124000 : 8192
    Programming modem firmware: 00126000 : 8192
    Programming modem firmware: 00128000 : 8192
    Programming modem firmware: 0012A000 : 8192
    Programming modem firmware: 0012C000 : 8192
    Programming modem firmware: 0012E000 : 8192
    Programming modem firmware: 00130000 : 8192
    Programming modem firmware: 00132000 : 8192
    Programming modem firmware: 00134000 : 8192
    Programming modem firmware: 00136000 : 8192
    Programming modem firmware: 00138000 : 8192
    Programming modem firmware: 0013A000 : 8192
    Programming modem firmware: 0013C000 : 8192
    Programming modem firmware: 0013E000 : 8192
    Programming modem firmware: 00140000 : 8192
    Programming modem firmware: 00142000 : 8192
    Programming modem firmware: 00144000 : 8192
    Programming modem firmware: 00146000 : 8192
    Programming modem firmware: 00148000 : 8192
    Programming modem firmware: 0014A000 : 8192
    Programming modem firmware: 0014C000 : 8192
    Programming modem firmware: 0014E000 : 8192
    Programming modem firmware: 00150000 : 8192
    Programming modem firmware: 00152000 : 8192
    Programming modem firmware: 00154000 : 8192
    Programming modem firmware: 00156000 : 8192
    Programming modem firmware: 00158000 : 8192
    Programming modem firmware: 0015A000 : 8192
    Programming modem firmware: 0015C000 : 8192
    Programming modem firmware: 0015E000 : 8192
    Programming modem firmware: 00160000 : 8192
    Programming modem firmware: 00162000 : 8192
    Programming modem firmware: 00164000 : 8192
    Programming modem firmware: 00166000 : 8192
    Programming modem firmware: 00168000 : 8192
    Programming modem firmware: 0016A000 : 8192
    Programming modem firmware: 0016C000 : 8192
    Programming modem firmware: 0016E000 : 8192
    Programming modem firmware: 00170000 : 8192
    Programming modem firmware: 00172000 : 8192
    Programming modem firmware: 00174000 : 8192
    Programming modem firmware: 00176000 : 8192
    Programming modem firmware: 00178000 : 8192
    Programming modem firmware: 0017A000 : 8192
    Programming modem firmware: 0017C000 : 8192
    Programming modem firmware: 0017E000 : 8192
    Programming modem firmware: 00180000 : 8192
    Programming modem firmware: 00182000 : 8192
    Programming modem firmware: 00184000 : 8192
    Programming modem firmware: 00186000 : 8192
    Programming modem firmware: 00188000 : 8192
    Programming modem firmware: 0018A000 : 8192
    Programming modem firmware: 0018C000 : 8192
    Programming modem firmware: 0018E000 : 8192
    Programming modem firmware: 00190000 : 8192
    Programming modem firmware: 00192000 : 8192
    Programming modem firmware: 00194000 : 8192
    Programming modem firmware: 00196000 : 8192
    Programming modem firmware: 00198000 : 8192
    Programming modem firmware: 0019A000 : 8192
    Programming modem firmware: 0019C000 : 8192
    Programming modem firmware: 0019E000 : 8192
    Programming modem firmware: 001A0000 : 8192
    Programming modem firmware: 001A2000 : 8192
    Programming modem firmware: 001A4000 : 8192
    Programming modem firmware: 001A6000 : 8192
    Programming modem firmware: 001A8000 : 8192
    Programming modem firmware: 001AA000 : 8192
    Programming modem firmware: 001AC000 : 8192
    Programming modem firmware: 001AE000 : 8192
    Programming modem firmware: 001B0000 : 8192
    Programming modem firmware: 001B2000 : 8192
    Programming modem firmware: 001B4000 : 8192
    Programming modem firmware: 001B6000 : 8192
    Programming modem firmware: 001B8000 : 8192
    Programming modem firmware: 001BA000 : 8192
    Programming modem firmware: 001BC000 : 8192
    Programming modem firmware: 001BE000 : 8192
    Programming modem firmware: 001C0000 : 8192
    Programming modem firmware: 001C2000 : 8192
    Programming modem firmware: 001C4000 : 8192
    Programming modem firmware: 001C6000 : 8192
    Programming modem firmware: 001C8000 : 8192
    Programming modem firmware: 001CA000 : 8192
    Programming modem firmware: 001CC000 : 8192
    Programming modem firmware: 001CE000 : 8192
    Programming modem firmware: 001D0000 : 8192
    Programming modem firmware: 001D2000 : 8192
    Programming modem firmware: 001D4000 : 8192
    Programming modem firmware: 001D6000 : 8192
    Programming modem firmware: 001D8000 : 8192
    Programming modem firmware: 001DA000 : 8192
    Programming modem firmware: 001DC000 : 8192
    Programming modem firmware: 001DE000 : 8192
    Programming modem firmware: 001E0000 : 8192
    Programming modem firmware: 001E2000 : 8192
    Programming modem firmware: 001E4000 : 8192
    Programming modem firmware: 001E6000 : 8192
    Programming modem firmware: 001E8000 : 8192
    Programming modem firmware: 001EA000 : 8192
    Programming modem firmware: 001EC000 : 8192
    Programming modem firmware: 001EE000 : 8192
    Programming modem firmware: 001F0000 : 8192
    Programming modem firmware: 001F2000 : 8192
    Programming modem firmware: 001F4000 : 8192
    Programming modem firmware: 001F6000 : 8192
    Programming modem firmware: 001F8000 : 8192
    Programming modem firmware: 001FA000 : 8192
    Programming modem firmware: 001FC000 : 8192
    Programming modem firmware: 001FE000 : 8192
    Programming modem firmware: 00200000 : 8192
    Programming modem firmware: 00202000 : 8192
    Programming modem firmware: 00204000 : 8192
    Programming modem firmware: 00206000 : 8192
    Programming modem firmware: 00208000 : 8192
    Programming modem firmware: 0020A000 : 8192
    Programming modem firmware: 0020C000 : 8192
    Programming modem firmware: 0020E000 : 8192
    Programming modem firmware: 00210000 : 8192
    Programming modem firmware: 00212000 : 8192
    Programming modem firmware: 00214000 : 8192
    Programming modem firmware: 00216000 : 8192
    Programming modem firmware: 00218000 : 8192
    Programming modem firmware: 0021A000 : 8192
    Programming modem firmware: 0021C000 : 8192
    Programming modem firmware: 0021E000 : 8192
    Programming modem firmware: 00220000 : 8192
    Programming modem firmware: 00222000 : 8192
    Programming modem firmware: 00224000 : 8192
    Programming modem firmware: 00226000 : 8192
    Programming modem firmware: 00228000 : 8192
    Programming modem firmware: 0027C000 : 8192
    Programming modem firmware: 0027E000 : 8192
    Verify failed!
    Duaration in ms : 95069
    0204;01

    It looks like the programming is working, but the verify failed at the end.

    I think there must be a tool to recover the device back to a working device, isn't it?

  • The "wohle device to setup the modem firmware" doesn't reflect my explanation, that the "whole device" consists of a "modem + mfw" and a "MCU + bootloader + zephyr + app". The jlink is connected to the MCU, not the modem.

    As long as you stick to your view, you will be damned to fail. 

  • I understand.

    There is hardware and software. The hardware is given and for this I need software.

    I have done the steps and copy the mfw in the seperated parts like in the discription, but then there comes a problem in the verify. So I want to clean all the firmware in the modem part over the MCU.

    If I erase the device over the j-link only the MCU is erased, but I think there is a problem in the mfw part. But I don't know how to fix it. So there must be a possibility to erase the whole firmware in the modem part, do write a new firmware in the modem flash.

    Is there such a possibility or is the modem part of the device is now broken?

  • As there is no answer til now, I think there is no possibility to erase the firmware from the modem part.

    Is that right?

    Or is there a IPC command to reset the modem part to a default mode, so that the programming can be done?

  • Hi,

    There is no way to completely erase the modem firmware, that is correct. Modem firmware is updated, using either the nRF Connect for Desktop Programmer app (the preferred solution) or through a more complicated process (which I linked to previously in this thread.)

    Some restrictions may apply, such as e.g. related to downgrades. Please also make sure to use compatible nRF Connect SDK and modem firmware versions.

    Are you able to successfully upgrade the modem firmware using the nRF Connect for Desktop Programmer app, on the affected device?

    Regards,
    Terje

Related