From v0.9 to v0.10
Use this guide to update an existing RMK v0.9 firmware project. For new projects, follow the current processor guide.
Processors
Update registration first, then choose whether to keep your existing run loop.
Remove registration mode arguments
In each keyboard.toml keyboard module, replace #[register_processor(event)] or #[register_processor(poll)] with the bare attribute:
Registration now starts the type's Runnable implementation. Check the type's #[processor] options to preserve the behavior you want:
Rust API projects that already use run_all! do not need a registration change.
Use the generated deadline loop
Existing DeadlineProcessor::deadline() and on_deadline() methods keep their names. If you want RMK to generate the run loop for an existing deadline processor:
- Add
deadlineto its#[processor]attribute. - Keep
deadline()andon_deadline()inimpl DeadlineProcessor. - Remove the old
impl Runnableand#[runnable_generated]marker.
Keep the marker and impl Runnable if your custom loop is still needed. The inactivity example shows a complete processor with the generated loop.