Expand description
Control RGB lighting on HID LampArray and LED Page devices on Linux.
This crate provides:
- Auto-discovery of HID RGB devices by parsing report descriptors from sysfs
- Support for HID LampArray (Usage Page 0x59) and LED Page RGB (Usage Page 0x08)
- No hardcoded vendor/product IDs — works with any compliant device
§Example
use hid_rgb_ctl::{discover_devices, DeviceKind, LampArrayDevice, LedRgbDevice};
let devices = discover_devices();
for dev in &devices {
match &dev.kind {
DeviceKind::LampArray(_) => {
let device = LampArrayDevice::new(dev);
device.set_color(255, 0, 0, 255).unwrap();
}
DeviceKind::LedRgb(_) => {
let device = LedRgbDevice::new(dev);
device.set_color(255, 0, 0, 255).unwrap();
}
}
}Re-exports§
pub use descriptor::discover_device;pub use descriptor::discover_devices;pub use descriptor::DeviceInfo;pub use descriptor::DeviceKind;pub use descriptor::LampArrayReports;pub use descriptor::LedRgbChannelInfo;pub use descriptor::ReportInfo;pub use descriptor::ReportType;pub use device::LampArrayAttributes;pub use device::LampArrayDevice;pub use device::LampAttributes;pub use device::LampColor;pub use device::LedRgbDevice;pub use error::Error;
Modules§
- descriptor
- HID report descriptor parser and device discovery.
- device
- HID RGB device control.
- error
- Error types for hid-rgb-ctl.