https://github.com/actuallytaylor/cereal
https://github.com/actuallytaylor/cereal
Last synced: about 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/actuallytaylor/cereal
- Owner: ActuallyTaylor
- Created: 2025-03-26T23:20:58.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-26T23:52:22.000Z (about 1 year ago)
- Last Synced: 2025-03-27T00:28:47.764Z (about 1 year ago)
- Language: Swift
- Size: 5.86 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Cereal 🥣
`cereal` is a terminal based Serial Console. It was written as an alternative to using `screen` for interacting with serial devices on macOS.

## Installation
`cereal` is availabe via [Homebrew](https://brew.sh). It is not currently in the main homebrew repository, but there is a [PR](https://github.com/Homebrew/homebrew-core/pull/216795) waiting approval for its addition.
```
brew tap actuallytaylor/formulae
brew update
brew install cereal-console
```
## Features
- Connect to serial devices (tty, cu, etc...).
- If no device is provided to the command, you will be able to select from a list of connected serial ports.
- Set a baud rate for the serial connection.
- If no baud rate is provided, you can select from a set of commonly used baud rates. The default is 9600
- Receive and display *utf8* data from the serial connection.
- Keystrokes are captured and sent back to the serial connection.
- Exit with ctrl + c.
- Set Connection Parity.
- Set flow control options.
- Set # of stop bits.
## Command Line Usage
```
$ cereal -h
USAGE: cereal [--version] [--device ] [--baud-rate ] [--one] [--two] [--none] [--odd] [--even] [--rts_cts] [--dtr_dsr] [--dcd]
OPTIONS:
-v, --version Print version
-d, --device Path to Serial Device.
-b, --baud-rate
Buad rate for serial connection
--one/--two # of Stop Bits for the serial connection. (default:
--one)
--none/--odd/--even Parity for the serial connection. (default: --none)
--rts_cts/--dtr_dsr/--dcd
Flow Control options (multiple options allowed)
-h, --help Show help information.
```
## TODO
1. Add keybinds to toggle RTS & DTR pins.
2. Add a view of the current state of the RTS, DTR, CTS, DSR, and DCD pins.
## Credits
- [Swift Argument Parser](https://github.com/apple/swift-argument-parser.git)
- [ANSITerminal](https://github.com/pakLebah/ANSITerminal.git)
- [ORSSerialPort](https://github.com/armadsen/ORSSerialPort)