OTA update: Guru Meditation Error: Core 0 panic'ed (LoadProhibited)

-1

I am trying to setup over the air(OTA) updates on my ESP-32 device using a HTTP server with SSL certificates. I am using the ESP-IDF framework on the ESP-32 system with this docker container as my tool chain so I can flash and change configuration settings using sudo esp32env make flash and sudo esp32env make menuconfig. I found a library which supports OTA updates via HTTP server with SSL on the ESP-IDF framework. I modified the values in the main.h file(located in the main folder) for my WIFI access point, HTTP server IP address, CA certificate key, and Peer key. I also changed the server port value from 443 to 4443 in the init_ota function in the main.c file. After I flash to my ESP-32, my device continuously reboots giving this error.

[0;32mI (7169) fwup_wifi: Firmware updater task checking for firmware update.[0m
Guru Meditation Error: Core  0 panic'ed (LoadProhibited)

The full Serial Monitor output:

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
    configsip: 0, SPIWP:0x00
    clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
    mode:DIO, clock div:2
    load:0x3fff0008,len:8
    load:0x3fff0010,len:4368
    load:0x40078000,len:11080
    load:0x40080000,len:252
    entry 0x40080034
    ␛[0;32mI (45) boot: ESP-IDF v2.1 2nd stage bootloader␛[0m
    ␛[0;32mI (45) boot: compile time 17:22:27␛[0m
    ␛[0;32mI (46) boot: Enabling RNG early entropy source...␛[0m
    ␛[0;32mI (59) boot: SPI Speed      : 40MHz␛[0m
    ␛[0;32mI (72) boot: SPI Mode       : DIO␛[0m
    ␛[0;32mI (84) boot: SPI Flash Size : 4MB␛[0m
    ␛[0;32mI (97) boot: Partition Table:␛[0m
    ␛[0;32mI (108) boot: ## Label            Usage          Type ST Offset   Length␛[0m
    ␛[0;32mI (130) boot:  0 nvs              WiFi data        01 02 00009000 00004000␛[0m
    ␛[0;32mI (154) boot:  1 otadata          OTA data         01 00 0000d000 00002000␛[0m
    ␛[0;32mI (177) boot:  2 phy_init         RF data          01 01 0000f000 00001000␛[0m
    ␛[0;32mI (200) boot:  3 factory          factory app      00 00 00010000 00100000␛[0m
    ␛[0;32mI (223) boot:  4 ota_0            OTA app          00 10 00110000 00100000␛[0m
    ␛[0;32mI (247) boot:  5 ota_1            OTA app          00 11 00210000 00100000␛[0m
    ␛[0;32mI (270) boot: End of partition table␛[0m
    ␛[0;32mI (283) boot: Disabling RNG early entropy source...␛[0m
    ␛[0;32mI (300) boot: Loading app partition at offset 00210000␛[0m
    ␛[0;32mI (1184) boot: segment 0: paddr=0x00210018 vaddr=0x3f400020 size=0x17c38 ( 97336) map␛[0m
    ␛[0;32mI (1184) boot: segment 1: paddr=0x00227c58 vaddr=0x3ffc0000 size=0x02f14 ( 12052) load␛[0m
    ␛[0;32mI (1207) boot: segment 2: paddr=0x0022ab74 vaddr=0x40080000 size=0x00400 (  1024) load␛[0m
    ␛[0;32mI (1229) boot: segment 3: paddr=0x0022af7c vaddr=0x40080400 size=0x0508c ( 20620) load␛[0m
    ␛[0;32mI (1265) boot: segment 4: paddr=0x00230010 vaddr=0x400d0018 size=0x72a20 (469536) map␛[0m
    ␛[0;32mI (1281) boot: segment 5: paddr=0x002a2a38 vaddr=0x4008548c size=0x04998 ( 18840) load␛[0m
    ␛[0;32mI (1316) boot: segment 6: paddr=0x002a73d8 vaddr=0x400c0000 size=0x00000 (     0) load␛[0m
    ␛[0;32mI (433) cpu_start: Pro cpu up.␛[0m
    ␛[0;32mI (437) cpu_start: Starting app cpu, entry point is 0x40080f58␛[0m
    ␛[0;32mI (443) cpu_start: App cpu up.␛[0m
    ␛[0;32mI (448) heap_init: Initializing. RAM available for dynamic allocation:␛[0m
    ␛[0;32mI (454) heap_init: At 3FFAFF10 len 000000F0 (0 KiB): DRAM␛[0m
    ␛[0;32mI (460) heap_init: At 3FFC9080 len 00016F80 (91 KiB): DRAM␛[0m
    ␛[0;32mI (466) heap_init: At 3FFE0440 len 00003BC0 (14 KiB): D/IRAM␛[0m
    ␛[0;32mI (473) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM␛[0m
    ␛[0;32mI (479) heap_init: At 40089E24 len 000161DC (88 KiB): IRAM␛[0m
    ␛[0;32mI (485) cpu_start: Pro cpu start user code␛[0m
    ␛[0;32mI (168) cpu_start: Starting scheduler on PRO CPU.␛[0m
    ␛[0;32mI (0) cpu_start: Starting scheduler on APP CPU.␛[0m
    ␛[0;32mI (169) main: ---------- Intialization started ----------␛[0m
    ␛[0;32mI (169) main: ---------- Software version:  1 -----------␛[0m
    ␛[0;32mI (199) main: Set up WIFI network connection.␛[0m
    ␛[0;32mI (199) wifi_sta: wifi_sta_init: network = 'Home'␛[0m
    I (209) wifi: wifi firmware version: bffcf7f
    I (209) wifi: config NVS flash: enabled
    I (209) wifi: config nano formating: disabled
    ␛[0;32mI (219) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE␛[0m
    ␛[0;32mI (219) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE␛[0m
    I (249) wifi: Init dynamic tx buffer num: 32
    I (249) wifi: Init data frame dynamic rx buffer num: 32
    I (249) wifi: Init management frame dynamic rx buffer num: 32
    I (259) wifi: wifi driver task: 3ffd1cc4, prio:23, stack:4096
    I (259) wifi: Init static rx buffer num: 10
    I (269) wifi: Init dynamic rx buffer num: 32
    I (269) wifi: wifi power manager task: 0x3ffd6904 prio: 21 stack: 2560
    ␛[0;32mI (499) phy: phy_version: 3662, 711a97c, May  9 2018, 14:29:06, 0, 0␛[0m
    I (509) wifi: mode : sta (30:ae:a4:47:7b:b4)
    ␛[0;32mI (509) main: app_event_handler: event: 2␛[0m
    I (629) wifi: n:1 0, o:1 0, ap:255 255, sta:1 0, prof:1
    I (1479) wifi: state: init -> auth (b0)
    ␛[0;32mI (1479) main: Initialising OTA firmware updating.␛[0m
    ␛[0;31mE (1479) wifi_tls: wifi_tls_create_context: parameter missing␛[0m
    I (1479) wifi: state: auth -> assoc (0)
    ␛[0;32mI (1489) fwup_wifi: Firmware updater task started.␛[0m
    I (1489) wifi: state: assoc -> run (10)
    I (1509) wifi: connected with Home, channel 1
    ␛[0;32mI (1509) main: app_event_handler: event: 4␛[0m
    ␛[0;32mI (2169) event: sta ip: 10.0.1.26, mask: 255.255.255.0, gw: 10.0.1.1␛[0m
    ␛[0;32mI (2169) main: app_event_handler: event: 7␛[0m
    ␛[0;32mI (2169) wifi_sta: Device is now connected to WIFI network␛[0m
    I (4499) wifi: pm start, type:0

    ␛[0;32mI (7169) fwup_wifi: Firmware updater task checking for firmware update.␛[0m
    Guru Meditation Error: Core  0 panic'ed (LoadProhibited)
    . Exception was unhandled.
    Register dump:
    PC      : 0x400d277f  PS      : 0x00060b30  A0      : 0x800d209b  A1      : 0x3ffd9410
    A2      : 0x00000000  A3      : 0x00000003  A4      : 0x3f4021a9  A5      : 0x3ffc3498
    A6      : 0x00000005  A7      : 0x3ffc345c  A8      : 0x80081eb1  A9      : 0x3ffd93c0
    A10     : 0x00000053  A11     : 0x3ffd6fe4  A12     : 0x3ffd9400  A13     : 0x0000000c
    A14     : 0x00000001  A15     : 0x00000000  SAR     : 0x00000004  EXCCAUSE: 0x0000001c
    EXCVADDR: 0x00000000  LBEG    : 0x400014fd  LEND    : 0x4000150d  LCOUNT  : 0xfffffffd

    Backtrace: 0x400d277f:0x3ffd9410 0x400d2098:0x3ffd9450

    Rebooting...

I generated my Peer key and CA key using this tutorial.

c
embedded
ota
esp32
asked on Stack Overflow Aug 14, 2018 by Dauggie • edited Aug 14, 2018 by Dauggie

0 Answers

Nobody has answered this question yet.


User contributions licensed under CC BY-SA 3.0