metronome/rust/pm-grid
Me Here 47ffb46aa2 pm-grid: fix dropped notes in chords (queue USB-MIDI packets)
The bulk MIDI endpoint holds one 4-byte packet until the host reads it (~once
per USB frame), so calling send_bytes twice for simultaneous lane hits dropped
the 2nd note (WouldBlock, silently ignored). Queue note-ons in a VecDeque and
drain one-per-poll, keeping the rest for the next iteration — chords now play in
full (staggered ~1ms, imperceptible) instead of all-but-one.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-03 15:31:07 -05:00
..
.cargo pm-grid: USB-MIDI audio + make Rust the shipping Grid firmware 2026-06-03 15:19:38 -05:00
src pm-grid: fix dropped notes in chords (queue USB-MIDI packets) 2026-06-03 15:31:07 -05:00
.gitignore Add pm-grid: Rust firmware for the Pico Scroll Pack (RP2040) 2026-06-03 07:22:48 -05:00
build.rs Add pm-grid: Rust firmware for the Pico Scroll Pack (RP2040) 2026-06-03 07:22:48 -05:00
build.sh pm-grid: USB-MIDI audio + make Rust the shipping Grid firmware 2026-06-03 15:19:38 -05:00
Cargo.toml pm-grid: USB-MIDI audio + make Rust the shipping Grid firmware 2026-06-03 15:19:38 -05:00
memory.x Add pm-grid: Rust firmware for the Pico Scroll Pack (RP2040) 2026-06-03 07:22:48 -05:00
uf2.py Add pm-grid: Rust firmware for the Pico Scroll Pack (RP2040) 2026-06-03 07:22:48 -05:00