Open
Conversation
Draft
This comment was marked as outdated.
This comment was marked as outdated.
… topics Add the complete Interface Control Document (ICD) for the RMK protocol in rmk-types/src/protocol/rmk.rs. This defines the shared type contract between firmware and host for the new postcard-rpc based communication protocol. - Add heapless v0.9 dependency with serde support and postcard-schema heapless-v0_9 feature for schema derives on Vec-containing types - Define 30+ protocol types: ProtocolVersion, DeviceCapabilities, RmkError, LockStatus, UnlockChallenge, KeyPosition, BulkRequest, StorageResetMode, ConnectionType, BatteryStatus, MacroInfo/Data, ComboConfig, MorseConfig, ForkConfig, BehaviorConfig, topic payloads, and request wrappers - Declare 41 endpoints across System, Keymap, Encoder, Macro, Combo, Morse, Fork, Behavior, Connection, and Status categories - Declare 8 topics for layer, WPM, battery, BLE, connection, sleep, and LED - Add 29 tests: postcard serde round-trips and key hash collision detection - Add PartialEq/Eq derives to EncoderAction for protocol type compatibility - Mark Phase 1 complete in ROADMAP.md
…types Derive `postcard_schema::Schema` for enums (HidKeyCode, SpecialKey, KeyCode, ConsumerKey, SystemControlKey) and add manual Schema impls for bitfield structs (ModifierCombination, LedIndicator) to fix build errors after rebase. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
020d03d to
3d1e50c
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
…yload conversions Signed-off-by: Haobo Gu <haobogu@outlook.com>
…tus usage, fix wrong naming Signed-off-by: Haobo Gu <haobogu@outlook.com>
…tatus struct Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
- Fix battery_state → battery_status in rmk-types/build.rs - Add manual Schema impl for MouseButtons (bitfield struct) - Fix vial_lock → host_security in matrix.rs - Fix MatrixState::new() → MatrixState::new(ROW, COL) in keymap.rs - Remove duplicate Mutex import in ble/mod.rs - Remove unused BleStatusChangeEvent import in ble/profile.rs - Apply rustfmt formatting Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
d050d60 to
2e52e36
Compare
…::action Signed-off-by: Haobo Gu <haobogu@outlook.com>
8e5756f to
7f973f6
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Deploying rmk-rs with
|
| Latest commit: |
43b0a50
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://92bc1f69.rmk-4a2.pages.dev |
| Branch Preview URL: | https://feat-postcard-icd.rmk-4a2.pages.dev |
0642aca to
c0f098d
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
4a0097b to
6226baf
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
- Remove SplitStatus, use per-peripheral query (GetPeripheralStatus) - Add offset-based chunked access for MacroData (GetMacroRequest) - Add MaxSize to all protocol types (manual impls for heapless 0.9 Vec types) - Make heapless optional, gated behind rmk_protocol feature - Increase MAX_MATRIX_BITMAP_SIZE from 30 to 32 - Document BulkRequest.count row-major semantics Signed-off-by: Haobo Gu <haobogu@outlook.com>
…ransfer - Move Fork, Morse, MorsePattern, ComboConfig to rmk-types as single source of truth - Delete duplicate protocol types: ForkConfig, MorseConfig, MorsePatternEntry - Fix bug: protocol morse entries used KeyAction instead of Action - Feature-gate bulk transfer endpoints behind `bulk` feature - Rename PROTOCOL_MAX_BULK to PROTOCOL_MAX_BULK_SIZE - Separate host/firmware constant generation in build.rs - Add bulk_transfer_supported to DeviceCapabilities - Make heapless a non-optional dependency of rmk-types Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
…r sizes Signed-off-by: Haobo Gu <haobogu@outlook.com>
…figs Signed-off-by: Haobo Gu <haobogu@outlook.com>
…and morse Signed-off-by: Haobo Gu <haobogu@outlook.com>
…nd docs Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
… endpoint paths Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
Signed-off-by: Haobo Gu <haobogu@outlook.com>
f2de061 to
b22ce99
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
cce53c1 to
aa6f75b
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
aa6f75b to
4c40ef5
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
0373ec8 to
c9dca09
Compare
Size Report
|
Signed-off-by: Haobo Gu <haobogu@outlook.com>
ef019bb to
43b0a50
Compare
Signed-off-by: Haobo Gu <haobogu@outlook.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add the complete Interface Control Document (ICD) for the RMK protocol in rmk-types/src/protocol/rmk.rs. This defines the shared type contract between firmware and host for the new postcard-rpc based communication protocol.