You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
My question is: I have the sensor, which is connected to the ESP. This device always sends the data, when it's turned on, even if the ESP is turned off or sleeping. So, the problem is when I start to init the Serial for that device in the ESP code.
In other words - when I start the HardwareSerial.begin() it starts the uartBegin() method in the esp32-hal-uart.c it starts in it's turn the uartAttachRx() method in the same esp32-hal-uart.c and here is a problem: the uartEnableInterrupt() method starts only after the rx pinMode was changed to the INPUT, and when the data is already there - the interrupt happens immediately - and the code becomes locked inside the uartEnableInterrupt() method and it's mutex. That causes the WDT running out and Guru Meditation Error and the unwished rebooting.
So, at my local machine, I put the uartEnableInterrupt() method before the rx pinMode() setting and the bug disappeared, but I don`t exactly know if it is right to change the core's files in that way, so please, check up - maybe it will be useful.)))
[STALE_SET] This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions.
Hardware:
Description:
My question is: I have the sensor, which is connected to the ESP. This device always sends the data, when it's turned on, even if the ESP is turned off or sleeping. So, the problem is when I start to init the Serial for that device in the ESP code.
In other words - when I start the HardwareSerial.begin() it starts the uartBegin() method in the
esp32-hal-uart.c
it starts in it's turn the uartAttachRx() method in the sameesp32-hal-uart.c
and here is a problem: the uartEnableInterrupt() method starts only after the rx pinMode was changed to the INPUT, and when the data is already there - the interrupt happens immediately - and the code becomes locked inside the uartEnableInterrupt() method and it's mutex. That causes the WDT running out and Guru Meditation Error and the unwished rebooting.So, at my local machine, I put the uartEnableInterrupt() method before the rx pinMode() setting and the bug disappeared, but I don`t exactly know if it is right to change the core's files in that way, so please, check up - maybe it will be useful.)))
Sketch:
Debug Messages:
Backtrace :
The text was updated successfully, but these errors were encountered: