ebusd is a daemon for handling communication with eBUS devices connected to a 2-wire bus system ("energy bus" used by numerous heating systems).
The main features of the daemon are:
- use USB serial, TCP connected, or UDP device
- actively send messages to and receive answers from the eBUS
- passively listen to messages sent on the eBUS
- regularly poll for messages
- cache all messages
- scan for bus participants
- parse messages to human readable values by using CSV message configuration files
- automatically pick CSV message configuration files by scan result
- grab all messages on the eBUS
- log messages and problems to a log file
- capture sent/received bytes to a log file as text
- dump received bytes to binary files for later playback/analysis
- listen for client connections on a dedicated TCP port (command line style and/or HTTP)
- optionally format messages and data in JSON on dedicated HTTP port
Either pick the latest release package suitable for your system (see https://github.com/john30/ebusd/releases/latest) or build it yourself.
Building ebusd from the source requires the following packages and/or features:
- autoconf (>=2.63)
- automake (>=1.11)
- g++
- make
- kernel with pselect or ppoll support
- glibc with argp support or argp-standalone
To start the build process, run these commands:
./autogen.sh
make install
Usage instructions and further information can be found here:
The most important part of each ebusd installation is the message configuration. By default, only rudimentary messages are interpreted. Check the Wiki and/or the configuration repository:
For bugs and missing features use github issue system.
The author can be contacted at ebusd@ebusd.eu .