ELXSoftware

Industrial automation and IoT

ELX-Terminal

A terminal for COM ports, raw TCP and TCP through an SSH tunnel

Four kinds of connection in one window, a tab for each: serial port, TCP client, TCP server, and TCP reached through an SSH gateway. Text, hexadecimal dump and frame parsing switch on the fly and redraw from the raw history, so nothing is lost by changing your mind.

v1.0.0 Windows Free

Four connections, one window

A serial port, a TCP client, a TCP server accepting several clients at once, and TCP through an SSH gateway — each in its own tab, all open at the same time.

The serial port in full

A live list of ports with their descriptions, rates up to three megabaud, data bits, parity, stop bits, flow control, manual DTR and RTS, and BREAK. Rate and parity change on the fly without reopening the port.

An SSH tunnel without plink

Reach an address on a remote network through an SSH gateway, by password or an OpenSSH key. The session goes straight to the target over the SSH channel — a local port is a separate option, for when other programs need the same tunnel.

Text, hex and parsed frames

All three views redraw from the raw history, so switching does not lose what already arrived. Millisecond timestamps, sent and received separated by colour, and a configurable end-of-line rule.

Quick commands

A panel of buttons you can rearrange by dragging, each with a dialog that previews the exact bytes it will send. The commands you type keep a history on the up and down arrows.

The workspace comes back

Close it and open it again: the same tabs with the same properties, the same active tab, theme, macros, collapsed panels, window size and position. Nothing is reconstructed by hand.

The four connection types

TypeWhat it is for
COM portA device on a serial line or a USB adapter — controllers, meters, modules on RS-485
TCP clientA device or service that listens; with TCP_NODELAY and reconnection after a configurable pause
TCP serverSomething that connects to you; several clients at once, sending to all of them or only to the last
TCP over SSHA device on a remote network, reached through a gateway you can log into

Instead of running plink by hand

What you would otherwise type
plink -ssh -batch -P 22 -pw <password> -N -L 1824:192.168.1.226:1824 user@gateway

The SSH tab replaces that: the gateway on the left — host, user, password or key file — and the target address and port below. The panel shows the equivalent command so that the settings can be checked against something familiar.

The session itself goes to the target directly over the SSH channel; no local port is involved. “Open a local port” is a separate option that raises 127.0.0.1:<port> through the same connection when other programs must share the tunnel.

Where the password is storedIn the workspace file, in plain text. The “remember password” switch turns that off, at the cost of typing it before each connection. The host key is accepted without checking a known-hosts file, and its fingerprint is written to the session log — a changed key is at least visible.

Reading what arrives

  • Text — UTF-8, Windows-1251 or ASCII, chosen from the bar above the output.
  • Hex dump — for a protocol that is not text, or for finding the byte that is not what you expected.
  • Frame parsing — structured decoding for the supported frame format, with the fields named.
  • Timestamps to the millisecond, which is what you need to answer “did it reply within the timeout?”
  • Sent and received in different colours, with an option to echo what you send into the same stream.
The settings that matter are one click awayMode, encoding, end-of-line rule, timestamps, echo, follow-the-tail and font size live in a strip directly above the output — not in a side panel that has to be opened while a device is talking.

Sending

  • Text, or bytes written in hexadecimal.
  • A history of what you sent, on the up and down arrows.
  • A byte counter, and optional CR, LF or CRLF appended.
  • “Keep what was typed” selects the sent text instead of clearing it: Enter repeats it, typing replaces it — which is how you send the same frame twenty times with a changing byte.

At a glance

Operating system
Windows 10 and 11, 64-bit
Connections
COM port, TCP client, TCP server, TCP over SSH
Serial rate
Up to 3 000 000 baud
Views
Text (UTF-8, Windows-1251, ASCII), hex dump, parsed frames
Authentication
SSH password or OpenSSH key
Workspace
%APPDATA%, with a backup of the previous state
Built with
Flutter

Frequently asked questions

Can I keep several devices open at once?
Yes — one tab per connection, all live at the same time, each with its own settings and its own output.
Does changing the baud rate close the port?
No. Rate and parity change on the fly, which matters when you are hunting for the settings a device actually uses.
Will switching to hex lose what already arrived?
No. Every view redraws from the raw history, so you can switch after the interesting bytes have arrived.
Can other programs use the SSH tunnel?
Yes, if you enable “open a local port”. Without it the session goes straight to the target and no local port is opened at all.
Where is the workspace stored?
In %APPDATA%\ru.elxdevice\elxterminal\workspace.json, with a copy of the previous state beside it. A file that cannot be read is set aside rather than overwritten with an empty one.
Does it connect automatically on start?
Only if you ask it to. The switch is off by default: opening a COM port or dialling an SSH gateway without being told to is not something a program should do.

ELX-Terminal

A terminal for COM ports, raw TCP and TCP through an SSH tunnel

Download

Nearby programs