ESP-IDF (ESP32) - lvgl causing cpu panic

Is anyone able to give me some tips on why I may be getting a core panic?

I’ve been playing with LVGL for a few days with an ESP32 and I have something on the display - I can create a couple of buttons and set labels for them. I’ve not yet got the button touch call back to work though.

I started with lvgl version 7.11 but I kept finding that the examples on the web were mostly v8 so they would not work because there are significant changes. I have therefore now moved across to use v8.1.1.

Originally in Ver 7.11, I could display a couple of buttons and get some touch response so I am pretty sure everything is wired up correctly. Since I moved to V8.1, it seems like when I try to configure and then readfrom the XT2046 touch sensor that I get the problem.

If I leave this code out (commented) then the display show buttons and I have the FPS showing in the bottom right, just fine.

    // Register an input device when enabled on the menuconfig
    lv_indev_drv_t indev_drv;
    lv_indev_drv_init(&indev_drv);
    indev_drv.read_cb = (void *) touch_event;
    indev_drv.type = LV_INDEV_TYPE_POINTER;
    lv_indev_drv_register(&indev_drv);

As soon as I include the last line there
lv_indev_drv_register(&indev_drv);
things go wrong:

See the last few lines of this dump for the error

ELF file SHA256: 754a70b3e7ef5c89

Rebooting...
ets Jun  8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:6832
load:0x40078000,len:14836
ho 0 tail 12 room 4
load:0x40080400,len:3792
0x40080400: _init at ??:?

entry 0x40080694
I (29) boot: ESP-IDF v5.0-dev-382-g098dfe8a08 2nd stage bootloader
I (29) boot: compile time 14:26:18
I (29) boot: chip revision: 1
I (33) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (40) boot.esp32: SPI Speed      : 40MHz
I (45) boot.esp32: SPI Mode       : DIO
I (49) boot.esp32: SPI Flash Size : 4MB
I (54) boot: Enabling RNG early entropy source...
I (59) boot: Partition Table:
I (63) boot: ## Label            Usage          Type ST Offset   Length
I (70) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (78) boot:  1 phy_init         RF data          01 01 0000f000 00001000
I (85) boot:  2 factory          factory app      00 00 00010000 00100000
I (93) boot: End of partition table
I (97) boot_comm: chip revision: 1, min. application chip revision: 0
I (104) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=120ach ( 73900) map
I (139) esp_image: segment 1: paddr=000220d4 vaddr=3ffb0000 size=025b4h (  9652) load
I (143) esp_image: segment 2: paddr=00024690 vaddr=40080000 size=0b988h ( 47496) load
I (165) esp_image: segment 3: paddr=00030020 vaddr=400d0020 size=46348h (287560) map
I (269) esp_image: segment 4: paddr=00076370 vaddr=4008b988 size=016d8h (  5848) load
I (272) esp_image: segment 5: paddr=00077a50 vaddr=50000000 size=00010h (    16) load
I (281) boot: Loaded app from partition at offset 0x10000
I (281) boot: Disabling RNG early entropy source...
I (298) cpu_start: Pro cpu up.
I (298) cpu_start: Starting app cpu, entry point is 0x400811cc
0x400811cc: call_start_cpu1 at /home/martin/esp/esp-idf/components/esp_system/port/cpu_start.c:164

