open_dmx

Crates.ioopen_dmx
lib.rsopen_dmx
version1.1.1
sourcesrc
created_at2022-12-08 01:40:34.651491
updated_at2024-02-28 12:24:41.888709
descriptionA wrapper around the serialport library to send DMX data over a serial port
homepage
repositoryhttps://github.com/daveiator/open-dmx
max_upload_size
id732295
size32,456
David Bühler (daveiator)

documentation

README

open_dmx   Latest Release Documentation License

A wrapper around the serialport library to send DMX data over a serial port via the Open-DMX(RS-485) protocol


Basic Setup

use open_dmx::DMXSerial;

fn main() {
    let mut dmx = DMXSerial::open("COM3").unwrap();
    dmx.set_channels([255; 512]);
    dmx.set_channel(1, 0).unwrap();
}

DMXSerial updates its channels automatically to the Serial Port for a stable connection. For strobe effects DMXSerial.update() can be used, which blocks the main thread until a packet is sent over serial.

The automatic sending can also be disabled with DMXSerial::open_sync(path) or DMXSerial.set_sync()

Works with COM-Ports on Windows and TTYPorts on Unix systems.

Dependencies

For linux pkg-config and libudev are required.

Commit count: 14

cargo fmt