• 1
    Step 1

    EnergyMe-Home

    EnergyMe-Home is an open-source energy monitoring system for home use, capable of monitoring up to 17 circuits. It integrates with any platform through REST API, MQTT, Modbus TCP, and InfluxDB.

    Built for makers and DIY enthusiasts who want to track their home's energy consumption. The hardware uses ESP32-S3 and ADE7953 energy measurement IC, while the firmware is written in C++ with PlatformIO and Arduino framework. You can build and customize it yourself — all hardware designs and software are open-source.

    Hardware

    The hardware (currently at v5) consists of both the PCB design and the components used to build the energy monitoring system.

    Key components:

    • ESP32-S3: controller of the system
    • ADE7953: single-phase energy measurement IC
    • Multiplexers: used to monitor multiple circuits at once
    • 3.5 mm jack connectors: used to easily connect current transformers

    PCB schematics and BOMs are available in the documentation/Schematics directory, while datasheets for key components are in the documentation/Components directory. Additional hardware specifications and technical details can be found in documentation/README.md.

    The project is also published on EasyEDA OSHWLab:
    https://oshwlab.com/jabrillo/multiple-channel-energy-meter

    Software

    The firmware is built with C++ using the PlatformIO ecosystem and Arduino 3.x framework, with a task-based architecture using FreeRTOS.

    Key Features:

    • Energy Monitoring with ADE7953, energy accumulation and CSV logging
    • Web Interface for monitoring and configuration
    • Token-based authentication with password protection
    • REST API, MQTT, InfluxDB, Modbus TCP integration
    • Crash recovery and firmware rollback
    • Captive portal Wi-Fi setup with mDNS
    • OTA updates with MD5 verification
    • Waveform capture and JSON export from the web UI

    For detailed architecture, implementation details, and API documentation, see source/README.md.

    Integration

    EnergyMe-Home offers multiple integration options:

    • REST API (Swagger documented)
    • MQTT
    • Modbus TCP
    • InfluxDB v1/v2 with SSL/TLS
    • Home Assistant custom integration

    Integration docs are available in the documentation folder.

    Home Assistant Integration

    EnergyMe-Home integrates with Home Assistant through a dedicated custom integration. It exposes all measurements and system information as entities. Installation and details:
    https://github.com/jibrilsharafi/homeassistant-energyme

    Getting Started

    1. Order the PCB: download design files from the Schematics folder
    2. Populate the board using the provided BOM
    3. Flash the firmware using PlatformIO
    4. Configure Wi-Fi via captive portal
    5. Access the web interface at http://energyme.local (default: admin / energyme)

    Full build instructions in documentation/README.md.

    Contributing

    Contributions are welcome. See CONTRIBUTING.md.

    License

    This project contains both software and hardware components:

    • Software: GPL-3.0 (LICENSE)
    • Hardware: CERN-OHL-P-2.0 (LICENSE-HARDWARE)