$ show JGAguado/Smart_Plant
This repository provides the complete design and firmware for the Smart Plant, an ESP32-S2 based IoT device for monitoring soil moisture, ambient temperature, humidity, and illuminance. The firmware, built on the ESPHome framework, publishes sensor data to Home Assistant via MQTT and displays it on a 2.9-inch ePaper screen. It employs a sophisticated deep-sleep architecture to achieve 40-50 days of battery life, with careful power management of sensors and MQTT connections. The architecture is centered around a highly modular ESPHome YAML configuration. The `examples/multi-device/packages/smart_plant_base.yaml` file serves as a reusable base package, enabling fleet management through YAML substitutions and overrides. This pattern allows users to deploy multiple devices with a shared core configuration, customizing only device-specific parameters like MQTT topics and sensor calibrations. The data flow is strictly sensor-to-cloud, with retained MQTT messages ensuring Home Assistant entities remain available during the device's deep sleep cycles. Beyond firmware, the repository encompasses the full hardware design. The PCB is designed in Autodesk Eagle, and the 3D-printable enclosure is provided in both FDM (STL) and SLA (STEP) formats, originating from CATIA. The project is accompanied by professional Sphinx documentation hosted on ReadTheDocs, including assembly guides, safety information, and programming instructions. Overall, this is a high-quality, production-ready IoT project. The ESPHome base package is a standout reusable component for anyone building battery-powered ESPHome sensors. The hardware designs are complete and manufacturable. While the documentation contains minor copy-paste errors (e.g., referencing 'Smart Powermeter') and mixed-language comments in the YAML configs, the core firmware architecture and hardware design are exceptionally well-executed.
The LLM identified 3 files worth highlighting for reuse:
Reusable ESPHome base package for battery-powered IoT devices. Demonstrates a sophisticated deep-sleep MQTT strategy with retained messages, sensor power switching, and fleet management via YAML substitutions. The multi-line lambda for ePaper gauge drawing is a clever workaround for ESPHome's YAML limitations. This is the core firmware logic, cleanly abstracted for multi-device deployment.
Complete Eagle CAD project for the Smart Plant PCB. Includes schematic and board layout for the ESP32-S2, sensors (AHT20, VEML7700, MAX17048), ePaper display, and battery management. A fully manufacturable hardware design.
Professional STEP AP203 parametric solid model of the enclosure bottom, exported from CATIA. Features complex B-rep geometry including toroidal fillets, cylindrical holes, and B-spline contours. Suitable for injection molding or CNC machining, demonstrating high-quality mechanical design.