7 releases (3 stable)
1.1.1 | Feb 28, 2024 |
---|---|
1.0.1 | May 11, 2023 |
0.1.3 | Mar 9, 2023 |
0.1.2 | Dec 22, 2022 |
#340 in Multimedia
Used in artnet_to_opendmx
23KB
250 lines
open_dmx
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.
Dependencies
~2MB
~44K SLoC