Skip to main content

A sample Home Energy Managment System based on Home-Assistant

Project description

.. raw:: html


OpenHomeSystem

OpenHEMS

A simple Home Energy Management System

Licence Python Version Read the Docs PyPI - Status

GitHub release Workflow tests CodeCov status Home-Assistant add-on


If you like this work please consider buying a coffee ;-)

Buy Me A Coffee

Presentation

This software is an Open-Source Home Energy Management System based on Home-Assistant installation. It all run locally witch is good for privacy and is customizable. It will launch heavy consumption appliance at the best time.

This software is usefull to get an as smart as possible management of power consumption and production. This should lead to cost reduction.

  • If you have a solar panel with battery, it will allow you to have smaller battery (witch is the most expensive part).

  • If you have a public power grid source with variable cost, it will allow you to consume when it's lower cost.

Warning : This software is under activ developpment and is used on production but remain at early developpment. All contribution to the software are welcome. Please contact contact@openhomesystem.com for any questions.

Overview

You could insert it in Home-Assistant like this.

Screenshot

And here we ask the "voiture" to start for 2 hours (Here configured in french).

Screenshot configured

Features

:white_check_mark: Easy installation and UI configuration with HTML pages
:white_check_mark: Support multiple off-peak time-slots and even variable time-slots and cost (RTE Tempo contract).
:white_check_mark: Usefull if you don't have solar panel but only a contract with off-peak.
:white_check_mark: Support solar panel management with EMHASS using AI
:white_check_mark: Support basic solar panel management without AI for no sell or no buy strategy.
:white_check_mark: Home-Assistant widget to schedule devices (washing-machine, charging car... )
:white_check_mark: Time-out for scheduled devices (to force run even if not good to get ready on time).
:white_check_mark: Set the appliance to run automatically until X
:white_check_mark: Set priority handling between multiple appliances
:white_check_mark: Always check maximum capacities to avoid black-out\

We are expected to add soon the following features. We need beta-tester for those features. If you are interested, please contact us.

:x: Variable switch support (like solar router, wall-box)
:x: Works with hybrid and standard inverters\

What OpenHEMS is not.

:warning: It will never guarantee a reaction time due to the performance of the home automation network and OpenHEMS (the worst is WiFi).
:warning: Due to the licence, we do not garentee there is no bugs or problems. For garentee like this please contact us for a comercial support.\

Prerequisites

  • Controlable devices:

    • devices witch start on plug like electric-car or old washing machine.

    • connected devices like washing-machine.

  • Advantages to delay some consumption. Depending on your electric source (Contract with offpeak hours, solar panels).

  • A Linux based server, connected to home network, with a recent Python installation.

  • And some software skills...

  • More prerequisites, for installation are detailed on installation's documentation.

Install this software

It is integrate to Home-Assistant as an add-on on HAOS. Please in addon-modules add a store url "https://github.com/abriotde/openhems-addon". Then refresh the store annd click to add OpenHEMS.

Once install, you have to configure it. Open the "web interface" and choice "parameters" in the menu. There is a video, in French, to explain how to install and configure OpenHEMS on Youtube. You can to read the documentation (RTFM) the documentation or see example in config/openhems.yaml or tests/data/*.yaml or src/openhems/data/openhems_default.yaml. Please contact us if you have problems.

Once configured, you will add a tile in your Home-Asssitant dashboard. Add a web-page tile. To know the url, open the "web interface" of OpenHEMS and copy the URL and add "/?n=1" at end. You will obtain something like "http://192.168.1.202:8000/?n=1". You should just change "192.168.1.202" part.

Additional documentation

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openhems-0.3.2.2.tar.gz (762.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openhems-0.3.2.2-py3-none-any.whl (786.8 kB view details)

Uploaded Python 3

File details

Details for the file openhems-0.3.2.2.tar.gz.

File metadata

  • Download URL: openhems-0.3.2.2.tar.gz
  • Upload date:
  • Size: 762.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for openhems-0.3.2.2.tar.gz
Algorithm Hash digest
SHA256 3744e26a87d2ab8669edc9f06583509527c1b655443729de1a75a3e651b37c89
MD5 ede5e8de85bac1966a6c1ed7ec1705d9
BLAKE2b-256 fd59239610784fd0e0570adee1b894e8a5a2c5b762394c50e8c306269f229545

See more details on using hashes here.

File details

Details for the file openhems-0.3.2.2-py3-none-any.whl.

File metadata

  • Download URL: openhems-0.3.2.2-py3-none-any.whl
  • Upload date:
  • Size: 786.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for openhems-0.3.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a9abaef5202515c26fb870fb183d1066a36a88561d02a86dfa89918a06afedba
MD5 e9bceab50ab1cce53f9bde9d7bbec98c
BLAKE2b-256 58683b7ff6eaf6c2e9337f280877236cb9d3078afc1e59ee83f913055ca46543

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page