Embassy-based no_std firmware for the Seeed Studio Xiao RP2040 that masquerades as a Dell MS116 USB HID Boot Mouse. Each cycle picks a random axis from the RP2040 ROSC RANDOMBIT register, nudges +1 px, dwells 25 ms, nudges -1 px, then sleeps 4.5 minutes. After 8 hours elapsed from boot or RESET press the device idles silently (watchdog still fed) until the user taps RESET (R) again, aligning a single press with one workday. Tooling: - mise.toml pins rust 1.95.0 with explicit components and the thumbv6m-none-eabi target, plus cargo-binutils / uf2conv helpers. - justfile shell is set to "mise exec -- sh -eu -c" so every recipe uses the pinned toolchain without any shell activation. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1.5 KiB
1.5 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
0.1.0 - 2026-04-27
Added
- Initial Embassy-based
no_stdfirmware for the Seeed Studio Xiao RP2040. - USB HID Boot Mouse, masquerading as a Dell MS116 (VID
0x413c, PID0x301a). - Jiggle pattern: pick a random axis from the RP2040 ROSC
RANDOMBIT, nudge +1 px, dwell 25 ms, nudge −1 px, then sleep 4.5 minutes before the next cycle. - 8-hour workday window after boot or
RESET (R)press, then silent idle (watchdog still fed) until the next manual reset. - 8-second hardware watchdog, fed in 5-second chunks during long sleeps.
mise.tomlpinning rust 1.95.0 with explicit components (cargo,clippy,llvm-tools,rust-src,rust-std,rustc,rustfmt) and thethumbv6m-none-eabitarget, plus cargo helpers (cargo-binutils,uf2conv,cargo-watch,cargo-bloat,cargo-expand).justfilerecipes forbuild,release,check,clippy,fmt,lint,ci,bin,uf2,flash,size,bloat,expand, andbootstrap. All recipes execute insidemise exec -- sh -eu -cso the pinned toolchain is used regardless of shell activation state.