2 releases
0.1.1 | Sep 18, 2021 |
---|---|
0.1.0 | Sep 17, 2021 |
#15 in #ftdi
9KB
69 lines
enttecopendmx-rs
DISCLAIMER: still in testing
Rust bindings for the Enttec Open DMX USB and its FTDI D2XX Chip.
The code is roughly based on the programming examples provided by Enttec, from which I extracted the settings for the FTDI Chip. For communication with the chip the excellent crate libftd2xx as a safe wrapper of the FTDI 2DXX driver c-bindings from the libftd2xx-ffi crate.
Usage
First install the FTDI 2DXX driver
Then, simply add this crate as a dependency in your Cargo.toml
.
[dependencies]
enttecopendmx = "0.1.0"
Basic Example
This basic example sets the output of channel 1 to the maximum value of 255.
use enttecopendmx;
let mut interface = enttecopendmx::EnttecOpenDMX::new();
interface.open();
interface.set_channel(1 as usize, 255 as u8);
interface.render();
or simply run cargo run --example rgb-chase
in the root directory of the (github) repository.
Changelog
The changelog can be found in the Changelog.md file.
Issues
If you encounter any problems just open an issue, but a response may take some time.
TODO:
- restructure as a crate with example
- add
Result<T,E>
return values for all methods - publish to crates.io
- improve Documentation
- add an alternative version(s) of the
EnttecOpenDMX::new()
method, which allows to specify the interface eg. by serial number - add a cli (binary) for simplified testing
Contributing
This crate is still in an early version, so if you have suggestions for improvements regarding this crate feel free to open a pull request.
Dependencies
~7.5MB
~75K SLoC