# KNX

KNX is een standaard (ISO/IEC14543, CENELEC EN50090, CEN13321) die beschrijft hoe producten in de automatisering van woningen en gebouwen (bijvoorbeeld sensor en actuator) met elkaar communiceren. Dit communicatieprotocol wordt toegepast in gebouwautomatisering en domotica. KNX Association certificeert de producten volgens deze norm zodat producten van verschillende fabrikanten samen in één systeem gebruikt kunnen worden.

## Communicatiemedia

* Bus kabel, twisted pair (2 datalijnen, 9600 bit/s, tot 58000 apparaten, voeding SELV maximaal 30 V DC)
* Power line (communicatie signaal 105,6 KHz tot 115,2 kHz, 1200 bit/s)
* RF (868.3 MHz, 16384 bits/s Manchester coded, unidirectioneel en bidirectioneel)
* IP (Ethernet)
Koppelen van media kan met behulp van mediakoppelaars.

## Configuratiemodi

Het configureren van een KNX systeem kan afhankelijk van het apparaat op drie manieren:
* E-Mode (Easy mode): bedoeld voor kleine tot middelgrote installaties. Configuratie gebeurt middels een tool of druktoetsen op het apparaat. Enige kennis betreffende configuratie is noodzakelijk. Configuratie met ETS is ook mogelijk.
* S-Mode (System mode): volledige configuratie is beschikbaar met behulp van een PC en ETS software. Specifieke kennis betreffende configuratie is noodzakelijk.
De in de originele specificaties voorziene A-Mode (Automatic Mode) is afgevoerd.

## ETS

ETS (Engineering Tool Software) is software waarmee een KNX-installatie kan worden ontworpen en geconfigureerd. Het bevat een database waarin de in de installatie gebruikte componenten zijn beschreven.
De meeste recente versie van de software kwam uit in 2014 en is ETS5. Door veel installateurs wordt ETS3 echter gebruikt, mede omdat bijna alle productdatabases nog ondersteuning bieden voor ETS3. Projecten gemaakt in ETS3 kunnen met ETS4 geopend en bewerkt worden. Wanneer dit eenmaal gedaan is, is het echter niet meer mogelijk om het bestand te bewerken met ETS3.
Onderstaand de update cyclus van de ETS software: ETS1: 1993-1996 ETS2: 1996-2004 ETS3: 2004-2010 ETS4: 2010-2014 ETS5: 2014-2021 ETS6: 2021-
Home edition: 2021- De Home edition is bedoeld voor eindgebruikers. Hiermee kan 1 project geconfigureerd worden. Vanaf ETS5 is het mogelijk om ook RF installaties te configureren zonder gebruik te maken van plugins. Ook is vanaf ETS5 mogelijk om gebruik te maken van KNX secure.

## Topologie

Een KNX-installatie kan men opsplitsen in drie grote onderverdelingen. Het kleinste is een lijn. Hier kon men tot 2019 maximum 64 busdeelnemers op plaatsen indien geen lijnrepeaters worden gebruikt. Men kon tot 3 extra lijnrepetears gebruiken per lijn die in ster vertrekken vanuit het laatste device nr 63. Elke lijnrepeater kon toen nog eens 64 extra componenten ondersteunen. Hierdoor kon men tot 256 componenten per lijn hebben. Sinds 2019 bestaat TP256, waarbij lijnrepeaters niet meer nodig zijn, en je, afhankelijk van de voeding maximaal 255 deelnemers op één lijn plaatsen.
Daarna is er een zone. Hier kan men tot 15 (1 tot 15) lijnen op plaatsen, maar de hoofdlijn zelf kan ook busdeelnemers bevatten. De zones zijn allemaal verbonden met elkaar door de backbone, waarop er weer maximum 15 (1 tot 15) verschillende zones kunnen geplaatst worden. Ook op de hoofdlijn zelf kunnen nog busdeelnemers geplaatst worden. In totaal kunnen er in een installatie dus tot 65536 busdeelnemers met elkaar communiceren.
De lijnen en zones worden met elkaar verbonden door middel van lijn- en zonekoppelaars. Deze worden op de hoofdlijn of backbone geplaatst en tellen hierop ook als een deelnemer. Hetzelfde geldt voor de lijnrepeaters, dus een van de 64 componenten die geplaatst kunnen worden. Deze koppelaars beschikken over een filtertabel. Hier staan alle groepsadressen in die in de lijn of zone voorkomen, en de koppelaar laat enkel deze door.

