Implementation Aspects for KNXnet/IP Devices
The transmission of KNX telegrams via Ethernet is defined as KNXnet/IP and is a part of the KNX Standard. Until now the specifications included the use of this medium for PC interfaces and for routers. IP routers are similar to line couplers, except that they use Ethernet for the main line. Moreover it is nowadays also possible to integrate KNX end devices directly via IP in the KNX network. That’s why Ethernet resp. IP (Internet Protocol) is a fully valued KNX medium. The development of KNXnet/IP devices does not require special KNX components. A KNXnet/IP node basically consists of the following elements:
Ethernet controllers are available from different semiconductor manufacturers. The Ethernet controllers basically comply with the KNXnet/IP requirements. Controllers with a bitrate of 10 MBits are generally sufficient.
Choosing which microcontroller basically depends on the required calculating performance for the device. KNXnet/IP can principally be implemented on a 8-bit controller. Depending on the application more powerful controllers can also be required. Many controllers already offer an interface for Ethernet on the chip, so that you only need to complete it with the physical layer.
The system software of a KNXnet/IP device consists of two protocol- stacks. Communication via Ethernet requires an IP Stack with UDP (User Datagram Protocol) because of the fact that KNXnet/IP is based on connectionless communication. Unicast as well as multicast telegrams are transmitted via UDP. The KNX Stack is put on top of the IP/UDP Stack. This is the KNX Common Kernel, which has to be implemented especially for each device model. The KNX Stack uses the IP/UDP stack as the interface to the system. The translation from KNX telegrams to UDP telegrams is established via KNXnet/IP. The KNX application accesses the API (Application Programming Interface) of the KNX stack, in order to communicate with the whole system.
What is the right solution?
Choosing the proper hardware depends basically on the type of application. Hardware implementations made especially for KNXnet/IP devices are already available on the market. Appropriate stacks are also offered. However, for complex devices, more powerful operating systems e.g. Linux, which basically contain an IP Stack with UDP can be used. In this case only the KNX stack as well as the corresponding application program is required.