An async implementation of the EnOcean Serial Protocol Version 3.
Project description
enocean-async
This is a light-weight, asynchronous, fully typed Python implementation of the EnOcean Serial Protocol Version 3 (ESP3) based on pyserial-asyncio-fast.
It is currently still a proof of concept (PoC) implementation loosely based on my previous Node.js implementation, so anything may change at anytime!
What works:
- Receiving ESP3 packets and parsing them into ERP1 telegrams
- Sending ESP3 packets (only tested with Common Command telegrams so far) incl. waiting for response (or time-out) and reacting to the response
- Retrieving EURID, Base ID and version info from the EnOcean module
- Changing the Base ID
- Sending ERP1 telegrams
- Parsing EEPs (with F6-02-01 as tested/implemented example)
- Parse Universal Teach-In (UTE) Queries
- logging (partially)
What is missing/untested:
- create and send Universal Teach-In (UTE) responses
- handle Teach-in (UTE, 4BS, 1BS)
- add (and test) more EEPs
Implemented EEPs
See SUPPORTED_EEPS.md.
Contributing
See CONTRIBUTING.
Dependencies
This library only has one dependency, namely
- pyserial-asyncio-fast in version 0.16, which is BSD-3 licensed.
Copyright & license
Copyright 2026 Henning Kerstan
Licensed under the Apache License, Version 2.0 (the "License"). See LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file enocean_async-0.2.0.tar.gz.
File metadata
- Download URL: enocean_async-0.2.0.tar.gz
- Upload date:
- Size: 45.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce849672deebea641753787a09779897047cc7b9141d51580ee825a5802c1ccc
|
|
| MD5 |
b2bdd08dee96c0b4a56b8d62a3cc316c
|
|
| BLAKE2b-256 |
83fdf471fd0686f6219a6b1a86c8064a598fdf6a3acea52353b11a3b87a8f4c7
|
Provenance
The following attestation bundles were made for enocean_async-0.2.0.tar.gz:
Publisher:
publish.yml on henningkerstan/enocean-async
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
enocean_async-0.2.0.tar.gz -
Subject digest:
ce849672deebea641753787a09779897047cc7b9141d51580ee825a5802c1ccc - Sigstore transparency entry: 988245251
- Sigstore integration time:
-
Permalink:
henningkerstan/enocean-async@800c7ff9b95a69e1d85130596629ca93d5bb8e2b -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/henningkerstan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@800c7ff9b95a69e1d85130596629ca93d5bb8e2b -
Trigger Event:
push
-
Statement type:
File details
Details for the file enocean_async-0.2.0-py3-none-any.whl.
File metadata
- Download URL: enocean_async-0.2.0-py3-none-any.whl
- Upload date:
- Size: 58.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3cedf88b461e84145bbcb8d16ad765a8a91e663f4f1ca5a5f0a6ba2fedf1441b
|
|
| MD5 |
43ad9c81c7f21b02b6e3b3a852bbc87f
|
|
| BLAKE2b-256 |
35f1f79949a104fcf09fb344def21c35eba1745f3c5f8bbe155c55495564b8de
|
Provenance
The following attestation bundles were made for enocean_async-0.2.0-py3-none-any.whl:
Publisher:
publish.yml on henningkerstan/enocean-async
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
enocean_async-0.2.0-py3-none-any.whl -
Subject digest:
3cedf88b461e84145bbcb8d16ad765a8a91e663f4f1ca5a5f0a6ba2fedf1441b - Sigstore transparency entry: 988245371
- Sigstore integration time:
-
Permalink:
henningkerstan/enocean-async@800c7ff9b95a69e1d85130596629ca93d5bb8e2b -
Branch / Tag:
refs/tags/v0.2.0 - Owner: https://github.com/henningkerstan
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@800c7ff9b95a69e1d85130596629ca93d5bb8e2b -
Trigger Event:
push
-
Statement type: