Skip to main content

Library for participating in the Eltako Series 14 RS485 bus

Project description

Eltako14Bus Python library

This repository contains a library and some tools for interacting with the Eltako Series 14 bus system, which is an extension to the EnOcean Serial Protocol ESP2.

This is part of the reverse engineering approach that allows using Eltako Series 14 devices without a FAM.

It can work both on a direct RS485 serial connection to the bus, with or without a FAM14 present on the bus, through a FAM14's serial connection, or through a bespoke CoAP interface to the ESP2 protocol.

Tools

The eltakotool program shipped with it can do various raw interactions with the bus (replacing some FAM14 functionality, locking and unlocking the bus, sending arbitrary messages) as well as reading and writing the bus participants' memory (including verification and annotation of the memory contents).

Protocol description

(This is a short version. The long is partially available in the EnOcean and Eltako documentations, and the rest is in the reverse engineered code).

The EnOcean serial protocol is a point-to-point serial protocol between a computer and a radio transceiver; it contains synchronization bytes, some structured data bytes, and checksumming. The most common message formats are RPS and 4BS, which have equivalent messages (with short and long (4 byte) data, respectively) on the radio side. These messages contain some addressing information both when receiving (indicating which device sent it) and when sending through the transceiver (in which case the addresses need to match the address range of the transceiver, giving about 128 possible sending addresses).

The Eltako protocol is loosely built on the ESP2 protocol, but is used on an RS485 bus (with up to 127 participants), and uses several message types that are not defined in ESP2.

Part of the Eltako bus protocol is enumeration: Devices on the bus can be put into an addressing mode, and the bus master (a FAM14 or the library user) can assign one of the 127 available address to the device.

Commands are also known to visually identify devices on the bus, and to read and write their configuration (eg. in a relay, setting which buttons it should react to).

License

This was developed by Christian Amsüss c.amsuess@energyharvesting.at and Energy Harvesting Solutions 2016-2020.

It is published under the terms of GNU LGPL version 3 or later.

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

eltako14bus-0.0.68.tar.gz (47.9 kB view details)

Uploaded Source

Built Distribution

eltako14bus-0.0.68-py3-none-any.whl (50.8 kB view details)

Uploaded Python 3

File details

Details for the file eltako14bus-0.0.68.tar.gz.

File metadata

  • Download URL: eltako14bus-0.0.68.tar.gz
  • Upload date:
  • Size: 47.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for eltako14bus-0.0.68.tar.gz
Algorithm Hash digest
SHA256 e999847508df41b02b4f4b559d4f9b96b33298ca03e604f1af27f9c8cc971798
MD5 b9c8559a00bc388ba57971747600b46f
BLAKE2b-256 756eba6ea15e0d61ac67ba3b48ad72635d70778ee9f7d717cb60b1519ee5a6b5

See more details on using hashes here.

File details

Details for the file eltako14bus-0.0.68-py3-none-any.whl.

File metadata

  • Download URL: eltako14bus-0.0.68-py3-none-any.whl
  • Upload date:
  • Size: 50.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for eltako14bus-0.0.68-py3-none-any.whl
Algorithm Hash digest
SHA256 ceddd63cf827c6ec6c6fbc3e97d0be0323ad62c05281aea3951b69a73b302f63
MD5 bef01eafe3af773edd1a53a50d74b34b
BLAKE2b-256 11fb121ac7b5fc4f5f4feb42ec8b7f98c98b18c1460a42675d541cea9dea4e0e

See more details on using hashes here.

Supported by

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