TuEmb/esp32-mender-client

A Mender (https://mender.io/) - client for Esp32 in Rust

โ˜… 0Forks 0GitHub โ†—Compare

README

๐Ÿš€ ESP32 Mender Client in Rust ๐Ÿฆ€

A pure Rust implementation of the Mender client for the ESP32 platform, designed for secure and reliable over-the-air (OTA) firmware updates. This project combines the performance and safety of Rust with the robustness of Mender.io, bringing modern OTA solutions to embedded IoT devices.

It is build and test on esp32-c6 for now. image


๐Ÿ”ฅ Key Features

  • ๐Ÿ”’ Secure OTA Updates โ€“ Seamless integration with Mender for secure, encrypted firmware delivery.
  • โšก Lightweight & Efficient โ€“ Optimized for resource-constrained ESP32 devices.
  • ๐Ÿ”„ Automatic Rollback โ€“ Fail-safe mechanisms for firmware deployment.
  • ๐Ÿฆ€ Powered by Rust โ€“ Memory safety and performance without a garbage collector.
  • ๐Ÿ“ฆ Modular Design โ€“ Easy to extend and adapt for various embedded projects.

๐Ÿ“ Project Structure


โš™๏ธ Getting Started

Prerequisites

  • ๐Ÿ“ฆ Rust Toolchain (rustup)
  • ๐Ÿ›  ESP-IDF for Rust (espup)
  • ๐Ÿ”Œ ESP32 Development Board
  • ๐ŸŒ Mender Server Account (Hosted or Open Source)

๐Ÿš€ Installation & Setup

  1. Install Rust for ESP32
    rustup install stable
    cargo install espup
    espup install
    
    
  2. Compile and build the project
cargo build
cargo run

Contributors

0xkelvin

Issues