1 unstable release
Uses new Rust 2024
| 0.0.1 | Dec 2, 2025 |
|---|
#132 in #serial
14KB
269 lines
SerialKiller 🔪
The terminal serial monitor that slays.
SerialKiller is a modern, blazing-fast, terminal-based interface (TUI) for interacting with serial ports. Whether you are debugging an Arduino, communicating with an embedded Linux device, or hacking hardware, SerialKiller provides the ruthless efficiency you need without leaving your keyboard.
✨ Features
- 🖥️ Beautiful TUI: Built with ratatui for a clean, distraction-free interface.
- ⚡ Dual Input Modes:
- Buffered Mode: Type your command, edit freely, and fire it off when you hit Enter.
- Raw Mode: Send keystrokes immediately as you type them (perfect for shell interactions).
- 👀 Multi-View Output:
- UTF-8: Standard text decoding.
- Hex Dump: (WIP) View the raw soul of your data.
- 🚀 Rust Reliability: Memory safe, fast, and cross-platform.
📦 Installation
Cargo
cargo install
# Clone the repository
git clone https://github.com/TheRealLorenz/serialkiller.git
# Navigate to the directory
cd serialkiller
# Build and run with release optimizations
cargo run --release -- /dev/ttyUSB0 -b 115200
🛠️ Usage
SerialKiller is designed to be intuitive but powerful.
Command Line Arguments
serialkiller <PORT_PATH> [-b <BAUD_RATE>]
- path: The path to the serial port (e.g., /dev/ttyUSB0 on Linux/Mac or COM3 on Windows).
- -b, --baud-rate: The baud rate to connect with (default: 9600).
Keybindings & Controls
Once inside the interface, keep your hands on the keyboard:
| Key Combination | Action | Description |
|---|---|---|
| Ctrl + C | Quit | Terminates the connection and kills the app. |
| Ctrl + R | Toggle Input | Switch between Buffered (Edit > Send) and Raw (Send chars immediately). |
| Ctrl + X | Toggle View | Switch output display between UTF-8 text and Hex dump. |
| Enter | Send | Sends the buffer (Buffered mode) or CR/LF (Raw mode). |
Dependencies
~10–24MB
~327K SLoC