ESP32 PubSubClient
Posted: Wed Sep 04, 2024 6:23 pm
Hello there Espressif team!
I'm currently running a FreeRTOS application on ESP32. All the tasks are event-driven with the same priority.
I'm using the library PubSubClient to connect to AWS but I'm having a problem with the client.connect() function.
The AWS task inits the certificates and so on. At the end, it calls client.connect(). The problem is that this is a blocking function that is triggering the watchdog timer.
This is the error log:
This problem is solved by pinning the AWS task to CPU 1, but I would like to keep all related wifi stuff in CPU 0 and CPU 1 for all the other tasks.
Is there any way to reset the watchdog timer even though this is a blocking function?
Thanks a lot in advance
I'm currently running a FreeRTOS application on ESP32. All the tasks are event-driven with the same priority.
I'm using the library PubSubClient to connect to AWS but I'm having a problem with the client.connect() function.
The AWS task inits the certificates and so on. At the end, it calls client.connect(). The problem is that this is a blocking function that is triggering the watchdog timer.
This is the error log:
Code: Select all
E (12868) task_wdt: Task watchdog got triggered. The following tasks did not reset the watchdog in time:
E (12868) task_wdt: - IDLE (CPU 0)
E (12868) task_wdt: Tasks currently running:
E (12868) task_wdt: CPU 0: awsTask
E (12868) task_wdt: CPU 1: loopTask
E (12868) task_wdt: Aborting
Is there any way to reset the watchdog timer even though this is a blocking function?
Thanks a lot in advance