Skip to main content

Tool to managed EnOcean Devices and to generate Home Assistant Configuration.

Project description

Generic badge Generic badge Generic badge Generic badge

Enocean Device Manager and Home Assistant Configuration Exporter

WORK IN PROGRESS BUT ALREAD USABLE!!!

This client application allows you to inventory all EnOcean devices. It can automatically read and detect devices from the RS485 bus or from wireless network. After the devices are listed in the EnOcean Device Manager you can enricht device information like changing the name, comment or adapt parameters like timeframes, thresholds, units, ... . Furthermore, it automatically can detect default settings for Home Assistant configuration which can be adjust as well and it allows you to generate and export the configuration for Home Assistant. (The exported Home Assistant configuration is intended for the Eltako Home Assistant Integration)

Preview

What you can see here can automatically detected by reading the memory of the bus devices via FAM14. Telegrams of sensors and decentralized devices will be received and additionally added. Additional info for Home Assistant is automatically added. The configuration for Home Assistant can be generated by the detected information. For further steps it is planned to extend the support for changing the data which was collected so that a proper management of the devices can be supported.

System Requirements / Where to install and how to use it?

This tool is a desktop application (not browser based) and it runs independent of Home Assistant. Install it directly on a Windows, Linux or Max. (So far only Windows has been tested but all three operating systems should be supported.) Your PC requires Python pre-installed and you should be able to connect it to your EnOcean devices, either via USB cable (Eltako FAM14, FGW14-USB, ...) or wireless transceiver (Eltako FAM-USB). Support for the wireless transceiver 'EnOcean USB300' is planned for future releases.

For the moment I recommend a laptop with Windows and Python installed. You should be able bring close to FAM14 in order to connect it. (Connection to FAM14 is only required for a short moment during the device scan process.)

Install python package in virtual environment (Recommended)

  1. Create virtual python environment: python.exe -m venv .\.venv
  2. Install application: .\.venv\Scripts\pip.exe install eo_man --force-reinstall (Package available under pypi: eo_man)
  3. Run application: .\.venv\Scripts\python.exe -m eo_man

Install python package in gloabl environment

  1. Install application: pip.exe install eo_man (Package available under pypi: eo_man)
  2. Run application: python.exe -m eo_man

Install source code from this repository and run the App (alternative)

  1. Clone/Download the repo.
  2. Change into the repo directory.
  3. Create virtual environment for python: python.exe -m venv .venv
  4. Install dependencies: .\.venv\Scripts\python.exe setup.py install
  5. Start the app: .\.venv\Scripts\python.exe -m eo_man or .\.venv\Scripts\python.exe -m eo_man demo.eodm (Directly loads demo data)

For update you can execute:

  1. git pull (Gets newest state of the code)
  2. Optionally change branch: git checkout BRANCH_NAME
  3. Reinstall.\.venv\Scripts\python.exe setup.py install --force
  4. Run app: .\.venv\Scripts\python.exe -m eo_man

Bugs and Features

Please open issues if you encounter bugs or if you have ideas for new features. Also quite a lot of devices are not yet supported.

Run unittests

pytest tests

Install pre-commit hook to ensure unittests are executed before each commit

  1. Install package pip install pre-commit
  2. Config git: pre-commit install

Build wheel package

python setup.py bdist_wheel

Install built wheel pacage

pip install dist/eo_man-VERSION-py3-none-any.whl use --force-reinstall if you want to overwrite an existing version.

Use Command Line

You can use command line only to generate Home Assistant Configuration based on an existing application configuration.
Check out: python -m eo_man -h

Changelog

Contribution and Support to this Project

I'm really happy to provide a more and more growing Home Assistant Eltako Integration and tools like this which extend this automation corner even more. The size of this integration is getting much bigger than the use cases I've realized at home, the variety of supported devices is increasing and the stability of the integraiton is getting to a professional level. On the other side it is getting hard to keep this level of development speed and operational quality. I'm about to build up a professional development and testing environment so that the quality can even improved and futher features can still be delivered in a short time frame.

In general, you can contribute to this project by:

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

eo_man-0.1.46.tar.gz (1.7 MB view details)

Uploaded Source

Built Distribution

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

eo_man-0.1.46-py3-none-any.whl (1.7 MB view details)

Uploaded Python 3

File details

Details for the file eo_man-0.1.46.tar.gz.

File metadata

  • Download URL: eo_man-0.1.46.tar.gz
  • Upload date:
  • Size: 1.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eo_man-0.1.46.tar.gz
Algorithm Hash digest
SHA256 211cae52f78ced618cd6a9d63146ca2e2c81529c41db3aa4f57c71817ab510da
MD5 d2a6d8f16e412aa6ea6b54b7377b81f4
BLAKE2b-256 12e966b43b6a4b835c21e8d7a4bc4e85a040c67b0d74fdb66859de93fc1cc750

See more details on using hashes here.

File details

Details for the file eo_man-0.1.46-py3-none-any.whl.

File metadata

  • Download URL: eo_man-0.1.46-py3-none-any.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for eo_man-0.1.46-py3-none-any.whl
Algorithm Hash digest
SHA256 d4a248091d423591cffd0285bb0b3d79924d2ac8c682e5a00b1fc21ed7b43607
MD5 fe9f9c1094bc4bf964d857a9bd08cb4d
BLAKE2b-256 bdaf402e5f3fd3fbd4264547c21c34e2115649d6d9b29b5d994a89f6e0b91aa8

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