This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

nRF9160 Dev Kit Bricked after MODEM update to v1.0.0

Hi, I’m located in Liège, BELGIUM.

 

Using the nRF9160DK, an orange SIM card, MODEM firmware mfw_nrf9160_0.7.0-15.alpha I managed to make run some sample code:

  • mqtt_simple, using a mosquitto broker on a Ubuntu machine in our premises
  • http_application_update, using an upgrade file uploaded in nrfcloud as the sample guidelines suggest
    • The download hostname « s3.amazonaws.com » could not be resolved.
      So, I directly used the IP address of s3.amazonaws.com (sent back by PING).
      This seemed to be a known problem of the version of the MODEM firmware.
      • Although I added the options « DNS resolver » et donné DNS Sever 1 « 8.8.8.8 » et DNS Sever 2 « 8.8.4.4 », the download hostname « s3.amazonaws.com » could not be resolved

 

So, as suggested on several posts/tickets in the forum, I updated the MODEM firmware to the latest version v1.0.0 using nRF Programmer. I also updated all the tools, the SEGGER Embedded Studio (4.18 win x64) and the NCS folder to v1.0.0 as suggested in https://devzone.nordicsemi.com/nordic/nordic-blog/b/blog/posts/how-to-get-production-version-v1-0-0-to-nrf9160

I can assure you that I always use the “erase all” button in the nRF Programmer before writing an application merged hex file.

Updating the modem firmware started to raise a lot of problems for which I can’t find any solution and so my board is more or less bricked!

 

 

  1.  I can’t program the MODEM to back to previous versions. This leads to errors. Whether timeout or another error.
  2.  I can’t run at_client, asset_tracker nor http_application_update.
  • at_client leads to kernel panic.

This kernel panic is referenced in the forum https://devzone.nordicsemi.com/f/nordic-q-a/49264/unable-to-update-firmware-on-nrf9160/196300#196300

I did the upgrade of the modem using the programmer. But I cannot use at_client to check the version.

 

SPM: NS image at 0xc000

SPM: NS MSP at 0x20023b68

SPM: NS reset vector at 0xe325

SPM: prepare to jump to Non-Secure image.

bsdlib irrecoverable error: 3

ASSERTION FAIL [0] @ ../src/main.c:23

***** Kernel Panic! *****

Current thread ID = 0x20021a80

Faulting instruction address = 0x217c8

 

  • http_applation_update  leads also to kernel panic

 

***** Booting Zephyr OS build v1.14.99-ncs2-495-ga8933a2ead01 *****

[00:00:00.007,324] <inf> mcuboot: Starting bootloader

[00:00:00.015,991] <inf> mcuboot: Primary image: magic=unset, swap_type=0x1, cop                                                                                                                                                             y_done=0x3, image_ok=0x3

[00:00:00.029,418] <inf> mcuboot: Scratch: magic=unset, swap_type=0x1, copy_done                                                                                                                                                             =0x3, image_ok=0x3

[00:00:00.042,144] <inf> mcuboot: Boot source: primary slot

[00:00:00.054,138] <inf> mcuboot: Swap type: none

[00:00:00.389,068] <inf> mcuboot: Bootloader chainload address offset: 0xc000

[00:00:00.396,789] <inf> mcuboot: Jumping to the first image slot

***** Booting Zephyr OS build v1.14.99-ncs2-495-ga8933a2ead01 *****

Flash region            Domain          Permissions

00 0x00000 0x08000      Secure          rwxl

01 0x08000 0x10000      Secure          rwxl

02 0x10000 0x18000      Secure          rwxl

03 0x18000 0x20000      Non-Secure      rwxl

04 0x20000 0x28000      Non-Secure      rwxl

05 0x28000 0x30000      Non-Secure      rwxl

06 0x30000 0x38000      Non-Secure      rwxl

07 0x38000 0x40000      Non-Secure      rwxl

08 0x40000 0x48000      Non-Secure      rwxl

09 0x48000 0x50000      Non-Secure      rwxl

10 0x50000 0x58000      Non-Secure      rwxl

11 0x58000 0x60000      Non-Secure      rwxl

12 0x60000 0x68000      Non-Secure      rwxl

13 0x68000 0x70000      Non-Secure      rwxl

14 0x70000 0x78000      Non-Secure      rwxl

15 0x78000 0x80000      Non-Secure      rwxl

16 0x80000 0x88000      Non-Secure      rwxl

17 0x88000 0x90000      Non-Secure      rwxl

18 0x90000 0x98000      Non-Secure      rwxl

19 0x98000 0xa0000      Non-Secure      rwxl

20 0xa0000 0xa8000      Non-Secure      rwxl

21 0xa8000 0xb0000      Non-Secure      rwxl

22 0xb0000 0xb8000      Non-Secure      rwxl

23 0xb8000 0xc0000      Non-Secure      rwxl

24 0xc0000 0xc8000      Non-Secure      rwxl

25 0xc8000 0xd0000      Non-Secure      rwxl

