AnsweredAssumed Answered

Timeouts in LPUART with FreeRTOS

Question asked by Andrew Walsh on Jan 31, 2019
Latest reply on Feb 18, 2019 by Daniel Chen



I'm currently planning to use the LPUART FreeRTOS driver (fsl_lpuart_freertos.*) from the MCUXpresso SDK, but I've noticed that it is not possible to specify a timeout. This appears to be the case in 2.5.0, which I think is the latest (dated 11th Jan 2019).


For example, inside the function LPUART_RTOS_Send(), there is a call to LPUART_TransferSendNonBlocking(), followed by a call to the FreeRTOS xEventGroupWaitBits(), which is as I might expect. The problem, however, is that a hardcoded value, portMAX_DELAY is passed for the parameter xTicksToWait, which I think means it will wait forever.


Would NXP consider modifying the SDK, providing an extra parameter to LPUART_RTOS_Send() which would allow this wait time to be specified? If xEventGroupWaitBits() then returns with no event bits set, LPUART_RTOS_Send() would call LPUART_TransferAbortSend(), perhaps?

If this change was made, I think similar modifications would also be needed in LPUART_RTOS_Receive().


Many Thanks,