I (284) cpu_start: App cpu up.
I (314) cpu_start: Pro cpu start user code
I (314) cpu_start: cpu freq: 160000000 Hz
I (314) cpu_start: Application information:
I (319) cpu_start: Project name:     lvgl_test
I (324) cpu_start: App version:      63a55de7-dirty
I (330) cpu_start: Compile time:     Nov 19 2021 16:17:29
I (336) cpu_start: ELF file SHA256:  754a70b3e7ef5c89...
I (342) cpu_start: ESP-IDF:          v5.0-dev-382-g098dfe8a08
I (349) heap_init: Initializing. RAM available for dynamic allocation:
I (356) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
I (362) heap_init: At 3FFBB408 len 00024BF8 (146 KiB): DRAM
I (368) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
I (374) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
I (381) heap_init: At 4008D060 len 00012FA0 (75 KiB): IRAM
I (388) spi_flash: detected chip: generic
I (392) spi_flash: flash io: dio
I (397) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
[Info]  (0.000, +0)      lv_init: begin         (in lv_obj.c line #104)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 32 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3368  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 24 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb338c  (in lv_mem.c line #151)
[Warn]  (0.000, +0)      lv_init: Log level is set the Trace which makes LVGL much slower       (in lv_obj.c line #177)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x0 with 8 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb33a8        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb33a8 with 16 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb33a8        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_init: finished      (in lv_obj.c line #184)
I (100) lvgl_helpers: Display buffer size: 11200
I (100) lvgl_helpers: Initializing shared SPI master
I (100) lvgl_helpers: Configuring SPI host VSPI_HOST (2)
I (110) lvgl_helpers: MISO pin: 19, MOSI pin: 23, SCLK pin: 18, IO2/WP pin: -1, IO3/HD pin: -1
I (120) lvgl_helpers: Max transfer size: 22400 (bytes)
I (120) lvgl_helpers: Initializing SPI bus...
I (130) disp_spi: Adding SPI device
I (140) disp_spi: Clock speed: 40000000Hz, mode: 0, CS pin: 15
I (360) ILI9341: Initialization.
I (580) ILI9341: Display orientation: LANDSCAPE
I (580) ILI9341: 0x36 command value: 0x28
I (580) disp_backlight: Setting LCD backlight: 100%
I (580) XPT2046: XPT2046 Initialization
I (590) gpio: GPIO[27]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
[Trace] (0.000, +0)      lv_mem_alloc: allocating 356 bytes     (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb33bc  (in lv_mem.c line #151)

<snip to make it fit withing the work count allowed>

[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3d10 with 36 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3d10        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3d10 with 42 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3d10        (in lv_mem.c line #203)
[Info]  (0.000, +0)      lv_obj_create: begin   (in lv_obj.c line #210)
[Trace] (0.000, +0)      lv_obj_class_create_obj: Creating object with 0x3f4039b4 class on 0x0 parent   (in lv_obj_class.c line #45)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 32 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3d40  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_obj_class_create_obj: creating a screen     (in lv_obj_class.c line #55)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 4 bytes       (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3d64  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x0 with 8 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3d74        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3d74 with 16 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3d74        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3d74 with 24 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3d74        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_obj_constructor: begin      (in lv_obj.c line #404)
[Trace] (0.000, +0)      lv_obj_constructor: finished   (in lv_obj.c line #428)
[Trace] (0.000, +0)      event_send_core: Sending event 42 to 0x3ffb3d40 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.000, +0)      event_send_core: Sending event 19 to 0x3ffb3d40 with 0x3ffc1a20 param  (in lv_event.c line #405)
[Info]  (0.000, +0)      lv_obj_create: begin   (in lv_obj.c line #210)
[Trace] (0.000, +0)      lv_obj_class_create_obj: Creating object with 0x3f4039b4 class on 0x0 parent   (in lv_obj_class.c line #45)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 32 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3d90  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_obj_class_create_obj: creating a screen     (in lv_obj_class.c line #55)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3d64 with 8 size    (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3d64        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x0 with 8 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3db4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3db4 with 16 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3db4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3db4 with 24 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3db4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_obj_constructor: begin      (in lv_obj.c line #404)
[Trace] (0.000, +0)      lv_obj_constructor: finished   (in lv_obj.c line #428)
[Trace] (0.000, +0)      event_send_core: Sending event 42 to 0x3ffb3d90 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.000, +0)      event_send_core: Sending event 19 to 0x3ffb3d90 with 0x3ffc1a20 param  (in lv_event.c line #405)
[Info]  (0.000, +0)      lv_obj_create: begin   (in lv_obj.c line #210)
[Trace] (0.000, +0)      lv_obj_class_create_obj: Creating object with 0x3f4039b4 class on 0x0 parent   (in lv_obj_class.c line #45)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 32 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3dd0  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_obj_class_create_obj: creating a screen     (in lv_obj_class.c line #55)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3d64 with 12 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3d64        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x0 with 8 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3df4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3df4 with 16 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3df4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3df4 with 24 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3df4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_obj_constructor: begin      (in lv_obj.c line #404)
[Trace] (0.000, +0)      lv_obj_constructor: finished   (in lv_obj.c line #428)
[Trace] (0.000, +0)      event_send_core: Sending event 42 to 0x3ffb3dd0 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.000, +0)      event_send_core: Sending event 19 to 0x3ffb3dd0 with 0x3ffc1a20 param  (in lv_event.c line #405)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3db4 with 16 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3db4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3db4 with 8 size    (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3db4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3db4 with 0 size    (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: using zero_mem         (in lv_mem.c line #186)
[Trace] (0.000, +0)      lv_mem_free: freeing 0x3ffb3db4        (in lv_mem.c line #161)
[Trace] (0.000, +0)      event_send_core: Sending event 42 to 0x3ffb3d90 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.000, +0)      event_send_core: Sending event 19 to 0x3ffb3d90 with 0x3ffc1a20 param  (in lv_event.c line #405)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3df4 with 16 size   (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3df4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3df4 with 8 size    (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: allocated at 0x3ffb3df4        (in lv_mem.c line #203)
[Trace] (0.000, +0)      lv_mem_realloc: reallocating 0x3ffb3df4 with 0 size    (in lv_mem.c line #184)
[Trace] (0.000, +0)      lv_mem_realloc: using zero_mem         (in lv_mem.c line #186)
[Trace] (0.000, +0)      lv_mem_free: freeing 0x3ffb3df4        (in lv_mem.c line #161)
[Trace] (0.000, +0)      event_send_core: Sending event 42 to 0x3ffb3dd0 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.000, +0)      event_send_core: Sending event 19 to 0x3ffb3dd0 with 0x3ffc1a20 param  (in lv_event.c line #405)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 28 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3df4  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 28 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3e14  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 100 bytes     (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3e34  (in lv_mem.c line #151)
[Trace] (0.000, +0)      lv_mem_alloc: allocating 32 bytes      (in lv_mem.c line #125)
[Trace] (0.000, +0)      lv_mem_alloc: allocated at 0x3ffb3e9c  (in lv_mem.c line #151)
[Info]  (0.000, +0)      lv_btn_create: begin   (in lv_btn.c line #51)
[Trace] (0.012, +12)     lv_obj_class_create_obj: Creating object with 0x3f4090e0 class on 0x3ffb3d40 parent    (in lv_obj_class.c line #45)
[Trace] (0.017, +5)      lv_mem_alloc: allocating 32 bytes      (in lv_mem.c line #125)
[Trace] (0.032, +15)     lv_mem_alloc: allocated at 0x3ffb3ec0  (in lv_mem.c line #151)
[Trace] (0.032, +0)      lv_obj_class_create_obj: creating normal object        (in lv_obj_class.c line #81)
[Trace] (0.040, +8)      lv_mem_alloc: allocating 28 bytes      (in lv_mem.c line #125)
[Trace] (0.052, +12)     lv_mem_alloc: allocated at 0x3ffb3ee4  (in lv_mem.c line #151)
[Trace] (0.055, +3)      lv_mem_alloc: allocating 4 bytes       (in lv_mem.c line #125)
[Trace] (0.062, +7)      lv_mem_alloc: allocated at 0x3ffb3db4  (in lv_mem.c line #151)
[Trace] (0.072, +10)     lv_mem_realloc: reallocating 0x0 with 8 size   (in lv_mem.c line #184)
[Trace] (0.077, +5)      lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.092, +15)     lv_mem_realloc: reallocating 0x3ffb3f04 with 16 size   (in lv_mem.c line #184)
[Trace] (0.093, +1)      lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.101, +8)      lv_mem_realloc: reallocating 0x3ffb3f04 with 24 size   (in lv_mem.c line #184)
[Trace] (0.112, +11)     lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.117, +5)      lv_mem_realloc: reallocating 0x3ffb3f04 with 32 size   (in lv_mem.c line #184)
[Trace] (0.132, +15)     lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.134, +2)      lv_mem_realloc: reallocating 0x3ffb3f04 with 40 size   (in lv_mem.c line #184)
[Trace] (0.152, +18)     lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.152, +0)      lv_mem_realloc: reallocating 0x3ffb3f04 with 48 size   (in lv_mem.c line #184)
[Trace] (0.159, +7)      lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.172, +13)     lv_mem_realloc: reallocating 0x3ffb3f04 with 56 size   (in lv_mem.c line #184)
[Trace] (0.175, +3)      lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.192, +17)     lv_mem_realloc: reallocating 0x3ffb3f04 with 64 size   (in lv_mem.c line #184)
[Trace] (0.192, +0)      lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.199, +7)      lv_mem_realloc: reallocating 0x3ffb3f04 with 72 size   (in lv_mem.c line #184)
[Trace] (0.212, +13)     lv_mem_realloc: allocated at 0x3ffb3f04        (in lv_mem.c line #203)
[Trace] (0.215, +3)      lv_obj_constructor: begin      (in lv_obj.c line #404)
[Trace] (0.222, +7)      lv_obj_constructor: finished   (in lv_obj.c line #428)
[Trace] (0.232, +10)     lv_btn_constructor: begin      (in lv_btn.c line #64)
[Trace] (0.235, +3)      event_send_core: Sending event 44 to 0x3ffb3ec0 with 0x3ffc19c0 param  (in lv_event.c line #405)
[Trace] (0.252, +17)     event_send_core: Sending event 44 to 0x3ffb3ec0 with 0x3ffc19c0 param  (in lv_event.c line #405)
[Trace] (0.255, +3)      lv_btn_constructor: finished   (in lv_btn.c line #69)
[Trace] (0.262, +7)      event_send_core: Sending event 42 to 0x3ffb3ec0 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.272, +10)     event_send_core: Sending event 19 to 0x3ffb3ec0 with 0x3ffc1a90 param  (in lv_event.c line #405)
[Trace] (0.282, +10)     lv_mem_alloc: allocating 28 bytes      (in lv_mem.c line #125)
[Trace] (0.292, +10)     lv_mem_alloc: allocated at 0x3ffb3f50  (in lv_mem.c line #151)
[Trace] (0.296, +4)      event_send_core: Sending event 34 to 0x3ffb3d40 with 0x3ffb3ec0 param  (in lv_event.c line #405)
[Trace] (0.312, +16)     event_send_core: Sending event 35 to 0x3ffb3d40 with 0x3ffb3ec0 param  (in lv_event.c line #405)
[Trace] (0.317, +5)      lv_mem_realloc: reallocating 0x3ffb3f04 with 80 size   (in lv_mem.c line #184)
[Trace] (0.332, +15)     lv_mem_realloc: allocated at 0x3ffb3f70        (in lv_mem.c line #203)
[Trace] (0.333, +1)      lv_mem_alloc: allocating 8 bytes       (in lv_mem.c line #125)
[Trace] (0.340, +7)      lv_mem_alloc: allocated at 0x3ffb3f04  (in lv_mem.c line #151)
[Trace] (0.352, +12)     event_send_core: Sending event 42 to 0x3ffb3ec0 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.358, +6)      lv_mem_alloc: allocating 12 bytes      (in lv_mem.c line #125)
[Trace] (0.372, +14)     lv_mem_alloc: allocated at 0x3ffb3f14  (in lv_mem.c line #151)
[Trace] (0.372, +0)      event_send_core: Sending event 42 to 0x3ffb3ec0 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.382, +10)     lv_mem_realloc: reallocating 0x3ffb3f14 with 18 size   (in lv_mem.c line #184)
[Trace] (0.392, +10)     lv_mem_realloc: allocated at 0x3ffb3f14        (in lv_mem.c line #203)
[Trace] (0.398, +6)      event_send_core: Sending event 42 to 0x3ffb3ec0 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.412, +14)     lv_mem_realloc: reallocating 0x3ffb3f14 with 24 size   (in lv_mem.c line #184)
[Trace] (0.417, +5)      lv_mem_realloc: allocated at 0x3ffb3f14        (in lv_mem.c line #203)
[Trace] (0.432, +15)     event_send_core: Sending event 42 to 0x3ffb3ec0 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.434, +2)      lv_mem_realloc: reallocating 0x0 with 12 size  (in lv_mem.c line #184)
[Trace] (0.442, +8)      lv_mem_realloc: allocated at 0x3ffb3f30        (in lv_mem.c line #203)
I (4420) LVGL_DEMO: Setup callback

[Info]  (0.454, +12)     lv_label_create: begin         (in lv_label.c line #75)
[Trace] (0.460, +6)      lv_obj_class_create_obj: Creating object with 0x3f409264 class on 0x3ffb3ec0 parent    (in lv_obj_class.c line #45)
[Trace] (0.472, +12)     lv_mem_alloc: allocating 60 bytes      (in lv_mem.c line #125)
[Trace] (0.479, +7)      lv_mem_alloc: allocated at 0x3ffb3fc4  (in lv_mem.c line #151)
[Trace] (0.492, +13)     lv_obj_class_create_obj: creating normal object        (in lv_obj_class.c line #81)
[Trace] (0.495, +3)      lv_mem_alloc: allocating 4 bytes       (in lv_mem.c line #125)
[Trace] (0.502, +7)      lv_mem_alloc: allocated at 0x3ffb3f40  (in lv_mem.c line #151)
[Trace] (0.513, +11)     lv_obj_constructor: begin      (in lv_obj.c line #404)
[Trace] (0.516, +3)      lv_obj_constructor: finished   (in lv_obj.c line #428)
[Trace] (0.532, +16)     lv_label_constructor: begin    (in lv_label.c line #691)
[Trace] (0.533, +1)      lv_mem_alloc: allocating 5 bytes       (in lv_mem.c line #125)
[Trace] (0.536, +3)      lv_mem_alloc: allocated at 0x3ffb4004  (in lv_mem.c line #151)
[Trace] (0.553, +17)     lv_label_constructor: finished         (in lv_label.c line #721)
[Trace] (0.553, +0)      event_send_core: Sending event 42 to 0x3ffb3fc4 with 0x0 param         (in lv_event.c line #405)
[Trace] (0.561, +8)      event_send_core: Sending event 19 to 0x3ffb3fc4 with 0x3ffc1a90 param  (in lv_event.c line #405)
[Trace] (0.572, +11)     lv_mem_alloc: allocating 28 bytes      (in lv_mem.c line #125)
[Trace] (0.578, +6)      lv_mem_alloc: allocated at 0x3ffb4014  (in lv_mem.c line #151)
[Trace] (0.592, +14)     event_send_core: Sending event 34 to 0x3ffb3ec0 with 0x3ffb3fc4 param  (in lv_event.c line #405)
I (4560) LVGL_DEMO: Event

[Trace] (0.599, +7)      event_send_core: Sending event 35 to 0x3ffb3ec0 with 0x3ffb3fc4 param  (in lv_event.c line #405)
I (4580) LVGL_DEMO: Event

[Trace] (0.613, +14)     event_send_core: Sending event 35 to 0x3ffb3d40 with 0x3ffb3fc4 param  (in lv_event.c line #405)
[Trace] (0.632, +19)     lv_mem_free: freeing 0x3ffb4004        (in lv_mem.c line #161)
[Trace] (0.632, +0)      lv_mem_alloc: allocating 7 bytes       (in lv_mem.c line #125)
[Trace] (0.637, +5)      lv_mem_alloc: allocated at 0x3ffb4004  (in lv_mem.c line #151)
[Trace] (0.672, +35)     lv_timer_handler: begin        (in lv_timer.c line #69)
[Trace] (0.672, +0)      lv_timer_exec: calling timer callback: 0x400d7408      (in lv_timer.c line #312)
0x400d7408: lv_indev_read_timer_cb at /home/martin/Documents/SW/Technical/ESP32/experiments/lvgl_test/build/../components/lvgl/lvgl/src/core/lv_indev.c:65

[Trace] (0.676, +4)      lv_indev_read_timer_cb: begin  (in lv_indev.c line #66)
[Trace] (0.692, +16)     _lv_indev_read: calling indev_read_cb  (in lv_hal_indev.c line #151)
Guru Meditation Error: Core  1 panic'ed (InstructionFetchError). Exception was unhandled.
1 Like

indev_drv needs to be static (i.e. stay in scope) in v8.0 and newer, as it is no longer just used as an initialization structure.

1 Like

Brilliant, that’s fixed it! Thank you :clap: