Task WDT timeout
Posted: Fri Mar 10, 2023 2:07 pm
Hi,
I'm working on a project and after some time I get this at the console:
I've decoded the backtrace with the xtensa-esp32-elf-addr2line -pfiaC -e command and found this:
The point where I hand over to esp-idf is clearly at i2c_master_cmd_begin
That line looks like this:
i2c.c:1529 is this:
Any idea why this might be happening?
I'm not using I2C from different tasks, this node is using wired ethernet via lan8720 (wifi disabled), it does udp communicaiton (tcp listeners setup but no connection attempted) also simple gpio is used, pcnt is used too.
I'm working on a project and after some time I get this at the console:
Code: Select all
(233902522) task_wdt: - IDLE (CPU 0)
(233902522) task_wdt: Tasks currently running:
(233902522) task_wdt: CPU 0: omotor
(233902522) task_wdt: CPU 1: IDLE
(233902522) task_wdt: Print CPU 0 (current core) backtrace
Backtrace: 0x400E5F57:0x3FFB1040 0x400E60E0:0x3FFB1060 0x400834C9:0x3FFB1080 0x400E60E0:0x3FFC44F0 0x400DC8A5:0x3FFC4520 0x400D46E8:0x3FFC4560 0x400D336B:0x3FFC4580 0x400D534F:0x3FFC45B0 0x400D5611:0x3FFC4610 0x4008B3DD:0x3FFC4630
Code: Select all
0x400e5f57: task_wdt_timeout_handling at C:\Users\glmne\.platformio\packages\framework-espidf\components\esp_system/task_wdt
0x400e60e0: task_wdt_isr at C:\Users\glmne\.platformio\packages\framework-espidf\components\esp_system/task_wdt.c:586
0x400834c9: _xt_lowint1 at xtensa_vectors.o:?
0x400e60e0: task_wdt_isr at C:\Users\glmne\.platformio\packages\framework-espidf\components\esp_system/task_wdt.c:586
0x400dc8a5: i2c_master_cmd_begin at C:\Users\glmne\.platformio\packages\framework-espidf\components\driver/i2c.c:1529
0x400d46e8: I2CDevice::write(unsigned char, unsigned short) at C:\git\PEspAGV-Firmware/src/i2c.cpp:100
0x400d336b: ads1115::ADS1115::read_next() at C:\git\PEspAGV-Firmware/src/devices/ads1115.cpp:113
0x400d534f: OMotor::task() at C:\git\PEspAGV-Firmware/src/omotor/omotor.cpp:512
0x400d5611: OMotor::task_wrapper(void*) at C:\git\PEspAGV-Firmware/src/omotor/omotor.h:101
0x4008b3dd: vPortTaskWrapper at C:\Users\glmne\.platformio\packages\framework-espidf\components\freertos\FreeRTOS-Kernel\portable\xtensa/port.c:151
That line looks like this:
Code: Select all
auto ret = i2c_master_cmd_begin(I2C_PORT, cmd, 50 / portTICK_PERIOD_MS);
Code: Select all
//start send commands, at most 32 bytes one time, isr handler will process the remaining commands.
i2c_master_cmd_begin_static(i2c_num, NULL);
I'm not using I2C from different tasks, this node is using wired ethernet via lan8720 (wifi disabled), it does udp communicaiton (tcp listeners setup but no connection attempted) also simple gpio is used, pcnt is used too.