OPENDTU READS YOUR BALCONY SOLAR INVERTER DIRECTLY, SO THE DATA NEVER LEAVES YOUR HOUSE

Your panels report to the manufacturer's cloud by default; this small ESP32 radio board takes that data back.

by tbnobody

FULL CAD BOM FIRMWARE DOCS

EnergyHome

Built withESP32

difficulty
●●●○○
time
an evening
license
GPL-2.0
repo
repo ACTIVE2,191 stars
1
Jump to section

COMPAREE VERDICT

OpenDTU replaces the manufacturer's gateway box so your balcony solar data stays on your own network. It speaks the inverter's own radio protocol (Hoymiles HM, HMS and HMT, plus some TSUN, Solenso and E-Star models) and serves a local web app, publishes to MQTT with Home Assistant auto-discovery, and exposes a Prometheus endpoint. The parts are an ESP32 plus the right radio module, or a ready-made third-party board. The single biggest trap is buying the wrong radio chip: the HM series uses an NRF24L01+, the HMS and HMT series need a CMT2300A, and the wrong one will never hear the inverter. Once running, the data is yours: per-inverter production, charts, and power limiting through the web UI and API, which matters where feed-in is capped. The most likely weekend-wrecker is radio reception and power: move the board closer or adjust the transmit power, use a decent USB supply, and remember the inverter is silent at night. The repository is actively maintained, the documentation is detailed, and the GPL-2.0 licence permits commercial use, so this is a solid pick if your inverter is on the list.

GOOD TO KNOW

  • —GPL-2.0 license permits commercial use.
  • —Firmware repository includes full source, flashing instructions, wiring diagrams and a detailed hardware compatibility list.
  • —The firmware repo has no Gerbers of its own, but the documentation links community PCB layouts and ready-made boards (OpenDTU Breakoutboard, OpenDTU Fusion) as well as printable cases; or hand-wire an ESP32 to the radio module.
  • —The radio protocol was reverse-engineered and works with Hoymiles HM, HMS and HMT inverters and some TSUN TSOL, Solenso and E-Star HERF models; if your inverter is not on the list, this will not work.
  • —Documentation is thorough for building and flashing, lighter on troubleshooting radio range issues.
  • —Active development: commits as recent as September 2026, about 2,200 stars.

Parts to buy

2 items

From our check of the build. Exact quantities and part numbers are in the creator’s BOM.

  • ESP32 board and the right radio moduleFind
  • Small capacitor and wiresFind

BUILDS OF THE WEEK

Five open-source builds worth your weekend, every week.

Checked like this one: what’s really in the repo, what it costs, how hard it is. One email, unsubscribe anytime.

Can I build this?

Printnothing required
BuyAn ESP32 board and the right radio module (NRF24L01+ for HM series, CMT2300A for HMS/HMT), a small capacitor and wires, or a ready-made board such as the OpenDTU Breakoutboard kit or OpenDTU Fusion.
Toolssoldering iron, wire, USB cable for flashing; web browser for the flash tool
Skillsbasic soldering, reading a pinout diagram, and ability to identify your inverter model — if you buy the wrong radio chip the board will not hear anything
Timeone evening for soldering and flashing, plus however long it takes to find a spot with good radio line-of-sight to the inverter
CostLow band: an ESP32 and a radio module are inexpensive parts; ready-made boards cost more.
SafetyNo mains wiring involved — the board talks to the inverter over its own radio link. Ordinary electronics care.

Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.

Videos

Open-DTU für Null Einspeisung installieren & vorbereiten (Alex Kly, in German)

No official YouTube channel or build video from the project author. Community walkthroughs exist but are not linked in the repository.

More builds like this

All projects

Gallery

