> For the complete documentation index, see [llms.txt](https://documentation.nomos-system.com/nomos-system/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.nomos-system.com/nomos-system/integrator-en/administration/usb-serial-vpn.md).

# USB Serial over VPN

With **"Expose a local USB device to VPN"** the controller makes a connected USB serial adapter available as a TCP port. This lets you remotely program bus systems whose configuration software needs direct serial access — just as if the adapter were plugged into your own computer.

{% hint style="info" %}
The share is reachable via the [Direct-VPN](/nomos-system/integrator-en/administration/vpn.md), the [Support VPN](/nomos-system/integrator-en/administration/support-vpn.md) and on the local network.
{% endhint %}

## Enable the share

1. Open the VPN page and click **"Expose a local USB device to VPN"**.
2. Select the **serial port** (the USB adapter), the **baudrate** (must match the connected hardware) and the **TCP port** (default: 3001).
3. After saving, the overview shows the state of the share: **Running**, **Connected** or **Adapter not connected**.

## Set up the client on Windows

On Windows you create a **virtual COM port** that points at the controller's TCP port — for example with the free **HW VSP3** (single-port edition, [hw-group.com](https://www.hw-group.com/software/hw-vsp3-virtual-serial-port)):

1. Download and install HW VSP3 (the "Standalone" edition).
2. On the **"Virtual Serial Port"** tab choose a free **COM port** (e.g. COM5), enter the controller's VPN IP address as **IP Address** and the configured TCP port (default: 3001) as **Port**.
3. On the **"Settings"** tab **disable "NVT enabled"** — the connection uses raw TCP.
4. Click **"Create COM"** to create the virtual COM port.

Then select the new COM port in your programming software and configure the same **baudrate** as in the share (data format 8N1).

## Set up the client on macOS / Linux

On macOS and Linux, `socat` does the job (macOS: install with `brew install socat`):

```
socat pty,link=/tmp/ttyNOMOS,raw,echo=0 tcp:<VPN-IP>:3001
```

While the command is running, `/tmp/ttyNOMOS` is available as a serial port and can be selected in the programming software.

## Notes

{% hint style="warning" %}

* **One connection at a time** — disconnect the client before another one connects.
* The **baudrate** of the share must match the connected hardware (data format 8N1).
* The USB adapter must be **plugged into** the controller — the status indicator in the overview shows the current state.
  {% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.nomos-system.com/nomos-system/integrator-en/administration/usb-serial-vpn.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
