The eibd daemon is a central component of the BCU SDK. It provides an interface to the EIB / KNX bus. As interfaces, it supports:
  • FT1.2 / BCU 2
  • PEI16 / BCU 1 (using the BCU 1 kernel driver or an experimental user mode driver)
  • TPUART (The use of the TPUART kernel driver is supported, but the user mode implementation is simpler to use and lacks no features)
  • EIBnet/IP Routing and Tunneling
  • KNX on USB (only EMI1 and EMI2 are supported; CEMI is not really supported by current USB interfaces)
Eibd provides over a TCP/IP and/or unix domain sockets access to the EIB bus using a simple protocol. It provides access at layer 4 as well as to high level mangement function. Multiple concurrent users are supported. A special bus monitor mode call vBusmonitor is implemented, which delivers all traffic, which eibd passes, but not disturbs send activities.

Additionally, eibd can acts as limited EIBnet/IP Tunneling and/or Routing Server. The limitation is, that only one KNX address can be used as source address of EIBnet/IP Clients. This address is shared between multiple possible routing or tunneling connections. To the EIBnet/IP client, the address 0.0.0 is used, to the EIB/KNX bus the address of the interface device is used. eibd maps between these addresses (like NAT for TCP/IP).

Enabling the EIBnet/IP Server disables the normal bus monitor function (vBusmonitor still works). It supports all interfaces supported by eibd. In an experiment, the ETS read successfully the device infos over EIBnet/IP Tunneling to a chain of some eibds connected through EIBnet/IP Tunneling and a TPUART at the last.

Martin Kögler <> (please no html mails)