20 releases
0.4.11 | Sep 30, 2024 |
---|---|
0.4.9 | Jul 9, 2024 |
0.4.6 | Feb 8, 2024 |
0.2.4 | Dec 30, 2023 |
#396 in Hardware support
220KB
3.5K
SLoC
Dygma Focus API (Rust)
About
This crate is a Rust implementation of the Dygma Focus API.
Make sure to not have Bazecor running and connected while trying to communicate with your keyboard.
Usage
Cargo.toml
[dependencies]
anyhow = "1.0"
dygma_focus = { version = "0.4", default-features = false, features = ["is_async"] }
tokio = { version = "1", features = ["full"] }
You can set the features to is_async
or is_sync
depending on your use case, default is is_async
.
src/main.rs
use anyhow::Result;
use dygma_focus::prelude::*;
#[tokio::main]
async fn main() -> Result<()> {
// Open the first device found and declare as mutable
// Other constructors are under Focus::new_*
let mut focus = Focus::new_first_available()?;
// Here is an example method, most have a get and set method
// There are also other methods for triggering macros or switching layers for example
println!("version: {}", &focus.version().await?);
Ok(())
}
Projects using this crate
Dependencies
~135MB
~2M SLoC