Hallo zusammen,
ich arbeite derzeit an einem Open-Source-Projekt zur Umsetzung eines KNX IoT 3rd Party API Servers gemäß der KNX IoT 3rd Party API Specification 2.1.0.
Ziel des Projekts ist es, bestehende KNX-Anlagen über eine standardisierte REST-Schnittstelle zugänglich zu machen und dabei die von der Spezifikation definierten Ressourcen und Datenmodelle bereitzustellen.
Motivation
Während KNX-Telegramme und Gruppenadressen für die Kommunikation auf dem Bus ideal sind, stellen moderne Anwendungen häufig andere Anforderungen:
Genau hierfür wurde die KNX IoT 3rd Party API spezifiziert.
Mein Ziel ist es, diese Spezifikation möglichst vollständig als eigenständigen Server zu implementieren.
Technischer Ansatz
Der Server verbindet sich über KNX/IP mit einer bestehenden KNX-Installation und nutzt den ETS KNX TTL Export als semantische Beschreibung der Anlage.
Aus diesen Informationen werden die in der Spezifikation definierten Ressourcen erzeugt und über die API bereitgestellt.
Beispiele:
Die Plattform verwaltet dabei sowohl aktuelle Zustände als auch historische Werte.
Architektur
Die Implementierung basiert auf:
Der Fokus liegt bewusst auf einer sauberen Trennung zwischen KNX-Kommunikation, Ressourcenmodell und API-Schicht.
Aktueller Stand
Derzeit arbeite ich an:
Der aktuelle Entwicklungsstand ist hier verfügbar:
https://github.com/Noschvie/semantic-knx-gateway
Austausch gesucht
Hat sich hier bereits jemand intensiver mit der KNX IoT 3rd Party API beschäftigt?
Mich würden insbesondere Erfahrungen zu folgenden Themen interessieren:
Ich freue mich auf den fachlichen Austausch und Feedback aus der Community.
ich arbeite derzeit an einem Open-Source-Projekt zur Umsetzung eines KNX IoT 3rd Party API Servers gemäß der KNX IoT 3rd Party API Specification 2.1.0.
Ziel des Projekts ist es, bestehende KNX-Anlagen über eine standardisierte REST-Schnittstelle zugänglich zu machen und dabei die von der Spezifikation definierten Ressourcen und Datenmodelle bereitzustellen.
Motivation
Während KNX-Telegramme und Gruppenadressen für die Kommunikation auf dem Bus ideal sind, stellen moderne Anwendungen häufig andere Anforderungen:
- standardisierte REST-Schnittstellen
- einheitliche Ressourcenmodelle
- Zugriff auf aktuelle Zustände
- Zugriff auf historische Daten
- herstellerunabhängige Integration
Genau hierfür wurde die KNX IoT 3rd Party API spezifiziert.
Mein Ziel ist es, diese Spezifikation möglichst vollständig als eigenständigen Server zu implementieren.
Technischer Ansatz
Der Server verbindet sich über KNX/IP mit einer bestehenden KNX-Installation und nutzt den ETS KNX TTL Export als semantische Beschreibung der Anlage.
Aus diesen Informationen werden die in der Spezifikation definierten Ressourcen erzeugt und über die API bereitgestellt.
Beispiele:
HTML-Code:
HTTP-Endpunkte GET /api/v2/locations GET /api/v2/devices GET /api/v2/functions GET /api/v2/datapoints GET /api/v2/timeseries
Architektur
Die Implementierung basiert auf:
- Docker
- Node.js
- PostgreSQL / TimescaleDB
- KNX/IP Tunneling
- ETS KNX TTL Parsing
Der Fokus liegt bewusst auf einer sauberen Trennung zwischen KNX-Kommunikation, Ressourcenmodell und API-Schicht.
Aktueller Stand
Derzeit arbeite ich an:
- KNX/IP Runtime
- Verarbeitung von ETS-TTL-Exporten
- Aufbau des internen Ressourcenmodells
- Umsetzung der REST-Endpunkte gemäß Spezifikation
Der aktuelle Entwicklungsstand ist hier verfügbar:
https://github.com/Noschvie/semantic-knx-gateway
Austausch gesucht
Hat sich hier bereits jemand intensiver mit der KNX IoT 3rd Party API beschäftigt?
Mich würden insbesondere Erfahrungen zu folgenden Themen interessieren:
- praktische Nutzung der Spezifikation
- verfügbare Test- oder Referenzimplementierungen
- Erfahrungen mit ETS-TTL-Exporten
- mögliche Stolpersteine bei der Umsetzung
Ich freue mich auf den fachlichen Austausch und Feedback aus der Community.



Kommentar