26 0xd0000 0xd8000      Non-Secure      rwxl

27 0xd8000 0xe0000      Non-Secure      rwxl

28 0xe0000 0xe8000      Non-Secure      rwxl

29 0xe8000 0xf0000      Non-Secure      rwxl

30 0xf0000 0xf8000      Non-Secure      rwxl

31 0xf8000 0x100000     Non-Secure      rwxl

Non-secure callable region 0 placed in flash region 2 with size 32.

 

 

SRAM region             Domain          Permissions

00 0x00000 0x02000      Secure          rwxl

01 0x02000 0x04000      Secure          rwxl

02 0x04000 0x06000      Secure          rwxl

03 0x06000 0x08000      Secure          rwxl

04 0x08000 0x0a000      Secure          rwxl

05 0x0a000 0x0c000      Secure          rwxl

06 0x0c000 0x0e000      Secure          rwxl

07 0x0e000 0x10000      Secure          rwxl

08 0x10000 0x12000      Non-Secure      rwxl

09 0x12000 0x14000      Non-Secure      rwxl

10 0x14000 0x16000      Non-Secure      rwxl

11 0x16000 0x18000      Non-Secure      rwxl

12 0x18000 0x1a000      Non-Secure      rwxl

13 0x1a000 0x1c000      Non-Secure      rwxl

14 0x1c000 0x1e000      Non-Secure      rwxl

15 0x1e000 0x20000      Non-Secure      rwxl

16 0x20000 0x22000      Non-Secure      rwxl

17 0x22000 0x24000      Non-Secure      rwxl

18 0x24000 0x26000      Non-Secure      rwxl

19 0x26000 0x28000      Non-Secure      rwxl

20 0x28000 0x2a000      Non-Secure      rwxl

21 0x2a000 0x2c000      Non-Secure      rwxl

22 0x2c000 0x2e000      Non-Secure      rwxl

23 0x2e000 0x30000      Non-Secure      rwxl

24 0x30000 0x32000      Non-Secure      rwxl

25 0x32000 0x34000      Non-Secure      rwxl

26 0x34000 0x36000      Non-Secure      rwxl

27 0x36000 0x38000      Non-Secure      rwxl

28 0x38000 0x3a000      Non-Secure      rwxl

29 0x3a000 0x3c000      Non-Secure      rwxl

30 0x3c000 0x3e000      Non-Secure      rwxl

31 0x3e000 0x40000      Non-Secure      rwxl

 

Peripheral              Domain          Status

00 NRF_P0               Non-Secure      OK

01 NRF_CLOCK            Non-Secure      OK

02 NRF_RTC1             Non-Secure      OK

03 NRF_NVMC             Non-Secure      OK

04 NRF_UARTE1           Non-Secure      OK

05 NRF_UARTE2           Secure          SKIP

06 NRF_TWIM2            Non-Secure      OK

07 NRF_SPIM3            Non-Secure      OK

08 NRF_TIMER0           Non-Secure      OK

09 NRF_TIMER1           Non-Secure      OK

10 NRF_TIMER2           Non-Secure      OK

11 NRF_SAADC            Non-Secure      OK

12 NRF_PWM0             Non-Secure      OK

13 NRF_PWM1             Non-Secure      OK

14 NRF_PWM2             Non-Secure      OK

15 NRF_PWM3             Non-Secure      OK

16 NRF_IPC              Non-Secure      OK

17 NRF_VMC              Non-Secure      OK

18 NRF_FPU              Non-Secure      OK

19 NRF_EGU1             Non-Secure      OK

20 NRF_EGU2             Non-Secure      OK

21 NRF_GPIOTE1          Non-Secure      OK

 

SPM: NS image at 0x18200

SPM: NS MSP at 0x20026d20

SPM: NS reset vector at 0x1b225

SPM: prepare to jump to Non-Secure image.

bsdlib irrecoverable error: 3

ASSERTION FAIL [0] @ ../src/main.c:33

***** Kernel Panic! *****

Current thread ID = 0x20023638

Faulting instruction address = 0x2fa76

 

 

  • asset_tracker constantly reboot without entering the non secure main.c

 

 

***** Booting Zephyr OS build v1.14.99-ncs2-495-ga8933a2ead01 *****

Flash region            Domain          Permissions

00 0x00000 0x08000      Secu***** Booting Zephyr OS build v1.14.99-ncs2-495-ga89                                                                                                                                                            

33a2ead01 *****

Flash region            Domain          Permissions

00 0x00000 0x08000      Secure          rwxl

01 0x08000 0x10000      Non-Secure      rwxl

02 0x10000 0x18000      Non-Secure      rwxl

03 0x18000 0x20000      Non-Secure      rwxl

04 0x20000 0x28000      Non-Secure      rwxl

05 0x28000 0x30000      Non-Secure      rwxl

06 0x30000 0x38000      Non-Secure      rwxl

07 0x38000 0x40000      Non-Secure      rwxl

08 0x40000 0x48000      Non-Secure      rwxl

