Installation and Configuration¶
Quick Start¶
- Choose your architecture (standalone, proxy, or multiple routers).
- Flash an empty ESPHome device and adopt it in Home Assistant (Step 1).
- Add the required packages: power meter + engine + regulator (a proxy needs only a power meter).
- Fill in each package
varsfrom the package documentation (Step 3). - Upload the firmware via OTA from Home Assistant (Step 4).
For a ready-made YAML, start from the standalone example or the proxy example. See Home Assistant integration for entity lists and dashboards. If something does not work after flashing, see Troubleshooting.
flowchart TD
start[Start] --> arch{Architecture?}
arch -->|One ESP near meter and load| standalone[Standalone]
arch -->|Meter far from load| proxy[Power meter proxy]
arch -->|Several loads to divert| multi[Multiple routers]
standalone --> pkgs[Pick power meter + engine + regulator]
proxy --> proxyPkgs[Proxy ESP: power meter only]
proxyPkgs --> clientPkgs[Router ESP: proxy client + engine + regulator]
multi --> pkgs
pkgs --> configure[Configure vars and flash OTA]
clientPkgs --> configure Step 1: Install and configure ESPHome firmware¶
Install ESPHome on your ESP as described in the Ready-Made Project documentation.
Select "Empty ESPHome device".
Adopt it into Home Assistant.
WiFi reconnection
Remove ap: and captive_portal:.
These can prevent the solar router from reconnecting to WiFi after a connection loss.
Step 2: Select packages¶
A solar router needs at least three packages: a power meter, a regulator, and an engine.
A proxy needs only one power meter package (activated at startup).
Step 2.1: Select a Power Meter¶
| Power meter | Description |
|---|---|
| Fronius | Power data from a Fronius inverter (tested on Gen24 Primo) |
| Home Assistant | Power data from a Home Assistant sensor |
| Shelly EM | Power data from a Shelly EM |
| Shelly EM3 Pro / Pro 3EM | Three-phase power data from a Shelly EM3 Pro / Pro 3EM |
| JSY-MK-194T | Local UART meter (no network required) |
| Proxy client | Power data from another ESPHome device over the network |
Contribute
If you are a developer and your power meter is missing from this list, see contributing.
Step 2.2: Select a Regulator¶
| Type | Regulator | Description |
|---|---|---|
| Progressive (0–100 %) | Triac | Phase-control AC dimmer |
| Progressive (0–100 %) | Solid State Relay | Burst-fire regulation |
| ON/OFF | Mechanical relay | Simple relay switching |
Contribute
If you are a developer and your regulator is missing from this list, see contributing.
Step 2.3: Add an Engine¶
| Engine | Description |
|---|---|
| 1 × dimmer | Progressive regulation for a single load |
| 1 × switch | ON/OFF regulation with start/stop thresholds |
| 1 × dimmer + bypass | Progressive regulation with bypass relay at 100 % |
| 1 × dimmer + 2 × switches | Three-channel sequential distribution |
| 1 × dimmer + 2 × switches + bypass | Three channels with bypass on the third |
See the engines overview for LED behaviour and common options.
Step 2.4: Add an Energy Counter (optional)¶
| Energy counter | Description |
|---|---|
| Theoretical | Estimates diverted energy from router level and load power |
| JSY-MK-194T | Measures diverted energy from the JSY-MK-194T |
Step 2.5: Add a Temperature Limiter (optional)¶
| Temperature limiter | Description |
|---|---|
| Home Assistant | Safety limit from an HA temperature sensor |
| DS18B20 | Safety limit from a local DS18B20 sensor |
| Fan controller | Fan cooling based on temperature |
See the temperature limiter overview.
Step 2.6: Add a Scheduler (optional)¶
| Scheduler | Description |
|---|---|
| Forced run | Force or inhibit routing during a time window |
Step 3: Configure your solar router¶
Each package is configured in the vars section of packages.
Refer to the documentation of the selected packages and add the configuration to your YAML file.
You can refer to examples for a standalone installation, a proxy-based installation, or a JSY-MK-194T setup.
More examples are available on GitHub
Step 4: Upload firmware¶
Install Solar Router on your ESP using OTA from Home Assistant.