This is Ferrous Systems' Embedded Rust on Espressif training material. It is divided into two workshops: introductory and advanced. The introductory trail will introduce you to basics of embedded development and how to make the embedded board interact with the outside world - reacting to commands and sending sensor data.
The advanced course takes it from there to dive deeper into topics like interrupt handling, low-level peripheral access and writing your own drivers.
You can join the esp-rs community on Matrix for all technical questions and issues! The community is open to everyone.
The board design and images, pin layout and schematics can be also found in this repository.
If you subscribed to one of the trainings, a board will be provided to you directly by Espressif. Some exercises also require wireless internet access.
Our focus lies primarily on the ESP32-C3 platform, a RISC-V based microcontroller with strong IoT capabilities, facilitated by integrated Wi-Fi and Bluetooth 5 (LE) functionality as well as large RAM + flash size for sophisticated applications. A substantial amount of this course is also applicable for Xtensa the other architecture Espressif uses, in particular the ESP32-S3. For low-level access the general principles apply as well, but actual hardware access will differ in various ways - refer to the technical reference manuals (C3, S3) or other available technical documents as needed.
Basic Rust like The Rust Book Chapters 1 - 6, Chapter 4 Ownership does not need to be fully understood.
It is possible to follow the intro part with ESP32-C3-DevKitC-02 but we do not recommend it. It is inherently easier to follow the training when using the same hardware.