
Serial over SSH
The Serial plugin has always been one of the most popular features of IO Ninja — our users love the power and simplicity it brings to the table when it comes to talking to a serial device attached to your PC. But what if this serial device is not plugged directly into a USB-to-Serial adapter on your PC?
We received a lot of requests to network-enable the Serial plugin and make it possible to control a serial device plugged in to a remote machine — such as a headless Raspberry Pi board situated somewhere on a distant site, so we did just that.
IO Ninja now comes with a dedicated tool called ioninja-hwc
for controlling the devices remotely.
From the get-go, we decided to take it a step further and allow it to control serial ports, as well.
Once ioninja-hwc
on the remote machine is accessible over SSH, you can use Serial over SSH to talk to any serial device connected to the machine — just as if it was plugged in directly to your local PC.
Everything Serial Terminal Can Do, Now Over SSH!
Serial over SSH features all the great features as the Serial plugin:
Modbus RTU
Modbus RTU (especially over RS-485) is widely used in industrial automation, so IO Ninja provides you with great tooling for it.
The Modbus Analyzer is a layer that decodes Modbus frames and adds human-readable descriptions to the log. The original data is complemented, not replaced — so nothing is lost.
The Packet Template Modbus Library helps you generate outgoing Modbus frames. Fill in the device address, function code, register/coil numbers, and other information via the property grid — and the checksums will be auto calculated.
Powerful & Beautiful Logging Engine
The Ninja Scroll logging engine is the heart of IO Ninja! It offers many unique and useful features you won't find in other serial terminals, such as interleaving binary data with informational messages for a clear timeline of events, switching between hex-view and plain-text view of binary data, a regex markup engine for highlighting data based on regular expressions, and many others!
Versatile Transmission Facilities
IO Ninja features convenient and powerful tools for preparing serial packets before transmission. We offer a plain text editor with support for C ESC-sequences to encode special characters, a modern Unicode-enabled hex editor, and a file transmit feature.
A history of recently transmitted serial packets is maintained, and you can also build your own libraries of commonly used packets — then send those packets with a mouse click!
Scriptability
With the Script Pane, you can generate serial packets programmatically, wait for and react to serial events, and automatically reply to incoming data, etc.
For more complex binary packets, you can describe the structure and methods for updating checksums or other auto-calculated fields as a Packet Template, then conveniently fill in the fields in a property grid.
Redirect Anywhere
The Session Linking engine allows you to conveniently redirect serial data over any other transport — TCP
, UDP
, SSL
, etc. Start two sessions, configure relevant parameters on each one (e.g., local adapter and port on a TCP server), then click Link Sessions
, and — Voila! From now on, all the data received on one end will be transmitted to the other.
Getting Started
This getting started guide is a condensed version of our full documentation, which we recommend reading in full.
Documentation
Resource |
---|
Serial over SSH Documentation in the IO Ninja User Manual |
Installing the Hardware Client in the IO Ninja User Manual |
See Also
Plugin | Relevance |
---|---|
![]() | A hardware sniffer for monitoring RS232, RS485, and TTL-level UART comms. |
![]() | Construct, send, receive, and analyze serial packets |
![]() | Monitor serial port activity initiated by applications on a remote machine. |