Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Development Environment

DevContainer

DevContainer support coming in #13. DevContainers do not support USB passthrough (outside of Linux), so you’ll need to follow the local install directions if you wish to develop firmware.

Local Install

Linux and MacOS are officially supported development platforms. See the Windows section for tips on attempting to develop using Windows.

Install the following tools:

ToolPurposeInstallation Method
rustcargo (package manager), rustc (compiler), rust-analyzer (language server)https://rustup.rs/
justtask runnerhttps://just.systems/man/en/introduction.html
uvpython package and project managerhttps://docs.astral.sh/uv/getting-started/installation/
nodebuild / run configuration webpage via typescript, vite, and sveltehttps://nodejs.org/en/download
probe-rsflash and debug embedded systemshttps://probe.rs/docs/getting-started/installation/
wasm-packused for TS - rust interopcargo install wasm-pack
md-bookdocumentation generatorhttps://rust-lang.github.io/mdBook/guide/installation.html

Windows

The easiest way to develop on Windows is to install a Linux partition and dual boot. Check out of one the many guides online.

You can develop without dual booting using WSL2. WSL2 cannot directly communicate with USB devices, so check out this guide for a work around.