Do you really mean knxd? @petero was referring to the KNX binding.
EDIT: I just found out that the binding also supports another PC running knxd. So never mind.
See the documentation and forum for examples how the use it, there are plenty of examples.
I’d recommend to create an item for the group address you want to read / write and add this item to a sitemap so that you can see or update it from the GUI (whatever it is you want to do).
Same for the Danfoss binding. Once you are able to do that, write a rule which triggers for changes in the Danfoss item and updates the KNX item (or vice versa). Be careful not to create a cyclic update.
This might look like this (in my case, if the KNX wall switch is pressed, the air unit is put into “OFF” mode for one hour and then put back into “DEMAND” mode using a timer)
knx.things (excerpt with only one thing, adapt for your setup accordingly, see documentation)
Bridge knx:ip:bridge [
ipAddress="192.168.0.133",
port=3671,
localIp="192.168.0.62",
type="TUNNEL",
readingPause=50,
responseTimeout=30,
readRetriesLimit=3,
autoReconnectPeriod=1,
localSourceAddr="0.0.0"
] {
Thing device generic [
] {
Type switch-control : Taster_Lueftung_Modus_AUS_aktiv "Lüftung AUS aktivieren" [ ga="9/0/15"]
}
}
Note that I used the control channel variant of the item type switch here… you can read about it here in the KNX binding documentation
knx.items (excerpt)
EDIT: posted the wrong item here first, fixed now.
Switch Taster_Lueftung_Modus_AUS_aktiv "Lüftung AUS Modus aktivieren" { channel = "knx:device:bridge:generic:Taster_Lueftung_Modus_AUS_aktiv" }
danfoss.rules (excerpt)
var Timer tLueftungDeactivation
rule "Lüftung_Taster Küche"
when
Item Taster_Lueftung_Modus_AUS_aktiv changed
then
if(tLueftungDeactivation !== null) {
logInfo("Lüftung", "Lüftung Timer cancelled" )
tLueftungDeactivation.cancel()
}
sendCommand(Lueftung_Mode, "OFF")
logInfo("Lüftung", "Creating Lüftung Timer")
tLueftungDeactivation = createTimer(now.plusHours(1))[|
logInfo("Lüftung", "Lüftung Timer fired")
sendCommand(Lueftung_Mode, "DEMAND")
]
end
I’ve got an KNX as well, but actually I use a combination of HabPanel and Grafana for the visualisation of the air unit graphs. Much more pleasing to the eye and a lot cheaper than the visualisations for KNX from the classic vendors.