ola-rs
Rust client for Open Lighting Architecture RPC DMX control.
Compeller built this because REACT needs a small, reliable Rust path to OLA for DMX/ARTNet/sACN venue control. We are sharing it as a standalone utility for Rust, lighting, DJ, and show-control projects.
Current scope
- Connect to
oladover the OLA RPC TCP service, default127.0.0.1:9010. - Send
UpdateDmxDataand receiveAck. - Send fire-and-forget
StreamDmxData. - Read a universe with
GetDmx. - Blackout helper for a universe.
Not included yet
- Full OLA service API coverage.
- RDM helpers.
- Async/Tokio API.
- Fixture patching convenience APIs.
- REACT-specific code.
Quick start
= "0.1"
use OlaClient;
Examples:
Safety note
This crate can change real lighting output. Test with a dummy universe or disconnected output before using it on a live rig. Keep a physical or console-level blackout available.
Protocol attribution
This crate is informed by the public Open Lighting Architecture RPC/protobuf protocol and by Deep Symmetry's ola-clojure project.
This is a clean Rust implementation. It does not copy ola-clojure source code.
Contributing
Useful next contributions:
- More OLA RPC methods.
- Async/Tokio client.
- Tests against a local
oladfixture. - Universe discovery helpers.
- RDM helpers.
- Better examples for venue/show-control workflows.
License
MIT. See LICENSE.