Skip to content

kelv1n9/SerialScreen

Repository files navigation

Serial Screen

Serial Screen UI

A native macOS serial monitor built with Swift + SwiftUI.

Features

  • Dark, semi-transparent macOS-style UI.
  • Serial port and baud rate selection.
  • Refresh serial port list.
  • Connect / Disconnect controls.
  • Live monitor for incoming data with selectable/copyable text.
  • Optional timestamps ([HH:mm:ss]).
  • Optional Auto-scroll.
  • Clear Log and Save Log actions.
  • Send text to serial port (Enter or Send button).
  • Command history in the send field (↑ / ↓).
  • cu.* and tty.* ports are de-duplicated (prefers cu.*).

Requirements

  • macOS 13+
  • Swift 6.2 (swift-tools-version: 6.2)
  • Xcode Command Line Tools

Check toolchain:

swift --version

Quick Start

swift run SerialScreen

Build

Debug build

swift build

Production .app + install to Applications

./scripts/build_macos_app.sh

After build:

  • dist/SerialScreen.app
  • /Applications/SerialScreen.app

Launch:

open /Applications/SerialScreen.app

Usage

  1. Click Refresh.
  2. Select a Port.
  3. Select Baud (default is 9600).
  4. Click Connect.
  5. Type commands in Send and press Enter.

Send Field Shortcuts

  • Enter - send command.
  • - previous command from history.
  • - next command from history.

Project Structure

SerialScreen/
├── Assets/
│   └── icon.icns
├── Sources/
│   └── SerialScreen/
│       └── SerialScreen.swift
├── scripts/
│   └── build_macos_app.sh
├── Package.swift
└── README.md

Troubleshooting

  • If no ports appear, verify the device connection and click Refresh again.
  • If copying to /Applications fails 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

About

Serial Screen is a native macOS serial monitor built with SwiftUI. It lets you quickly connect to serial devices, view live data in a clean dark interface, send commands, and save logs with timestamp and auto-scroll controls.

Resources

Stars

Watchers

Forks

Contributors