Skip to content

uudecode/esp32-watering-rust

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ESP32 Watering System (Rust + ESP-IDF)

This is a Rust-based firmware project for an automatic watering system using an ESP32 microcontroller. It uses an RTC (DS3231) and an I2C LCD display (HD44780) to display current date/time and control a water pump on schedule or via a button press.

Features

  • Scheduled automatic watering (e.g., every day at 10:00)
  • Manual watering via button
  • LCD display showing date, time, and pump state
  • Watchdog timer to reset on software hang
  • Built with esp-idf-hal and esp-idf-svc

Requirements

  • Rust toolchain for ESP32 installed via espup
  • just command runner
  • espflash for flashing firmware to ESP32

Setup

  1. Install Rust and ESP32 support:

    curl -sSL https://github.com/esp-rs/espup/releases/latest/download/espup-init.sh | bash
    source $HOME/export-esp.sh
  2. Install required tools:

    cargo install just espflash

Usage

List available ports and available commands

just

Build the firmware

just build

Flash the firmware

just build flash PORT='/dev/ttyUSBXX'

About

hydrating my plants with Rust power

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published