Kerm is a wrapper around kermit to allow for easy management of multiple configurations. In my case I used it for a serial terminal server built around an Equinox (now Avocent I guess) SST board with tons of RJ-45 serial ports.

Download Kerm


SYNOPSIS tag # run kermit with config tag -l #list servers and ttys sorted by server -t #list servers and ttys sorted by tty


Kermit is the classic communications software that runs on many platforms. Kerm is a wrapper that helps manage the wealth of possible configuration options available.


Kerm program reads a config file at /etc/kerm.conf, which consists of several lines, one per setup: a tag name and options to pass to kermit. The order of the options does matter somewhat, and kermit will complain if something is wrong.

Example configuration:

 box0   "set line /dev/ttyQ1a1","set speed 9600","set modem type none","set carrier-watch off","set flow rts/cts"
 box1   "set line /dev/ttyQ1a2","set speed 19200","set modem type none","set carrier-watch on","set flow rts/cts"
 box2   "set line /dev/ttyQ1a3","set speed 9600","set modem type none","set carrier-watch off","set flow rts/cts","set quiet on"


Sample session on config tagged box0, which describes connection over a serial port:

 # kerm box0
 Raising Skinny Elephants Is Utterly Boring
 Connecting to /dev/ttyQ1a1, speed 9600
 Escape character: Ctrl-\ (ASCII 28, FS): enabled
 Type the escape character followed by C to get back,
 or followed by ? to see other options.
 [serial session starts here]
 [serial session ends with Ctrl-\C]


kerm 1.02 (20120416)

- Proc::ProcessTable module now optional.

- Documentation moved into perldoc.

kerm 1.01 (20070408)

- Initial release.


Kermit escape sequences can be seen by typing CTRL-\, then ?. Do a 'man kermit'. You also may want to read up on 'Raising Skinny Elephants Is Utterly Boring.'