Solar first.
Peak under control.
energie steers your home battery and EV chargers from one small program on your own hardware. Surplus sun goes where you want it, and your quarter-hour peak stays where you set it.

A simulated house at mid-morning. The dashboard is in Dutch.
Every watt gets a job
Each control loop pushes the grid meter toward zero. You choose the order, and energie works out the rest once a second.
See the peak coming
energie projects the running quarter-hour and holds it under your monthly target, trimming the chargers before the bill notices. If that isn't enough, it sheds loads. A separate guard watches the current on each phase to protect your main breaker.

Buy when it's cheap
Day-ahead quarter-hour prices decide when the grid may charge the battery or the cars. When injection prices go negative, energie curtails your solar export so you don't pay to give power away.

Two cars, one roof
Set which of the two cars and the battery takes the sun first, and how much the grid or battery may help when clouds roll in. A passing cloud doesn't have to end a charging session.

Built to be trusted with real equipment
Software that writes to inverters should be careful by default.
Read-only until you say so
A device is never written to unless your configuration explicitly allows it.
Rehearse first
Dry-run mode reads your real devices and logs every write it would make, without sending any.
One kill switch
Stop all writes from the dashboard, the API or MQTT. The stop survives restarts.
Every write is checked
Each command is logged and verified against later readings, and a failed write raises an alarm.
Fails toward safe
Forced battery modes carry a hardware timeout, so the Solis returns to self-use by itself if energie stops.
Login enforced
energie won't start with a dashboard or MQTT broker on the network and no credentials.
Try it in a minute
The simulator runs the real control logic against a model house. Nothing outside the program is touched. This is for Linux on x86-64, and the releases page has builds for ARM, RISC-V, macOS and Windows.
curl -fsSL https://github.com/jeroentrappers/energie/releases/download/v0.1.0/energie-v0.1.0-x86_64-unknown-linux-musl.tar.gz | tar xz
cd energie-v0.1.0-*/
printf 'mode = "simulate"\nstate_dir = "./state"\n[sim]\nspeed = 60.0\n' > sim.toml
./energie --config sim.toml
# open http://127.0.0.1:8080 and watch a day go by at 60x speed
Is it for you?
energie began as the controller for one house in Belgium, and that still shows. Check that your setup fits.
- BatterySolis hybrid inverters over Modbus TCP. Others need a driver that maps onto the same control model.
- ChargersTwo slots: SmartEVSE over MQTT and a Tuya EV cable. Another brand can fill a slot with a new driver.
- Meter and solarHomeWizard P1, Omnik inverters, or any HTTP endpoint that returns JSON.
- Cars and cloudKia Connect, VW Group EU Data Act, LG ThinQ, Fluvius, forecast.solar and day-ahead prices.
- Home AssistantOptional. energie runs on its own, or shows up in Home Assistant through MQTT discovery.
- Region and languageBelgian time and capacity tariff. The dashboard is in Dutch, and the docs are in English.
- MaturityVersion 0.1, in daily use in a single home so far. Reports from other installations are very welcome.
Yours to read, run and change
Free software under the AGPL-3.0. No account with us, no subscription, and nothing phones home. Drivers for new hardware and an English dashboard would be the most welcome contributions.