Support KNX IoT 3rd Party API

Since ETS6, KNX introduces a new API accessible through IP gateways.

Reference: KNX Internet of things KNX Association [Official website]

Since it has the ability to list all devices, it might become redundant to manually configure all group addresses.

Most recent API schema: Swagger UI

Knx IoT would be a whole new integration, not a replacement for the current KNX integration.

Knx IoT requires a compatible gateway to be connected via HTTP whereas the current KNX integration directly speaks the KNXnet/IP protocol compatible with every Knx device available.

Unfortunately I did not have that much time to attend the whole KNXPERIENCE exhibition.

Do you know if some manufacturers have announced any KNX IoT gateways that will offer the mentioned KNX IoT API?

I’d also like to know that.
Honestly, I’m quite excited to see the knx association opening up to 3rdparty developers and the oss community.
The oas looks quite nice and it seems absolutely possible to implement this against one of the wellknown oss knx implementations out there.

1 Like

What does “oas” mean?
To be honest I don’t see how this can be implemented against the current knx/ip implementations. As far as I understood it is a Rest-API over http - so this is something completely different and would require new libraries (which are quite easy to implement in comparison to knx/ip).

I also don’t see the KNXA opening up to OOS developers - they added a protocol to use indtead of knx/ip but we still can’t change device properties without ETS.
And we can’t officially create ETS product databases without becoming a member before (and paying the annual fee). (This would, in theory, enable us to configure the HA knx Integration from ETS which would be really cool imho :nerd_face:)

All in all I think it will be nice for new Knx users as there will be less manual configuration but the direct knx communication will probably still be more flexible.
Existing projects would have to be migrated and installations need new hardware.

Oas is short for open api specification (formerly swagger, OAI/OpenAPI-Specification: The OpenAPI Specification Repository (github.com).

I think that this is quite a bit more than just knx/ip on steroids.
They now are officially targeting non-certified developers with this api. I think that’s a first-timer :slight_smile:

The motivation for the KNX IoT 3rd Party API is to offer a non-KNX certified communication partner a way to integrate with a KNX Classic Installation.

The api will allow you to explore, control and interact with a knx installation using its semantic model as configured with the ETS. As far as I can see, there is no proprietary protocol magic, no paid or hidden documentations just straight-forward standard stuff: ReDoc (knx.org)

This should the very least mean far better means of auto-discovery and presentation of KNX devices/functions compared to what’s possible for oss developers today. If done properly, this’d already be a lot more than what you get from numerous other solutions both in terms of both openness and stability. I think this is quite a step for knxa, considering how well they try to hide their precious xsd for ETS exports :wink:

I also consider REST (as opposed to the clumsy knx/ip) an additional enabling factor for quite a number of (oss) developers.

Regarding device configuration, I agree: they’re not going to give up their ETS-based monopoly on configuring KNX devices anytime soon. It’s far too valueable an ecosystem for the knx association, the industry members and the integrators/electricians.

Given knxas track record this will most likely mean that, as an owner, you’ll have to buy a certified knx/iot gateway that exposes said api based on data provided by ETS. I don’t mind: many/most 3rdparty/aftermarket solutions require a proprietary gateway of some kind (or some reversed-engineered diy stuff).

To some degree I even agree to their strategy. The costly licensing and certification process has ensured unparalleled compatibility over more than two decades, which (at least for me) is more valuable than the estimated 20% premium spent on my installation (which proves to be incredibly hassle-free).
But I digress

There is also a (however tiny) hope that the upcoming export feature will somehow produce data directly linked to the publicly available schema.

I agree that this will probably most valuable for people first-time integrating knx to a 3rdparty platform (or the other way around) but I don’t agree on the native protocol being the better, more flexible option. The new api provides much more information than what’s currently available using the native protocol.

The need for migration is a real bummer. Even in their latest version, they are hiding group-adresses completely in favor of uuids thus making existing installations virtually non-transformable: Swagger UI (knx.org)
I seriously hope they’ll reconsider.
Buying new hardware on the other hand: not so much. A few 100€ or so for one additional gateway capable of enabling literally any other iot solution to hook into your knx installation is nothing compared to what you currently pay for the devices you need to seemlessly integrate other stuff with knx. At least if you’re not completele diy’ing.

That’s true but at least with the new api, you can import and control the complete knx project within HS. Still, having HS as a first-class citizen inside ETS would be a blast, i agree :smiley:

1 Like

Just as an update: They’ve released a demo showcasing the current state in addition to the swagger-ui.
API Demo (Proof of Concept) - 2.0.0 – KNX Association

To get the KNX IoT 3rd Party API (written) specification, the ETS App to semantically export an ETS project and/or the docker based image to test the API demo in a (real) local environment, please refer to this link.

I’m intrigued.

Are you thinking of writing an integration?

Believe me, I’d like to. But for the next few months I don’t see this happening. My “little” housebuilding project turned out to be quite a disaster. At the moment, I even have problems finishing an open pull request I should already have cleaned up months ago (sorry, m2e community) :frowning:

But then, knxa is still in the process of finishing their specs and as of today I cannot find the resources advertised (I sent them a message - hope they don’t say it’s “members-only”). Plus, no iot gateways have hit the market (at least not that I’m aware of). So it may take a while until this becomes possible anyway.

If things get better for me next year, I’d gladly contribute.

1 Like

So here is an update from the very supportive guys at KNXA (kudos)

  • The resources I mentioned are - at least for the time being - only available to members.
  • As expected, the KNX-Side of the new IoT-Gateway will probably not be open to non-members, so we’ll have to wait for these devices to become available.
  • First devices are expected for this years’ L&B
  • The API itself is definetly targeted for non-members and from what I can see, it’s already pretty comprehensive as it is.
  • Sadly, they won’t be exposing group addesses. While I totally understand the reasons from an api-design perspective, this will make it really hard to migrate current solutions.

So let’s wait and see what gets available in Q2 :slight_smile:

1 Like

Here is some updates regarding currently available info from KNX Association. They have now published all the standard documents etc needed for KNX IoT.

This page hosts the downloads for the following KNX IoT frameworks.

  • KNX Information Model (KIM)
  • KNX IoT 3rd Party API
  • KNX IoT Point API
  • KNX IoT Router

List of Resources - KNX IoT API Server