We believe that knowledge and documentation is an essential part of making embedded Rust development easier. This is why we have created knurling-books and knurling-sessions.


Knurling Books are written guides that teach general concepts of embedded systems and Rust.

We explain different protocols, provide walk-throughs on how to implement them in Rust to set up the communication between two devices. We'll give general debugging advice.

The goal is to build a huge base of sample code and guides for making different parts work, be it smaller things like LEDs, potentiometers, buzzers or more complex ones like different sensors or motors.

Knurling Books can be used as a starting point for your individual project, even if you're not using the exact same part but something similar, because we provide a guide on how to set things up.


hardware picture picture CC BY-SA 4.0 @asaaki / markentier.tech

Knurling Sessions are quarterly embedded projects that explore specific projects using generally available hardware, building full systems and components using microcontrollers, sensors, and actuators.

Knurling Sessions bring parts and concepts together to build more complex projects. Content for Knurling Sessions includes written guides, Screencasts, Video tutorials, as well as guest contributions around each quarterly project.

The first knurling-sessions project kicked off in October 2020: We built building a CO2 measuring device step by step!

Our current project is Playing minesweeper using 4 NeoTrellis boards. Before running our code on the actual hardware, we're exploring simulation as a tool for embedded development without the target hardware present. For more details, read the announcement on our blog.

A new lesson is uploaded every other week, but you can follow at your own pace. You're always welcome to join!

The knurling-Sessions and knurling-books material is available to all knurling-rs sponsors as soon as it is published.

Completed Sessions

All material is released publicly four months after it has been made available to our sponsors.

CO2 Measuring device

Build a visual indicator for air quality and an acoustic alarm. Start an embedded program from scratch, write a driver for the sensor, read the sensor output in a terminal and add an ePaper display to the setup.

Take the challenge!