Loading...

Energy9

Read the Huawei SUN2000 in Home Assistant Without a Custom Integration: Native Modbus YAML

Read the Huawei SUN2000 in Home Assistant Without a Custom Integration: Native Modbus YAML

Read every Huawei SUN2000 register straight into Home Assistant with the built-in modbus platform — no custom component that breaks on upgrade. A complete register-to-YAML map with the right data_type, scale, device_class and state_class for the Energy Dashboard.

Build Your Own Modbus-TCP Cache Proxy in Python: One Inverter, Many Home Assistant Clients

Build Your Own Modbus-TCP Cache Proxy in Python: One Inverter, Many Home Assistant Clients

The Huawei SUN2000 SDongle accepts only one Modbus-TCP connection. Instead of an add-on, I wrote a ~300-line asyncio caching proxy that polls the dongle once every 10s and serves the registers to Home Assistant, AC·THOR and evcc at the same time. Full MBAP parsing, register batching and an in-memory cache.

Solar Surplus into Hot Water: the AC·THOR in Home Assistant

Solar Surplus into Hot Water: the AC·THOR in Home Assistant

I wired an AC·THOR 9s into Home Assistant to dump PV surplus into the hot-water tank — then the device refused every Modbus write. Here's the read-local, write-cloud fix.

Self-Consumption & Autarky: PV Metrics in Home Assistant

Self-Consumption & Autarky: PV Metrics in Home Assistant

My inverter cloud shows self-consumption and autarky as pretty graphs. Home Assistant gives you raw counters. Here's how I rebuilt those numbers as template sensors I own.

Caching a Huawei SUN2000 over Modbus for Home Assistant

Caching a Huawei SUN2000 over Modbus for Home Assistant

My Huawei SDongle accepts exactly one Modbus connection — but Home Assistant, the AC·THOR and evcc all want the inverter's data. Here's the ~300-line asyncio cache server I wrote to feed all of them from a single quiet poll.

A Robust Modbus Proxy: Reconnect, Stale-Cache Detection and Timeouts Done Right

A Robust Modbus Proxy: Reconnect, Stale-Cache Detection and Timeouts Done Right

A failure-mode playbook for a self-built Modbus cache proxy in Home Assistant: reconnect with backoff, stale-cache detection that HA can alert on, per-batch and client timeouts, and 50 ms spacing for a slow SDongle — so the proxy never silently serves zeros after a nightly drop or firmware reboot.

Modbus Write-Through: Control Battery & Inverter Through a Caching Proxy in Home Assistant

Modbus Write-Through: Control Battery & Inverter Through a Caching Proxy in Home Assistant

A caching Modbus proxy only solves reads. Here is the write-through path: pass FC6 register writes straight to the inverter on a short-lived connection, echo the response, return proper Modbus exceptions — so you can force-charge the battery or set power limits over a single shared connection.

Control an AC·THOR 9s from Home Assistant When Modbus Writes Are Blocked: the my-PV Cloud API

Control an AC·THOR 9s from Home Assistant When Modbus Writes Are Blocked: the my-PV Cloud API

Reading the AC·THOR 9s over Modbus TCP works, but writing is blocked at the device. Here's how I switched control to the undocumented my-PV Cloud API as a Home Assistant shell_command, with tested parameters and the gotchas nobody mentions.

Detect a Failing PV String in Home Assistant: Shading, Dead Module or Loose MC4

Detect a Failing PV String in Home Assistant: Shading, Dead Module or Loose MC4

A Home Assistant automation that compares your two MPPT strings and warns you the moment one drifts — early warning for shading, a dead module or a loose MC4 connector, with a night-time false-alarm guard.