Empowered by the Ecosystem
Learning Embedded Rust with uFerris
Rust Week 2026 · May 18 · Utrecht, Netherlands
This workshop takes a different approach to learning embedded development. Instead of walking you through peripheral configurations step by step, we'll teach you how to teach yourself — by navigating the embedded Rust ecosystem, reading documentation effectively, and adapting existing examples to your own needs.
What You'll Learn
By the end of this workshop, you will be able to:
- Navigate the embedded Rust ecosystem — find the right crates, understand the abstraction layers, and know where to look for answers
- Set up embedded Rust projects from scratch using
esp-generate - Read embedded Rust documentation — on docs.rs, in crate source code, and in example repositories
- Apply the Create → Configure → Control pattern — a mental model that works for every peripheral, every HAL, every driver crate
- Adapt existing examples to new use cases by exploring configuration options and control methods in the documentation
How This Workshop Works
Every hands-on module follows the same workflow:
- Read — We give you a working example in the workshop repo
- Understand — You study the code and map it to the documentation
- Adapt — You modify the example to do something different by discovering new options in the docs
- Extend — Stretch goals push you to navigate unfamiliar documentation independently
The Hardware: uFerris Megalops
The uFerris Megalops Baseboard is a learning platform purpose-built for embedded Rust education. It's designed to give you a rich set of peripherals to explore without needing to wire anything up — just plug in and start coding.
What's On Board
| Component | Description | Interface |
|---|---|---|
| ESP32-C3 Xiao | RISC-V MCU with WiFi + BLE | USB-C |
| LEDs | Onboard LEDs for GPIO output | GPIO |
| Buttons | User-accessible push buttons | GPIO (with pull-up) |
| IMU (ICM-42670) | 6-axis accelerometer + gyroscope | I2C |
| Additional I2C sensors | Temperature, light, etc. | I2C |
The ESP32-C3 Xiao
The Seeed Studio XIAO ESP32-C3 is the brain of the uFerris board:
- Architecture: 32-bit RISC-V (single core, 160 MHz)
- Memory: 400 KB SRAM, 4 MB Flash
- Connectivity: WiFi 802.11 b/g/n, Bluetooth 5 (LE)
- Peripherals: GPIO, I2C, SPI, UART, ADC, PWM
- USB: Native USB-C (no external programmer needed)
- Power: USB-C powered, 3.3V logic
Why uFerris?
Most embedded workshops require you to bring your own board and spend precious time wiring up breadboard circuits. uFerris eliminates that friction:
- Zero wiring — all sensors and peripherals are pre-connected on the PCB
- Consistent setup — every participant has the same hardware, so we can focus on software
- Rich peripheral set — GPIO, I2C, and more ready to explore from minute one
- Designed for learning — pin labels, clear silk screen, and documentation all matched to the workshop exercises
Fallback: Wokwi Simulation
If you have hardware issues during the workshop, a Wokwi simulation is available. See the Wokwi Setup page for instructions. The simulation covers all core exercises (GPIO, I2C) so you won't fall behind.
Prerequisites
- Rust toolchain with
espflashinstalled (see Setup Guide) - Basic Rust knowledge: variables, functions, structs, ownership
- Curiosity about embedded systems
Workshop by Omar Hiari — The Embedded Rustacean
Rust Week 2026 · Utrecht, Netherlands