https://github.com/kizzycode/serialserver-rust
`SerialServer` is a tiny server that bridges a serial device to UDP
https://github.com/kizzycode/serialserver-rust
Last synced: about 2 months ago
JSON representation
`SerialServer` is a tiny server that bridges a serial device to UDP
- Host: GitHub
- URL: https://github.com/kizzycode/serialserver-rust
- Owner: KizzyCode
- Created: 2022-08-12T20:48:15.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2023-10-01T13:07:55.000Z (over 1 year ago)
- Last Synced: 2025-02-06T04:44:16.422Z (3 months ago)
- Language: Rust
- Size: 26.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE BSD 2-CLAUSE.md
Awesome Lists containing this project
README
[](https://opensource.org/licenses/BSD-2-Clause)
[](https://opensource.org/licenses/MIT)
[](https://ci.appveyor.com/project/KizzyCode/serialServer-rust)
[](https://docs.rs/serial_server)
[](https://crates.io/crates/serial_server)
[](https://crates.io/crates/serial_server)
[](https://deps.rs/crate/serial_server/0.2.0)# `SerialServer`
Welcome to `SerialServer` 🎉`SerialServer` is a tiny server that bridges a serial device to UDP - incoming packets are written to the serial
device's input, and the serial device's output can be forwarded to a given UDP address.## Configuration
The server is configured via a config file. The path to the config file can be specified via:
- the `SERIALSERVER_CONFIG` environment variable
- the first command line argumentIf no path is specified, the server expects a `config.toml` in the current working directory.
### Example configuration file
An example configuration file could look like this:```toml
[serial]
# The path to the serial device
device = "/dev/tty.usbmodem21201"# The baudrate of the serial connection (defaults to 115200)
baudrate = 115200[udp]
# The UDP port to listen on for incoming packets
listen = "127.0.0.1:6666"# The UDP port to send the serial device's output to (optional; if omitted, nothing is sent)
send = "224.0.0.1:6666"# The TTL for outgoing UDP packets (defaults to 0)
ttl = 0[log]
# Whether to log the serial device's I/O to stdout (defaults to false)
enabled = true
```## Notes on security
This server acts as a simple, stupid bridge – there is *no* authentication or data validation. The primary usecase for
this server is to run within a docker container or similar with UDP on localhost as brigde to e.g. NodeRED.