Code cleanup
This commit is contained in:
parent
aa6ac7a0c4
commit
527d34840e
1
.gitignore
vendored
1
.gitignore
vendored
@ -6,3 +6,4 @@ rp2040_42/Cargo.lock
|
||||
rp2040_51/Cargo.lock
|
||||
*.FCBak
|
||||
rp2040/target
|
||||
rp2040/firmware.uf2
|
||||
|
||||
29
README.md
29
README.md
@ -35,14 +35,14 @@
|
||||
- 42 keys "Split" keyboard layout. 36 finger buttons and 6 thumb buttons.
|
||||
- Extreme low profile (only one pcb).
|
||||
- Cost efficient solution with one pcb and one 3D printed cover.
|
||||
- Function keys with total of three layer support (Primary + 2fn layers).
|
||||
- Status indication -
|
||||
- LED green = Normal mode
|
||||
- LED green flashing = waiting for USB enumeration
|
||||
- LED blue on = sticky lock initiated
|
||||
- LED blue flashing = sticky lock activated
|
||||
- LED red = error
|
||||
- LED red flashing = Caps Lock activated
|
||||
- Function layers provide three active maps (primary + two Fn layers) with sticky-lock support.
|
||||
- High-speed key scanning: 250 µs cadence with 2-scan press / 3-scan release debounce for sub-millisecond latency and immediate USB reporting.
|
||||
- Status indication driven by the joystick-style heartbeat model:
|
||||
- Heartbeat green while waiting for USB enumeration.
|
||||
- Solid green during normal operation; automatic heartbeat idle animation after 5 s inactivity.
|
||||
- Blue solid / flashing when sticky lock is armed / latched.
|
||||
- Red solid on firmware error, red flashing for Caps Lock.
|
||||
|
||||
|
||||
## Build environment rp2040 Zero
|
||||
|
||||
@ -101,17 +101,11 @@ Rust embedded, rp2040 HAL
|
||||
|
||||
## Features
|
||||
|
||||
- 51 keys "Split" keyboard layout. 36 finger buttons and 9 thumb buttons and 6 function buttons.
|
||||
- 51 keys "Split" keyboard layout. 36 finger buttons, 9 thumb buttons and 6 function buttons.
|
||||
- Extreme low profile (only one pcb).
|
||||
- Cost efficient solution with one pcb and one 3D printed cover.
|
||||
- Function keys with total of three layer support (Primary + 2fn layers).
|
||||
- Status indication -
|
||||
- LED green = Normal mode
|
||||
- LED green flashing = waiting for USB enumeration
|
||||
- LED blue on = sticky lock initiated
|
||||
- LED blue flashing = sticky lock activated
|
||||
- LED red = error
|
||||
- LED red flashing = Caps Lock activated
|
||||
- Function layers with the same immediate-report, low-latency scanning pipeline as the 42-key variant (primary + two Fn layers with sticky lock).
|
||||
- Status LED behaviour mirrors the joystick/42-key firmware: heartbeat during boot, idle animation after 5 s inactivity, blue indicators for sticky lock, and red for caps/error conditions.
|
||||
|
||||
## Build environment rp2040 Zero
|
||||
|
||||
@ -135,4 +129,3 @@ Rust embedded, rp2040 HAL
|
||||
- 1x PCB [Gerber files](eCAD/cmdr_mainboard_51_gerber_v1.zip)
|
||||
- 1x MCU cover (TBD)
|
||||
- 1x 6x3 Cherry MX mounting jig (optional) [STL file](mCAD/cmdr_mounting_jig-MountingJig.stl)
|
||||
|
||||
|
||||
Binary file not shown.
@ -28,7 +28,7 @@ pub mod usb {
|
||||
pub mod timers {
|
||||
pub const USB_REPORT_INTERVAL_MS: u32 = 10;
|
||||
pub const USB_TICK_INTERVAL_US: u32 = 250;
|
||||
pub const STATUS_LED_INTERVAL_MS: u32 = 4;
|
||||
pub const STATUS_LED_INTERVAL_MS: u32 = 10;
|
||||
pub const IDLE_TIMEOUT_MS: u32 = 5_000;
|
||||
}
|
||||
|
||||
|
||||
@ -109,7 +109,7 @@ impl LedEffect {
|
||||
match self {
|
||||
LedEffect::Solid => 0,
|
||||
LedEffect::Blink { period_ms } => period_ms / 2,
|
||||
LedEffect::Heartbeat { .. } => 4,
|
||||
LedEffect::Heartbeat { .. } => 10,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user