2024-05-02 09:28 AM
Hello,
I'm managing a Wifi modem using one of the USARTs of the STM32L475.
Modem is working fine when sending and receiving AT commands and data, but I'm not able to receive URC's.
I only receive URC's when they come 'together' (very close) to the answer of a AT command.
But if do not receive any URC when micro is not asking nothing: in this case, micro has RX IRQ activated (HAL_UART_Receive_IT(...)), and micro enters into the HAL_UART_RxCpltCallback when receiving data, but no URC is received --> The only character received at this time is either 0x0A or 0x0D.
Any suggestion in managing URCs?
Regards
Solved! Go to Solution.
2024-05-09 11:17 PM
Already solved: it was a problem related to UART characters reception treatment in my interrupt rutine.
Regards.
2024-05-02 09:38 AM - edited 2024-05-02 09:45 AM
"URCs" as in "Unsolicited Result Codes" ?
@dtarrago wrote:I only receive URC's when they come 'together' (very close) to the answer of a AT command.
Does your STM32 "sleep" - so that it's not ready for anything coming in ?
Addendum:
@dtarrago wrote:The only character received at this time is either 0x0A or 0x0D.
A URC will begin with a CRLF lead-in - is your code seeing that as the end of a message, instead of waiting for the rest of the URC ... ?
:thinking_face:
2024-05-02 10:06 AM
Receive data into a FIFO / Ring Buffer, and process periodically?
2024-05-09 11:17 PM
Already solved: it was a problem related to UART characters reception treatment in my interrupt rutine.
Regards.
2024-05-10 01:12 AM
That's good - so please mark this as solved.
It would be helpful for future readers if you could describe what was wrong, and how you found it ...