This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How is the RTS-pin controlled in UART with flowcontrol

I am using a nrf52832 to communicate via UART to a GSM module (AT commands).

I have setup the device with a baud rate of 9600 and using HW flowcontrol. The nrf52 is doing other stuff at the same time such as communicating via bluetooth.

The problem occurs when the AT commands gets longer. After the nrf52 has send its command it sets the RTS pin and the GSM module can't send its response. The pin isn't cleared until the nrf52 sends a new command. See the picture below (0 is TX, 1 is RX, 2 is CTS, 3 is RTS).

image description

I know the pin is supposed to be set when the softdevice does something, but in what other cases is it set, and what might cause it in this case?

edit: Accidently wrote spi instead of uart

edit: Thanks for the insight guys. It helped me solve the problem. In my case I had a breakpoint in a different part of the code that sometimes triggered. This of course stopped the processor and the rx fifo would fill up.

Related