S-Jinn

Serial Communications Jinni

Command Reference
Examples
Sample Scripts
Sjinn Project Page

SourceForge Logo

Overview


What is S-Jinn?

S-Jinn is a free, lightweight, open-source Linux application written in C. It is a simple command-line tool designed for sending & receiving data from PC controlled TIA/EIA-232 (RS-232) test, measurement, and control devices.

Depending on your application you may be able to use stty or C-Kermit, but I believe you will find that S-Jinn is easier-to-use, more intuitive, and more concise in the area of command-line and/or scripted RS-232 data acquisition and control.

Popular Linux communications packages like Minicom will also communicate with RS-232 devices, but they are better suited to modems, computers, network devices, etc. They typically lack support for all combinations of UART communication settings required by many of the RS-232 test, measurement, and control devices on the market.

Most communications packages also lack command-line support. Some provide scripting languages, but S-Jinn frees you from application-specific languages. S-Jinn simply directs the data to STDOUT where you can display it, pipe it, and/or redirect it to be processed by your favorite Unix shell and/or scripting language regardless of whether you prefer Bash, Python, Perl, Expect, or you name it.

Other S-Jinn features include the ability to:

  • Control RS-232 DTR and RTS lines from the command-line
  • Display DTR, RTS, CTS & DSR status
  • Send control characters (including the NULL character)
  • Send values in hex
  • Specify read length
  • Set programable delay times for both send & read.
  • Support for virutally all baud rates, parity, and data lengths found in standard PC UARTS
  • Output Formatting: ASCII, hex, ASCII-over-hex, wrap text, truncate lines, supress trailing line feeds

What S-Jinn Is Not

It is not designed to be used for serial communications with modems or for use as a terminal emulator. There are a large number of free open-source applications available that are much better suited for that. Rather S-Jinn is written to work with RS-232 based data acquisition equipment such as: Multimeters, A/D modules , D/A modules, digital inidicators, gauge multiplexers, temperature sensors, humidity sensors, etc.