Skip to content

feat: support RMK 0.9's keyboard.toml and config API - #13

Open
HaoboGu wants to merge 1 commit into
masterfrom
feat/rmk-0.9-api
Open

feat: support RMK 0.9's keyboard.toml and config API#13
HaoboGu wants to merge 1 commit into
masterfrom
feat/rmk-0.9-api

Conversation

@HaoboGu

@HaoboGu HaoboGu commented Aug 15, 2026

Copy link
Copy Markdown
Collaborator

Stack 1/3 — base master. Next: #14 (layout tools), then #15 (esp32h2 + version bump).

rmk-config 0.9 replaced its getter API with resolved::*, so rmkit's project-generation path has to be rewritten against it.

  • get_device_config() / get_board_config() / get_chip_model() / get_storage_config() / … → identity() / hardware() / host()
  • the controller Cargo feature was removed upstream, so stop enabling it for light pins; vial_lock is now host_lock
  • support the RMK-native Rynk protocol: rynk_enabled enables the rynk feature and disables the mutually exclusive vial
  • update the bundled sample keyboard.toml to the v0.9 schema ([layout] is physical-only now, layers moved to [keymap]); the old file also had rp2040 declared with nRF pin names
  • point template downloads at the rmk-rs org
  • README: use releases/latest install links instead of a pinned v0.0.1

rmk-config is git-pinned to the v0.9.0 prep commit (9372651) until it is published to crates.io — a git dependency cannot be published, so this must be switched back before releasing (TODO comment in Cargo.toml).

Verified: cargo build, cargo clippy --all-targets (clean), and get-chip/get-project-name against v0.9 example configs.

rmk-config 0.9 removed the old getter API in favour of resolved::*, so the
project-generation path has to be rewritten against it:

- get_device_config()/get_board_config()/get_chip_model()/... become
  identity()/hardware()/host()
- the 'controller' Cargo feature was removed upstream, so stop enabling it
  for light pins; 'vial_lock' is now 'host_lock'
- support the RMK-native Rynk protocol: rynk_enabled enables the 'rynk'
  feature and disables the mutually exclusive 'vial'
- update the bundled sample keyboard.toml to the v0.9 schema ([layout] is
  physical-only now, layers moved to [keymap])
- point template downloads at the rmk-rs org
- README: use releases/latest install links instead of a pinned v0.0.1

rmk-config is git-pinned to the v0.9.0 prep commit until it is published.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant