This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

UARTE missed ISR ENDRX or generated excess ISR RXSTARTED

[Environment]

nrf52833 chip, NCS 1.6.0

using uarte 1 with async API, baudrate 1Mbps, CONFIG_UART_1_NRF_HW_ASYNC=y and CONFIG_UART_1_NRF_HW_ASYNC_TIMER=2.

using ring buffer put in user callback.

Relate page but not answered: devzone.nordicsemi.com/f/nordic-q-a/78419/zephyr-uarte-library-missing-uart_rx_buf_released-events

[CASE]

set rx dma buffer size 20 bytes, timeout 5ms. (PS: small value to catch CASE easiler, lager value can reduce the probability of CASE but still happen.)

sent plenty of bytes to uarte1 rx, minutes later we catched a case:

6748 ENDRX events generated and handled.

6750 RXSTARTED events generated and 6749 were handled.

The No. 6750 RXSTARTED event was failed to handle while @uart_nrfx_uarte: uarte_nrfx_rx_buf_rsp() was called an return with error -16 (-EBUSY), whtich means rx_next_buf is not empty.

In other words, UARTE1 generated an excess RXSTARTED event or missed an ENDRX event.

Parents Reply Children
No Data
Related