Energy Management for Home Assistant
#
Optimize your home energy usage automatically
Let's make a better use of energy!
EMHASS is a Python module designed to optimize your home energy interfacing with Home Assistant.
๐ Quick Start ยท โ๏ธ Configuration ยท ๐ป API Reference
๐ฃ๏ธ Community ยท ๐ ๏ธ Issues ยท ๐งฉ Home Assistant Add-on
Save money by scheduling loads during low-cost tariff periods or high PV production windows using Linear Programming.
Integrate PV forecasts to make smarter decisions about when to charge your battery or run heavy appliances.
Advanced load forecasting using scikit-learn models to predict your householdโs future consumption behavior.
Manage thermal inertia for water heaters and heat pumps effectively to act as thermal energy storage.
Seamless integration. Retrieve sensor data directly from Home Assistant and publish optimized schedules back.
Run easily as a Home Assistant Add-on or a standalone Docker container.
๐ Under the Hood
The latest EMHASS core has been completely re-engineered for speed and stability.The optimization engine has been rewritten using CVXPY and vectorization. Benchmarks show optimization times are 4-5x faster (approx. 0.1s per iteration).
We have adopted HiGHS as the default: a state-of-the-art, open-source linear solver offering superior stability.
No more system-level dependencies! Because the new solver stack is bundled as Python wheels, the Docker image is lighter, and installation is more robust.
The codebase now features a modular architecture with testable helper methods. This improves maintainability and code updates reliability.
Quick overview of EMHASS

The EMHASS workflow

โค๏ธ Acknowledgements & Inspirations
We gratefully acknowledge the following projects that inspired this work or provide the critical foundations for our optimization engine:
OMEGAlpes: For the initial inspiration on energy systems modeling and linear programming formulations. Docs
CVXPY: For the powerful, convex optimization modeling language that powers our new vectorized backend. Website
HiGHS: For the high-performance, open-source linear optimization solver now standard in EMHASS. Website
skforecast: For the robust machine learning framework used in our forecasting modules. Docs