CMSIS-Driver icon indicating copy to clipboard operation
CMSIS-Driver copied to clipboard

Event flags may not be reset [ESP32]

Open xennex22 opened this issue 2 years ago • 0 comments

Wifi_Wait uses osEventFlagsWait to wait for input. The flags are set in AT_Notify based on the received data.

The problem I have is that if there is a timeout in osEventFlagsWait and then the data arrives later, the event flags get set by AT_Notify. And then the next call to Wifi_Wait returns immediately because the flags are already set, but the data is not valid. Then all the send/receive gets out of sync and the only fix it to restart the driver.

The solution is to explicitly clear the event flags in CmdSend using osEventFlagsClear before the command the transmitted.

xennex22 avatar May 02 '22 19:05 xennex22