snooper(1) a utility for capturing data flowing between serial devices


snooper [-h ]
snooper [-b baudrate ] [-t ] [-u ] [-x ] [-n ] port0 port1


snooper passes data transparently between two serial (RS232C) devices, capturing and logging the data and occasional comments you want to insert into the logs.

It is useful for debugging or analyzing the communications protocol between two devices that would normally be connected directly to each other, e.g. a digital camera and a personal computer. By sitting in the middle (after you connect the two devices to serial ports on your Linux machine) snooper is able to capture data traveling in either direction while also passing it unmodified to the other device.

It is also possible to operate with a single serial device, using your console and keyboard as the second device.


-b baudrate
Specify baudrate to use. Default baudrate is 9600.
Include current time (in microseconds) with each write to the textual log file. See L under KEYBOARD COMMANDS, below.
Do not perform serial device locking. (This option is discouraged, and should never be necessary on a properly-configured Debian system.)
Hex display only. (Even printable characters will be displayed in hex.)
Do not forward traffic between the two ports; useful when you have a splitter cable.
Help; presents a brief synopsis of the command line options.


snooper has a set of commands that act similar to those of vi.

Note that the characters transmitted into the serial ports will not be forwarded while snooper is in command parameter input mode. You should therefore set the log file and so forth while the serial line has no activity.

Switch textual log file. You'll be asked to answer the filename of the log file.
Switch binary log file. You'll asked to answer which device to log, and the log file name. Please note that the binary log will contain the input from the perspective of snooper. Therefore, if you would like to make a log of input of line 0 (thus the output from device connected to line 0), you shold specify line 0. You should use a file that is local, or on a virtual disk, so that no characters will be lost.
add a memo line to the text log file. The memo line will contain a timestamp and the text you provide.
Reset the counter.
Change the baudrate.
Make the console act as one of the serial lines. ESC Go back to command mode. ^V Quote the next char (so that you can send ESC for example). ^X input a byte by its 2-character hexadecimal value (so that you can send any character you like). By tapping any other key, that character will be sent to the line.
Repaint the screen.

An unrecognized command character will present a brief list of the valid command characters.


snooper /dev/ttyS0 /dev/ttyS1


Jun-ichiro Itoh <[email protected]>

This man page was written by David Coe <[email protected]> for the Debian project, and may be used by others under the terms of the GNU General Purpose License, version 2 or later.