+
Skip to content

yuhu-/ebus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

C++ library for eBUS communication

This library enables communication with systems based on the eBUS protocol. eBUS is primarily used in the heating industry.

eBUS Overview

  • The eBUS works on a two-wire bus with a speed of 2400 baud.
  • Realisation with Standard UART with 8 bits + start bit + stop bit.
  • A maximum of 25 master and 228 slave participants are possible.
  • The eBUS protocol is byte-oriented with byte-oriented arbitration.
  • Data protection through 8-bit CRC.

Class Overview

On the bus, a message is sent or received as a sequence of characters.

  • The purpose of the Sequence (low-level) class is to replace or insert special characters and calculate the CRC byte.
  • The Telegram (high-level) class can analyze, generate and evaluate a sequence according to the eBUS specification.
  • The Handler has routines for sending and receiving all types of telegrams and the option of collecting statistical data about the eBUS system. To perform this task, the Handler requires a serial bus device.
  • Datatypes offers functions for decoding/encoding of in accordance with the eBUS data types.
  • Bus, BusIsr, Queue and ServiceRunner are selector header files that include platform-specific implementations.

Tools

ebusread interprets all incoming values ​​as eBUS data. The data is validated and then printed to standard output. Reading from files, devices, pipes and TCP sockets is supported.

playground can be used by developers for testing and experimenting with the eBUS classes.

Build

Compilation requires CMake and a C++ compiler (tested on GCC) with C++14 support.

[Deprecated]

EbusStack offers the possibility to act as a fully-fledged eBUS participant. It has been implemented as a PIMPL idiom and runs in its own thread. EbusStack also requires ppoll and pthread support.

For reporting bugs and requesting features, please use the GitHub Issues page.

About

C++ library for eBUS communication

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载