Documentation
Remote serial port: RS-232 and USB-serial over IP, virtual COM port
Serial over IP is a need as old as industry itself: the maintenance console, the instrument, the test bench is over there, and the tool that must talk to it is here. The market answers with serial-to-Ethernet converter hardware or COM port redirection software. Virtual-IO, the remote serial feature of VIGIL-MESH, builds that extension into the private network itself: the machine that owns the port shares it, and authorized machines mount a virtual COM port (Windows) or a pty (Linux) — end-to-end encrypted, with no extra hardware.
The need: talking to a serial port that is not in the room
RS-232 and its descendants have not disappeared: they have dug in where they are irreplaceable. Four situations come up constantly.
The maintenance console
UPS, switch, PLC, drive: the vendor’s diagnostic interface is a serial port, and the equipment sits on another site.
The sensor or instrument
Scale, measurement unit, analyzer, GPS: the instrument streams its frames over a serial link, and the acquisition software runs somewhere else.
The test bench
The board under validation exposes its serial output on the bench, in the workshop — and the team debugging it works remotely.
The legacy equipment
The machine is thirty years old, its control software only knows COM1 through COM9, and no “network” version exists. Nobody will replace it over that.
The classic answer: a serial-to-Ethernet converter (Moxa NPort, Perle IOLAN, Digi PortServer…) installed next to the equipment, plus COM redirection software on the client workstation, plus a network path between the two — site VPN, port forwarding, or worse. It works, but it means one box to buy and maintain per port, one network setup per site, and encryption that depends on the model. Virtual-IO removes the hardware layer and the network-path question: remote serial is a function of the mesh, protected by its end-to-end encryption.
DemonstratedHow it works: one provider, several consumers
The machine that owns the physical port — the provider — shares a device path: /dev/ttyUSB0 on Linux, COM3 on Windows. Authorized machines — the consumers — then mount a local virtual port, which their applications open like any serial port.
| Role | Platform | What the machine sees |
|---|---|---|
| Provider | Windows or Linux | Its usual physical port (COM3, /dev/ttyUSB0…); its device path is what gets shared. |
| Consumer | Linux | A pseudo-terminal /dev/ttyVIGIL-<name>, usable by any software that can open a serial port. |
| Consumer | Windows | A real COM port, created by the “VIGIL Mesh Virtual Serial Port” driver (UMDF 2, user mode): visible to Device Manager and to the oldest vendor tools. |
The transport is latency-first: bytes leave in records of at most 4 KiB, with no aggregation timer that would delay a short frame. A 32 KiB credit window protects the device on the provider side; on the consumer side, a 64 KiB receive queue absorbs bursts — on overflow, lost bytes are counted and the application is never blocked. Everything travels end-to-end encrypted inside the mesh session: relays see nothing. After an outage, the session reconnects automatically and the configuration survives.
The access model separates reading from writing: the stream received from the device is fanned out to every reader (up to 8 attachments per share), but only one machine writes at a time — exclusive write, the others get “writer busy”. Several people can watch the same console while a single one types.
Step-by-step setup, from the console
Everything is configured in the web console, in a network’s Virtual-IO tab — there is no CLI. And everything is off by default: nothing is shared until an operator creates a share.
- 1Enroll the machines involvedThe provider (the machine with the port) and each consumer must be machines of the network — see enrolling a machine.
- 2Open the network's Virtual-IO tabIn the console, pick the network then the Virtual-IO tab: it lists existing shares and lets you create one.
- 3Create the shareGive it a name, pick the provider machine, enter the device path (
/dev/ttyUSB0,COM3…), then the serial parameters: baud rate, parity, flow control. - 4Assign rights, machine by machineFor each machine of the network: none, read or read-write. Access is decided machine by machine — no whole-subnet grants.
- 5SaveThe controller pushes the configuration to the nodes involved; it survives reboots and outages.
- 6Open the port on the consumerOn Linux, the share appears as
/dev/ttyVIGIL-<name>; on Windows, a COM port is created by the driver shipped with the client installer. Your tools open it like a local port.

# The share "bench" appears as a pseudo-terminal
screen /dev/ttyVIGIL-bench 115200
# or: minicom -D /dev/ttyVIGIL-bench -b 115200Real case: the instrument is 500 miles away, the tool only speaks COM
An analyzer installed on a site 500 miles away exposes its configuration and diagnostics on an RS-232 port. The vendor’s tool — a Windows executable from another era — can only open a local COM port: no TCP, no network option, nothing.
The classic options all carry a cost: ship and install a serial-to-Ethernet converter and then build it a network path (site VPN, port forwarding…); remote-control a PC on site and hope one sits near the instrument; or send someone over with a laptop.
- 1A machine on site becomes the providerA PC or Linux box already sitting near the instrument (or added for the occasion) is enrolled in the network and wired to the instrument over RS-232 or USB-serial.
- 2Create the share in the Virtual-IO tabName it “analyzer”, pick the provider machine, enter the device path, and set the baud rate and parity from the instrument’s documentation.
- 3Grant read-write to the technician's workstationTheir Windows machine gets read-write; every other machine stays at “none”. Save.
- 4The vendor tool opens the virtual COM portOn the technician’s workstation, the driver creates a real COM port: the vendor executable opens it as if the instrument were plugged into the workstation. Modem signals and break go through too (beta: a workstation in testsigning mode is required today — see “Limits and beta status”).
- 5Colleagues watch read-onlyNeed a second opinion? Grant read to another workstation: it sees the same live stream, without being able to write.
Serial parameters and supported signals
| Parameter | Supported values |
|---|---|
| Baud rate | 115,200 by default; accepted by the configuration up to 4,000,000 |
| Parity | None, even, odd |
| Flow control | None, hardware RTS/CTS, software XON/XOFF |
| Frame format | 8 data bits, 1 stop bit (the UI's setting) |
| Modem signals | DTR, RTS, CTS, DSR, CD, RI propagated between consumer and provider (RFC 2217-style semantics) |
| Break | Propagated |
Limits and beta status
Virtual-IO is included in the product; plans and quotas are detailed on the pricing page.