Start here

Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.

  1. 1.Check the supported hardware list in the docs to confirm your inverter model is compatible(HM series needs NRF24L01+, HMS/HMT needs CMT2300A — buying the wrong radio is the most common mistake)
  2. 2.Order parts or a ready-made board (see the hardware and 3rd party sections of the docs)(Self-building from an ESP32 and a radio module is the cheapest route; the docs also list ready-made boards and kits from third parties.)
  3. 3.Follow the pinout diagram and solder the radio module to the ESP32(If your supply or cable is weak, add a 10 µF capacitor directly at the NRF24L01+ power pins, as the troubleshooting guide suggests.)
  4. 4.Flash the firmware using the web installer(No local toolchain required, the flashing is browser-based)

Resources

Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.

KNOWN ISSUES

  • Buying the wrong radio module for your inverter series — HM uses NRF24L01+, HMS and HMT need CMT2300A, and the board will not complain if you flash with the wrong one, it just will never hear anything.
  • NRF24L01+ has short range and poor wall penetration — if the board and inverter are separated by concrete or metal you may get no signal at all, and the only fix is moving the board or adding an external antenna.
  • Weak power causes flaky behaviour. The troubleshooting guide suggests a 10 µF capacitor soldered directly to the NRF24L01+ power pins (mind the polarity) and a 1 A or better USB supply; the FAQ adds a 100 µF capacitor between VCC and GND if the ESP32 resets when Wi-Fi or the radio switches on.
  • Assuming the manufacturer's DTU can run alongside OpenDTU — both gateways talk to the inverter on the same channel and will interfere, so you have to pick one.
  • Expecting instant Home Assistant discovery without enabling MQTT in the OpenDTU settings — auto-discovery relies on MQTT being configured first.

Can I run this alongside the manufacturer's DTU?

OpenDTU is designed to replace the original DTU, not run beside it. Plan on using one or the other.

Which radio module do I need?

HM series inverters need an NRF24L01+. HMS and HMT series need a CMT2300A. If you buy the wrong one, the board will flash and boot but never hear the inverter.

Does this work with my inverter?

Hoymiles HM, HMS and HMT inverters plus a number of TSUN TSOL, Solenso and E-Star HERF models are supported. Check your exact model in the inverter overview table in the docs.

How far can the radio reach?

The docs do not give a range figure. If no data arrives, move the board closer to the inverter (for example to a window facing the roof) and raise the transmit power in Settings > DTU; if it is very close (under a metre), move it further away or lower the power.

Can I control the inverter's output limit?

Yes — OpenDTU can set the inverter's power limit through its API, which is useful in regions that cap feed-in to the grid.

Community builds

No community builds yet — be the first, we feature the best ones.

Discussion1

FROM THE COMPAREE TEAM

Around 2,200 stars and the Hoymiles radio protocol was reverse-engineered to replace the cloud gateway — which inverter series would you point this at first, or are you already running one?

CompareeTEAM2mo agoedited

Practical notes from our verification: the repository is actively maintained (commits as recently as September 2026) and the documentation at opendtu.solar is detailed for building and flashing. The single most common trap is buying the wrong radio: the HM series needs an NRF24L01+ module, while the HMS and HMT series need a CMT2300A, so check your exact model in the inverter overview table before ordering. The docs also warn that radio modules vary in quality and recommend buying from a trusted source with returns. One troubleshooting tip worth knowing: the inverter switches off completely at night, so if you assemble OpenDTU in the evening, wait until the next day before deciding it does not work. The README links no official video; the good walkthroughs are community-made. Correction (4 October 2026): we re-checked this page line by line against the project's own repository, documentation and videos, and fixed errors in earlier versions.

tbnobody

tbnobody started OpenDTU in 2022 out of a Mikrocontroller.net community discussion where the Hoymiles radio protocol was reverse-engineered, with the goal of replacing the manufacturer's cloud-connected DTU. The firmware now also supports some TSUN, Solenso and E-Star inverters.

GitHub

Star the project on GitHub

DISCLAIMER

  • Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
  • Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
  • Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.