vsTerm — Serial Terminal for VS Code
A full-featured serial terminal extension for Visual Studio Code. Connect to serial devices directly from your editor with multi-format display, session management, and more.
Inspiration
This project is inspired by HTerm, a popular Windows serial terminal application by Tobias Hammer. vsTerm brings a similar feature set directly into VS Code, so you can monitor and communicate with serial devices without leaving your editor.
Screenshots
Terminal & Multi-Session Tabs
Connect to multiple serial devices simultaneously, each in its own tab with isolated state.

Connection Settings & Hardware Flow Control
Configure serial port, baud rate, data/stop/parity bits, and toggle DTR/RTS with real-time line status.

View incoming data simultaneously as text, HEX, decimal, and binary with per-byte cell rendering.

Sequence Highlighting
Match incoming data against saved sequences in real-time with the Seq format toggle.

Features
- Serial connection — connect to any serial port with configurable baud rate (auto-detect supported), data bits, stop bits, parity, and flow control
- Multi-format display — view incoming data as ASCII/UTF-8 text, HEX, decimal, or binary, with configurable bytes-per-line
- ANSI color support — full parsing of ANSI/VT100 escape sequences for colored terminal output
- Multi-session tabs — open multiple serial connections simultaneously, each with its own isolated state
- Sequence manager — save, organize, and send predefined byte sequences or text commands; import/export sequences to file
- Hardware flow control — manual DTR/RTS toggle with real-time CTS/DSR/DCD/RI line status display
- Timestamps — optional per-line timestamps with configurable format
- Counters — live TX/RX byte and message counters
- Logging — export terminal output to file; persistent log option to retain data across sessions
- Auto-reconnect — automatically reconnect when a device disconnects unexpectedly
- Send formats — send data as text, HEX bytes, decimal, or binary
- Configurable — font family, font size, baud rate, newline characters, and timestamp format via VS Code settings
Installation
From VSIX
code --install-extension vsterm-1.0.0.vsix
From source
git clone https://github.com/lumascet/vsTerm.git
cd vsterm-vscode
npm install
npm run compile
npx vsce package
code --install-extension vsterm-1.0.0.vsix
Usage
- Open the vsTerm panel from the bottom panel bar (look for the plug icon)
- Select a serial port and baud rate
- Click Connect
- Use the sidebar tabs to switch between Connection, Sequences, and Display settings
- Click + New Session to open additional serial connections in separate tabs
Extension Settings
| Setting |
Default |
Description |
vsterm.defaultBaudRate |
115200 |
Default baud rate for new connections |
vsterm.defaultNewline |
\r\n |
Newline character(s) appended when sending |
vsterm.fontFamily |
(editor font) |
Terminal font family |
vsterm.fontSize |
(editor size) |
Terminal font size in px |
vsterm.timestampFormat |
HH:mm:ss.SSS |
Timestamp format string |
License
Boost Software License 1.0