Colin Burgess <email@example.com> wrote:
You’ll probably have to end up writing your own modified serial driver,
where the status is checked in the interrupt receive routine.
You can either buy the io-char ddk or roll your own driver, based on
the resmgr framework.
Actually, I think the io-char ddk (it’s called the Character Driver
Development Kit on the website) is a free kit, rather than one that
needs to be bought.
I’d go that way, modify the incoming data stream to be one byte of
data, followed by a 2nd byte that reflects the status of CTS. That
will probably be the easiest way to go. In fact, for flexibility,
you might want to encode all of DTR, DSR, RTS, and CTS in the
byte in case you need the others at the application level, later.
Alain Achkar wrote:
We have an application that needs to check the status of the CTS line
every time a character is received in the UART of the serial port
/dev/ser1. In this application, we are not using hardware nor software
flow control, so the meaning of DTR, DSR, RTS, and CTS is
application-specific. We are talking to an RF modem which sends
information over the serial port, but assigns a special meaning to the
If a character is received from the modem when the CTS line is clear,
the character is interpreted as a DATA byte.
If a character is received from the modem when the CTS line is set, the
character is interpreted as a COMMAND byte.
We cannot change the operation of the RF modem.
We need to be able to reliably read the status of the CTS line at the
time the character was received.
Is there a guaranteed way to do it?
QNX Training Services