09 0x48000 0x50000      Non-Secure      rwxl

10 0x50000 0x58000      Non-Secure      rwxl

11 0x58000 0x60000      Non-Secure      rwxl

12 0x60000 0x68000      Non-Secure      rwxl

13 0x68000 0x70000      Non-Secure      rwxl

14 0x70000 0x78000      Non-Secure      rwxl

15 0x78000 0x80000      Non-Secure      rwxl

16 0x80000 0x88000      Non-Secure      rwxl

17 0x88000 0x90000      Non-Secure      rwxl

18 0x90000 0x98000      Non-Secure      rwxl

19 0x98000 0xa0000      Non-Secure      rwxl

20 0xa0000 0xa8000      Non-Secure      rwxl

21 0xa8000 0xb0000      Non-Secure      rwxl

22 0xb0000 0xb8000      Non-Secure      rwxl

23 0xb8000 0xc0000      Non-Secure      rwxl

24 0xc0000 0xc8000      Non-Secure      rwxl

25 0xc8000 0xd0000      Non-Secure      rwxl

26 0xd0000 0xd8000      Non-Secure      rwxl

27 0xd8000 0xe0000      Non-Secure      rwxl

28 0xe0000 0xe8000      Non-Secure      rwxl

29 0xe8000 0xf0000      Non-Secure      rwxl

30 0xf0000 0xf8000      Non-Secure      rwxl

31 0xf8000 0x100000     Non-Secure      rwxl

Non-secure callable region 0 placed in flash region 0 with size 32.

 

 

SRAM region             Domain          Permissions

00 0x00000 0x02000      Secure          rwxl

01 0x02000 0x04000      Secure          rwxl

02 0x04000 0x06000      Secure          rwxl

03 0x06000 0x08000      Secure          rwxl

04 0x08000 0x0a000      Secure          rwxl

05 0x0a000 0x0c000      Secure          rwxl

06 0x0c000 0x0e000      Secure          rwxl

07 0x0e000 0x10000      Secure          rwxl

08 0x10000 0x12000      Non-Secure      rwxl

09 0x12000 0x14000      Non-Secure      rwxl

10 0x14000 0x16000      Non-Secure      rwxl

11 0x16000 0x18000      Non-Secure      rwxl

12 0x18000 0x1a000      Non-Secure      rwxl

13 0x1a000 0x1c000      Non-Secure      rwxl

14 0x1c000 0x1e000      Non-Secure      rwxl

15 0x1e000 0x20000      Non-Secure      rwxl

16 0x20000 0x22000      Non-Secure      rwxl

17 0x22000 0x24000      Non-Secure      rwxl

18 0x24000 0x26000      Non-Secure      rwxl

19 0x26000 0x28000      Non-Secure      rwxl

20 0x28000 0x2a000      Non-Secure      rwxl

21 0x2a000 0x2c000      Non-Secure      rwxl

22 0x2c000 0x2e000      Non-Secure      rwxl

23 0x2e000 0x30000      Non-Secure      rwxl

24 0x30000 0x32000      Non-Secure      rwxl

25 0x32000 0x34000      Non-Secure      rwxl

26 0x34000 0x36000      Non-Secure      rwxl

27 0x36000 0x38000      Non-Secure      rwxl

28 0x38000 0x3a000      Non-Secure      rwxl

29 0x3a000 0x3c000      Non-Secure      rwxl

30 0x3c000 0x3e000      Non-Secure      rwxl

31 0x3e000 0x40000      Non-Secure      rwxl

 

Peripheral              Domain          Status

00 NRF_P0               Non-Secure      OK

01 NRF_CLOCK            Non-Secure      OK

02 NRF_RTC1             Non-Secure      OK

03 NRF_NVMC             Non-Secure      OK

04 NRF_UARTE1           Non-Secure      OK

05 NRF_UARTE2           Secure          SKIP

06 NRF_TWIM2            Non-Secure      OK

07 NRF_SPIM3            Non-Secure      OK

08 NRF_TIMER0           Non-Secure      OK

09 NRF_TIMER1           Non-Secure      OK

10 NRF_TIMER2           Non-Secure      OK

11 NRF_SAADC            Non-Secure      OK

12 NRF_PWM0             Non-Secure      OK

13 NRF_PWM1             Non-Secure      OK

14 NRF_PWM2             Non-Secure      OK

15 NRF_PWM3             Non-Secure      OK

16 NRF_IPC              Non-Secure      OK

17 NRF_VMC              Non-Secure      OK

18 NRF_FPU              Non-Secure      OK

19 NRF_EGU1             Non-Secure      OK

20 NRF_EGU2             Non-Secure      OK

21 NRF_GPIOTE1          Non-Secure      OK

 

SPM: NS image at 0xc000

SPM: NS MSP at 0x2002b4b8

SPM: NS reset vector at 0x14335

SPM: prepare to jump to Non-Secure image.

 

Any idea. Now, I can't simply use the board.

Best regards,

Julien

Related