Course link: https://docs.rust-embedded.org/discovery/microbit/index.html
Status: 🚧 (WIP)
- Get a USB cable that is suitable not only for charging but also for data transfer. No, seriously, otherwise you will have to spend 2 hours debugging like me 😉
- To exclude problems with
$ probe-rs info
, it is better to update firmware beforehand. - If you get errors like:
➜ 05-led-roulette git:(main) ✗ cargo embed
Compiling chapter-05-led-roulette v0.1.0 (<REPO_PATH>/rust-embedded-discover-microbit-book/05-led-roulette)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.06s
Config default
Target <REPO_PATH>/target/thumbv7em-none-eabihf/debug/chapter-05-led-roulette
WARN probe_rs::flashing::loader: No loadable segments were found in the ELF file.
Error No loadable segments were found in the ELF file.
In that case, make sure that the files memory.x, build.rs,
and Embed.toml are present inside the chapter folder (e.g. 05-led-roulette
)
and .cargo/config.toml relative to the
root of the repository.
- In Cargo.toml for chapters, the
microbit
(v1) dependency is deliberately commented out andmicrobit-v2
is left so that RustRover IDE can understand which crate to take imports from. If you have the first version, you should do the opposite.
- 📝 - a link to a book page
- ✏️ - a link to an
.rs
file (code) - 🚧 - not finished
- 📝 0. Introduction
- 📝 1. Background
- 📝 2. Hardware/knowledge requirements
- 📝 3. Setting up a development environment
- 📝 4. Meet your hardware
- 📝 5. LED roulette
- 📝 6. Serial communication
- 📝 7. UART
- 📝 8. I2C
- 🚧 9. LED compass
- 🚧 10. Punch-o-meter
- 🚧 11. Snake game
- 🚧 12. What's left for you to explore