#no-std #embedded #keyboard

nightly no-std kll-core

KLL state-machine implementation focused on no_std embedded/bare-metal targets

8 releases

0.1.7 Nov 29, 2022
0.1.6 Nov 29, 2022
0.1.4 Jun 5, 2022
0.1.2 May 22, 2022
0.1.0 Apr 30, 2022

#930 in Embedded development

Download history 115/week @ 2022-12-02 126/week @ 2022-12-09 85/week @ 2022-12-16 93/week @ 2022-12-23 69/week @ 2022-12-30 79/week @ 2023-01-06 77/week @ 2023-01-13 93/week @ 2023-01-20 76/week @ 2023-01-27 91/week @ 2023-02-03 60/week @ 2023-02-10 115/week @ 2023-02-17 54/week @ 2023-02-24 70/week @ 2023-03-03 40/week @ 2023-03-10 52/week @ 2023-03-17

230 downloads per month
Used in 11 crates (7 directly)

MIT/Apache

170KB
4K SLoC

kll-core

Rust docs.rs Crates.io Crates.io Crates.io

kll-core is the KLL (Kiibohd Layout Language) funcitonal state machine implementation. It is designed to be paired with the kll-compiler crate to process the generate state machine.

The main use-case for kll-core is embedded environments (no_std); however, it does work in standard environments. kll-core uses externally defined datastructures to build the state-machine so the functionality can be manipulated without having to recompile kll-core. This is especially important for embedded devices so firmware can be updated without having to change state configuration.

Usage

See kiibohd-firmware for the primary use-case.

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~1.3–2MB
~42K SLoC