### Fysieke adressen

Bij KNX worden de verschillende busdeelnemers aangeduid met fysieke adressen. Deze dienen om de component in de installatie terug te vinden, en om fouten te detecteren. De fysieke adressen worden bij de dagelijkse werking van de installatie niet gebruikt. Ze bestaan uit 16 bits, waarbij de bits in groepen verschillende plaatsen aanduiden:
ZZZZ LLLL DDDDDDDD
Z: De eerste 4 bits duiden aan in welke zone de component zich bevindt. De waarden 1-15 zijn zones, bij de waarde 0 bevindt de busdeelnemer zich op de backbone. L: De volgende 4 bits duiden de lijn aan van de component. Hier zijn de waarden 1-15 weer lijnen, en bij waarde 0 bevindt de busdeelnemer zich op de hoofdlijn.
D: Dit is het adres van de busdeelnemer, waarde 0 is hier gereserveerd voor de koppelaar.

### Groepsadressen

Om sensoren en actoren met elkaar te laten communiceren, worden groepsadressen gebruikt. De informatie die doorgestuurd wordt, kan een waarde hebben van 1 bit tot 14 bytes, naargelang het doel van de communicatie. Zo heeft een aan/uit signaal slechts 1 bit nodig, en gebruikt een tekstsignaal een aantal bytes. De groepsadressen zelf bestaan uit 16 bits, waarvan de opbouw, anders dan bij de fysieke adressen, wel zelf gekozen kan worden. Een voorbeeld van opbouw kan zijn:
HHHH MMMM SSSSSSSS
H: Dit is dan de hoofdgroep
M: Dit is de middengroep
S: dit is de subgroep
Het groepsadres zal er dan voor een telegram bijvoorbeeld als volgt uitzien: 5/3/62. Met elk groepsadres kan men één bevel geven, en elke sensor kan slechts één groepsadres zendend hebben. Actoren kunnen wel verschillende groepsadressen ontvangen. Het groepsadres 0/0/0 is steeds voorbehouden voor broadcastmeldingen.

## Toepassing

Het KNX-communicatieprotocol beschrijft de volgende toepassingsgebieden:
* Verlichting
* Zonwering
* Ruimtetemperatuurregeling
* Beveiliging
* Audio/Video
* Ketelaansturing
* Weergave/rapportage van sensor- en actuatorinformatie
* Ventilatie
* Energiebeheer
* Metering
* Huishoudelijke apparatuur
Hoewel Audio/Video een toepassingsgebied is van KNX, gaat het om het aansturen van A/V-apparatuur. Denk hierbij aan het in- of uitschakelen van apparaten of het kiezen van een nummer. Door de lage overdrachtssnelheid (9600 bit/s) is het niet mogelijk om Audio/Video daadwerkelijk over de buslijn te streamen.
Wel zijn hier goede geïntegreerde oplossingen voor om audio streamers te integreren in de KNX bus. Dit gaat vaak op IP basis, of er zijn ook merken met een directe KNX koppeling.

## Geschiedenis

KNX is in 1999 ontstaan vanuit EIB (European Installation Bus), Batibus en EHS (European Home System). De KNX specificatie werd in 2002 gepubliceerd. In 2003 werd KNX voor twisted pair en power line een Europese standaard (EN50090). De RF-versie volgde in 2006. In 2006 werd KNX een internationale standaard (ISO/IEC14543). Sinds 2018 voldoet KNX door gebruik te maken van KNX secure aan de hoge encryptiestandaarden (volgens ISO 18033-3, zoals AES 128 CCM-encryptie) om alle aanvallen op de digitale infrastructuur van gebouwen doeltreffend te verhinderen en de hoogste mate van gegevensbescherming te realiseren.