A native macOS serial monitor built with Swift + SwiftUI.
- Dark, semi-transparent macOS-style UI.
- Serial port and baud rate selection.
Refreshserial port list.Connect / Disconnectcontrols.- Live monitor for incoming data with selectable/copyable text.
- Optional timestamps (
[HH:mm:ss]). - Optional
Auto-scroll. Clear LogandSave Logactions.- Send text to serial port (
EnterorSendbutton). - Command history in the send field (
↑ / ↓). cu.*andtty.*ports are de-duplicated (preferscu.*).
- macOS 13+
- Swift 6.2 (
swift-tools-version: 6.2) - Xcode Command Line Tools
Check toolchain:
swift --versionswift run SerialScreenswift build./scripts/build_macos_app.shAfter build:
dist/SerialScreen.app/Applications/SerialScreen.app
Launch:
open /Applications/SerialScreen.app- Click
Refresh. - Select a
Port. - Select
Baud(default is9600). - Click
Connect. - Type commands in
Sendand pressEnter.
Enter- send command.↑- previous command from history.↓- next command from history.
SerialScreen/
├── Assets/
│ └── icon.icns
├── Sources/
│ └── SerialScreen/
│ └── SerialScreen.swift
├── scripts/
│ └── build_macos_app.sh
├── Package.swift
└── README.md
- If no ports appear, verify the device connection and click
Refreshagain. - If copying to
/Applicationsfails due to permissions:
sudo cp -R "./dist/SerialScreen.app" /Applications/- If macOS blocks launching an unsigned app:
xattr -dr com.apple.quarantine /Applications/SerialScreen.app