Part 1: Lay of the Land

~60-75 min

Before we touch any hardware, we need to build a mental model. This part covers everything you need to understand before you start writing embedded Rust code. More importantly, it gives you a framework for learning anything new in the ecosystem after this workshop is over.

The Problem

Embedded Rust is exciting. The ecosystem is growing fast. But that growth creates a real challenge for learners:

  • Tutorials go stale. APIs change. Examples that worked six months ago might not compile today.
  • Examples cover one use case. A blinky tutorial shows you how to blink one LED on one pin. But what if you need a different pin? A different configuration? A different peripheral entirely?
  • Device and HAL crates are often underdocumented. Newer crates may have minimal docs, incomplete examples, or no usage guide at all. You need to know how to extract what you need from the source and API surface.
  • Copy-paste gets you started, but doesn't get you far. If you can only reproduce what someone else wrote, you're stuck the moment you need something slightly different.

Why Are You Here?

You're going to learn how to fish, not just eat fish.

After this workshop, you'll know how to:

  • Navigate the embedded Rust ecosystem
  • Read crate documentation effectively
  • Adapt examples to different boards and use cases

What I'm Going to Teach You

A mental model:

Instantiate → Configure → Control

And how to find the answers in the docs when nobody wrote a tutorial for your exact use case.

Let's start with the ecosystem.