Personal tools

Serial port Troubleshooting

From Rivendell Wiki

Jump to: navigation, search

Disclaimer: In Linux, there are many ways to do anything. That doesn't necessarily mean any one way is right, wrong, better, worse, whatever. Any examples or commands listed are for a recent SUSE distribution. If you choose to use something else, the information may have to be modified.

Before anything else, verify you have serial ports and that they are working. I check the startup files.

dmesg | grep tty
An example of what you could see:
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A 
serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A


This tells me I have two ports, ttyS0 and ttyS1. These would be equal to COM1 and COM2 for those who are used to COM ports.

You can also use the setserial command, although this did not in my experience show USB serial ports.

setserial -g /dev/ttyS*
An example of what you could see:
/dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4 
/dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3 
/dev/ttyS2, UART: unknown, Port: 0x03e8, IRQ: 4 
/dev/ttyS3, UART: unknown, Port: 0x02e8, IRQ: 3 
/dev/ttyS4, UART: unknown, Port: 0x0000, IRQ: 0 
/dev/ttyS5, UART: unknown, Port: 0x0000, IRQ: 0 
/dev/ttyS6, UART: unknown, Port: 0x0000, IRQ: 0 
/dev/ttyS7, UART: unknown, Port: 0x0000, IRQ: 0

In this case, only one serial port shows up, the first line.


interceptty

Interceptty can be a useful tool to see what is going on with a serial port in Rivendell.

You can get it at its website. Installation and usage instruction are there as well.

Here is a simple example of how to use interceptty to monitor what Rivendell is doing.

Note: I am using /dev/ttyS0 the first serial port in these examples if you are using a different port change it to that.

1) Open a konsole window 2) su root and enter the root password 3) type the following command

interceptty -s 'ispeed 19200 ospeed 19200' /dev/ttyS0 /dev/rivendell

Note: The above assumes a baud rate of 19200, change it to match your serial port's speed.

Now to send the output of Rivendell via interceptty go into RDAdmin>Mananage Hosts>Select your host>Edit>Serial Ports

Change the "tty device" to /dev/rivendell and click "Close"

Note: you must do this last step after interceptty is running as it creates the device /dev/rivendell otherwise Rivendell can not connect to it as it does not exist.

Now try running a test event in RDCatch and watch the output in the konsole window.