Skip to content

esp-rs/awesome-esp-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 

Repository files navigation

Awesome ESP Rust

Awesome

A curated list of resouces for development in the Rust programming language for ESP32, ESP32-C2/C3/C6, ESP32-H2, and ESP32-S2/S3.

Table of Contents

Community

You can usually find community members (including some employees of Espressif) in the #esp-rs:matrix.org Matrix room.

Books, Blogs, and Training Materials

Video Courses and Talks

Tools

  • espup - Tool for installing and maintaining the required toolchains for developing applications in Rust for Espressif SoC's.
  • espflash - Serial flasher utility for Espressif SoCs and modules based on esptool.
  • esp-web-flash-server - WebSocket server for flashing from Visual Studio Code Remote Containers using a web browser.
  • wokwi-server - WebSocket server for running simulations in Wokwi from Visual Studio Code Remote Containers using a web browser.
  • Wokwi Simulator - Web browser simulator that supports Rust language on ESP32 chips.

Templates

Open Hardware

Projects

std

  • anemometer - Rust based anemometer incl. OTA and GPS based calibration process.
  • bluedroid - Safe wrapper for the Bluedroid Bluetooth stack.
  • Dark Sky Meter - Open Hardware low-cost night sky sensor that measures light levels as well as several ambient parameters.
  • dephy-esp32c3-rust-boilerplate - A std ESP32-C3 application boilerplate on production with tokio for async support and examples for IO, Wi-Fi provisioning, eFuse, GPIO, I2C, HTTP, BLE advertising, etc.
  • esp-clock - Clock with environment stats. Wokwi project
  • esp32-idf-nmea-example - Example of integration ESP-IDF application with Rust code as component.
  • esp32-s3-rust-axum-example - Example of running Tokio + Axum web server on the ESP32-S3.
  • esp32c3-rust-std-temperature-logger - MQTT temperature logger running on ESP32-C3.
  • esp32cam-rs - Examples of Rust on ESP32-CAM, including a fully-featured Telegram bot capable of taking pictures.
  • gateway-rs - A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet(like frp but running on ESP32).
  • mch2022-rust-app - Example that shows a nice rust screensaver in MCH2022 badge.
  • M5Stack-Cardputer - Rust support for the Cardputer, including an interactive 3d graphics demo
  • OFMon - Offline-first smart energy monitor using littlefs, Rust, ESP32, and Thingsboard. See details.
  • OxidESPark - Rust library for the Rust ESP Board that uses the ESP-IDF framework and provides tools to easily build applications that interact with the physical world.
  • rust-esp32-std-demo - A demo std binary crate for the ESP32[XX] and ESP-IDF, which connects to WiFi, Ethernet, drives a small HTTP server and draws on a LED screen.
  • rust4mch - Example to run Rust code on the MCH2022 badge.
  • rustzx-esp32 - ZX Spectrum emulator based on RustZX project.
  • self-balancing robot - Self-balancing robot using Atom Matrix and Atom Motion. See details.
  • twatch-idf-rs - Experimental firmware for the Lilygo T-Watch
  • wrover-experimental - Display line directions and departure times of public transport vehicles in Brno, CZ.
  • esp-clock-rs - A weather clock project designed based on the Slint UI framework. This is a attempt for the low-coupling cross-platform project based on the message communication mechanism, which supports running on ESP32-C3, WebBrowser(WASM), Desktop, and Android.

no_std

  • esp32c3-devkit-rust - Embassy, BLE, Sensors example - Medium complexity project demo interfacing with the peripherals available on this board, which include RGB LED, i2c IMU, Temperature & Humidity and BLE using TrouBLE and Embassy.
  • esp32 wifi tank - Building a Wifi-controlled car with Rust and ESP32
  • Beginner Rust ESP32 development - Snake - Snake game to run on an ESP32 development board with a connected OLED display and controlled with a joystick.
  • esp32-rust-nostd-temperature-logger - MQTT temperature logger running on ESP32.
  • esp32-conways-game-of-life-rs - Conway's Game of Life in Bare metal Rust for different ESP32 based boards.
  • esp32-spooky-maze-game - Bare metal Rust implementation of game for different ESP32 based boards using Bevy ECS no_std.
  • esp32-rex - Dinosaur Game written in Rust for the ESP32 with an OLED display, using the Embassy framework.
  • ps2keyboard-esp32c3 - PS/2 keyboard implementation for ESP32-C3.
  • esp32c3-ota-experiment - ESP32-C3 Bare Metal OTA Experiment.
  • SlimeVR-Rust/firmware - Async & no_std rust firmware for SlimeVR Full Body Tracking.
  • esp32s3-box-examples - Various graphic examples for ESP32-S3 Box.
  • nostd-wifi-lamp - A Wi-Fi Lamp built with an ESP32 and Neopixel Lights controllable via Wi-Fi
  • plantineers-edge - Firmware for edge devices for an Open Source Plant Monitoring solution using esp-now
  • esp32c3-no-std-async-mqtt-demo - ESP32-C3 application that measures temperature (using BMP180) and sends the results with MQTT via WiFi - everything is done asynchronously. Also available for ESP32 and ESP32-S3
  • esp32-rust-lilygo-t5-epaper - ESP32 LilyGo T5 ePaper with WiFi
  • esp32-buddy-rs - Bare metal Rust examples for ESP-Buddy board
  • bradipograph - A sloth-like drawing robot.
  • esp-examples - Some examples of esp-hal.
  • touch-n-drink - Cashless payment device for cold drinks at a German aeroclub
  • tetris - simple tetris implementation on esp32-c3 and neopixels led strip
  • esp-hub75 - driver for Hub75 Matrix RGB LED Displays supporting ESP32, ESP32-S3, and ESP32-C6
  • esp32-mipidsi-clock - A Round LCD clock with slint UI + embassy, NTP time sync via WIFI, and SVG rendering on ESP32-C6
  • esp-rust-spi-lcd-demo - A demonstration project for the ESP32-S3, showcasing a bouncing text animation on an SPI LCD.
  • Embedded Rust Programs - A curated list of Embedded Rust programs for multiple Microcontrollers including the ESP32 WROOM DA Module. Contains programs like sensor integration, TFT screen integration etc.
  • radioala-esp - a webradio streamer, based on embassy and esp-hal. It shows how to integrate with an external ppp-modem, have a stable tcp connection, spawn blocking task on second thread and reproduce music throught i2s. It also contain an alternative backend for the integrated-wifi.

License

This list is licensed under

About

Curated list of resources for ESP32 development in the Rust programming language

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors