Public Repositories on gitlab: KNX’s Open-Source Infrastructure for the IoT World
For some time now, I’ve been following the public repositories on gitlab.knx.org. What caught my attention right away was that this is not just a simple code repository. This collection is, in fact, the KNX Association’s open-source development platform—a place where several main groups work side by side to cover different links in the KNX IoT technical chain. From the semantic model and specifications to implementation, practical examples, conformance testing, and documentation.
At present, this ecosystem is built on several main groups:
- KNX IoT Point API — the technical core and implementation of the Point API specification
- KNX IoT 3rd Party API — the bridge to non-KNX systems
- EITT — the testing and certification tool
- HBES Information Model — the semantic model and ontology
- KNX IoT Documentation — documentation and technical guides
The KNX IoT Point API Group: The Beating Heart of the Ecosystem
This group contains several separate projects, and it is best not to mix them up.
Stack is the open-source implementation of the KNX IoT Point API specification in C. The main protocols—such as CoAP, OSCORE, SPAKE2+, and the CBOR and JSON formats—are implemented here. Device discovery is handled through mDNS/DNS-SD and semantic discovery according to KNX Volume 7. Windows, Linux, and Zephyr ports are supported. One point that can easily be misunderstood: FreeRTOS is not the primary port in this repository, and its documentation is provided separately. Unit tests, runtime conformance tests, and fuzz tests are also part of this project.
Demos are runnable sample applications for Linux, Windows, and Zephyr. This project uses Stack as a dependency—meaning Stack is the technical core and Demos is its consumer. The samples include an EITT emulator, a light switch sensor and actuator, and three home energy management applications.
Schema holds JSON Schema files that describe the Point API resource endpoints and message payloads. This project includes an OAS 3.0.x implementation and dedicated folders for device, messaging, properties, security, tables, and swu.
The KNX IoT 3rd Party API Group: A Bridge to the Non-KNX World
This group is designed for communication partners that do not have KNX certification and no prior knowledge of KNX. The goal is to make it possible to discover and interact with KNX installations through a REST API based on OpenAPI. The API covers resource access, management endpoints, filtering, secure authorization, and access scopes.
The EITT Group: Conformance Testing and Certification
EITT, or the KNX Interworking Test Tool, is the official KNX testing and analysis tool. Manufacturers use it during development and in accredited test labs for certification. From version 4.4 onward, EITT can test KNX IoT API Servers. There is also a REST API project in this group that serves as an interface for external tools and scripts to interact with EITT.
The HBES Information Model Group: The Foundational Semantic Model
This group provides an open-source ontology implementation for the KNX Information Model (KIM). KIM describes the relevant parts of the HBES system and is defined according to EN 50090-6-2. This model allows devices from different manufacturers to exchange data through standardized semantics.
The KNX IoT Documentation Group: The Documentation Entry Point
This group is the entry point for general KNX IoT documentation and guides. Its content includes an introduction to KNX IoT, the ETS6 guide, Point API documentation, device profiles, and a stack build guide. The rendered version is available at buildwithknxiot.knx.org.
How Do These Groups Connect?
HBES Information Model defines the foundational semantic model on which KNX IoT Point API is built. Stack turns that specification into code, and Demos provides practical examples of it. EITT tests and validates these implementations, while 3rd Party API enables integration with external systems. Schema is the bridge between specification and implementation, and Documentation provides technical guidance across the entire chain.
Connection with KNX and Developers
This ecosystem is not only for manufacturers. By investing in an open-source implementation, the KNX Association has lowered the barrier to entry for manufacturers. Porting KNX IoT to Zephyr and FreeRTOS by companies such as NXP gives developers access to modern RTOS ecosystems. ETS6 is available for configuration and EITT for conformance testing. The open-source stack serves as a validated starting point and shortens the certification path.
A Unified Ecosystem
gitlab.knx.org is an open-source development platform with a group-based architecture. Each group plays a clear and complementary role in the KNX IoT technical chain. From the semantic model to the specification, from implementation to practical examples, from testing and certification to integration with the non-KNX world, all these pieces come together in a single ecosystem. This structure allows developers, manufacturers, and business partners to enter at whatever point in the chain they need.