KNXD add-on: convert your KNX-USB interface into an IP interface that can be used by HA

It’s very good. All work for me

Seems that good old hard reset with taking the power supply off for a moment fixed that last issue for me. Now it seems to work again!

Thank you everybody figuring things out!

yeah, my suggestion would also have been to reboot the HA OS, since hot-plugging a USB device (if you did that) might still not work reliably as it’s rather new in HA OS

hello
i have homeassistant core set up with knxd installed , but when i control the relay using homeassistant , its working but its not changing the switch status when i control the relay using normal knx switch box.
Isn’t it possible for the knxd for two side communications?. Or is it just some error from my part?

sounds more like a configuration issue on your end. You need to specify the state_address in your entity configuration for HomeAssistant to detect state changes done via the bus. Otherwise it will only track the internal HA state.

And if you happen to use different state group addresses for your KNX switches and what you use in HA, then the issue is that KNX objects can only ever update ONE group address and not several. Only the group address in which the KNX communication object has the “send” flag set will be updated.

Lastly, if you happen to have a KNX line coupler/proxy/router between your KNX interface used by knxd and your actuators, then you need to make sure that the KNX interface/knxd is allowed to receive your desired GAs by configuring the couple/router/proxy accordingly (or by creating relations to a virtual “knxd/homeassistant” object to each and every GA it needs to see. You can f.e. use the GIRA HomeServer dummy for that)

KNXD_OPTS="-e 1.1.1 -E 1.1.2:8 -u /tmp/eib -D -T -R -S -f9 -t1023 -b tpuarts:/dev/ttyO1:19200"

Is there anything more to add with this configuration inorder to get it working.???

i will check the state_address and other things you mentioned.

when i checked the setup with the IP interface i had , the status was updated in the homeassistant console .

Still a lot to study about knx from my side So helps are appreciated

Hi da-anda

Some question; I have a full house of Gira KNX RF wireless wall switches. I would love to have all these wall switches interface with my Hassio / Zwave infrastructure. Replacing all wall switches would be costly.

Any solution possible to get this done?
Looking at your solution, I was thinking about maybe using this USB stick to interface with hassio?

Any other way to solve my issue?

Cheers
Heursqem

sorry, haven’t played around with KNX RF yet, so no experience on my end. How do you currently program those switches? I suspect you also have wired KNX components these switches are controlling and maybe already even a wired KNX internface? If so, i assume you could use just that and do not need a special addional RF interface.

Hello, everyone,

I want to use this nice knxd addon to have all of my smart home stuff in one place.
Unfortunately I can’t get the configuration right. After a lot of fiddling, I managed to get a standalone instance of knxd to work on another computer. The working configuration for me was:
KNXD_OPTS="-e 1.1.0 -E 1.1.200: 10 -u /tmp/eib -D -T -R -S --single-port --send-delay = 30 -B log,pace,single -b tpuarts:/dev/ttyknx"

I have absolutely no idea how to translate this in the addon configuration option. I also can’t find any instructions on how to translate KNXD_OPTS from the conf file into the format of the ini file.

Can someone point me in the right direction on how to translate my configuration to use the addon?

I now that there ist the “custom” option, but I can’t get any KNXD_OPTS oder KNX.ini strings saved at formated correctly there

Thanks in advance

you should be able to paste a custom ini configuration when you switch the configuration editor into YAML mode.

as for the add-no settings:

  • interface: tpuart
  • device: whatever is the correct one when connected to HA
  • address: 1.1.0
  • client address: 1.1.200:10

the options --single-port and --send-delay should not be required or have any effect on TPUART, at least they are only mentioned on USB in the ini-File docs: https://github.com/knxd/knxd/blob/e667b25df4955154dd60a6b6b85e6512d792e1a0/doc/inifile.rst

The other options ( -D -T -R -S) are part of the default ini config of the add-on

Thank you very much for the reply.
Do I have to delete everything and just enter the content of my ini file or is it more
custom_config: „[main] addr=….“

But anyway, according to your post (which is what I reckon too) the config is quite the same. So it seams to be a difference in knxd versions or maybe pure voodoo… the add on works quite well, only ETS is not working completely. I have to use my standalone knxd install for the GA assignment.

That, but using single quotes '.

And yes, I don’t see why the default config wouldn’t work for you when you select TPUART as interface and pick the correct device in the list. May I ask which adapter/gateway you are using?

I use a Busware TUL.
This is my config (works for everything except when trying to assign a Physical Address in ETS5 for the first time).

address: 1.1.0
client_address: 1.1.1:9
interface: tpuart
device: /dev/ttyACM0
log_error_level: debug
usb_filters: single,pace
custom_config: ''

Pasting this:

custom_config: '[A.unix]
path = /tmp/eib
server = knxd_unix
systemd-ignore = false
[B.tpuarts]
device = /dev/ttyACM0
driver = tpuart
filters = log,pace,single,C.pace
[C.pace]
delay = 30
filter = pace
[debug-server]
name = mcast:knxd
[main]
addr = 1.1.0
client-addrs = 1.1.200:10
connections = A.unix,server,B.tpuarts
systemd = systemd
[server]
debug = debug-server
discover = true
multi-port = false
router = router
server = ets_router
tunnel = tunnel'

results in this, when clicking “SAVE”

custom_config: >-
  [A.unix] path = /tmp/eib server = knxd_unix systemd-ignore = false [B.tpuarts]
  device = /dev/ttyACM0 driver = tpuart filters = log,pace,single,C.pace
  [C.pace] delay = 30 filter = pace [debug-server] name = mcast:knxd [main] addr
  = 1.1.0 client-addrs = 1.1.200:10 connections = A.unix,server,B.tpuarts
  systemd = systemd [server] debug = debug-server discover = true multi-port =
  false router = router server = ets_router tunnel = tunnel

which gives me that:

E00000084: [ 1:main] There is no KNX addr= in section 'main'.
F00000109: [ 1:main] Error setting up the KNX router.

But I am fine with that. I just power my standalone knxd raspi for the PA at the beginning (as this step only has to be done once when buying a new device, this is ok with me)

meh, then they changed how text fields are evaluated - worked just fine before they introduced the new visual editor. I could probably switch this custom_config requiring an ini syntax for a simple input field with custom CLI arguments.

Btw, I also have a Busware TUL and for me it’s working just fine with:

  • interface: tpuart
  • address: 0.0.1
  • client_address: 0.0.2:8
  • device: /dev/serial/by-id/usb-busware.de_TPUART_…

try also picking the device by the ID path, just to make sure it’s the correct one and your host device doesn’t expose something else than your TUL as /dev/ttyACM0

I did try the same string for device as you use. Same issue.
I did do some “mass testing” now: It’s only MDT-Hardware (I my test cases here) which need my second KNXD setup to get their first physical address. The other vendors work out of the box. I can also program the MDT-KNX-devices with the addon knxd interface as soon as they have the PA.
Just odd… makes no sense :slight_smile:

my entire home is MDT hardware, top to bottom, and I programmed everything using this add-on, also the PAs. Really odd.
Will grab new MDT hw in a couple weeks, so will see if it’s causing issues on my end now as well

Is there a way to install knxd in HA core version?
Dont want to install linux and start all my automations from the begining.

HA core is a python application. You can’t install anything “in” it, only besides on the operating system running it. But you will need to do this manually.

as farmio pointed out, knxd has nothing to do with HomeAssistant and is a standalone application you would have to install in your operating system of choice. This add-on does nothing else, but packaged as docker container tailored for the HomeAssistant OS. I am not aware that it is available on Windows though, so if you are on Windows, you might need to run it in WSL2, docker or a linux VM. Or to ease up your live, go and just buy an KNX IP interface and be done - no need for knxd in that case.

1 Like

Thank you for the answers.
KNX IP Interface costs more then 100€ unfortunately.
I have some spare BUS Couplers, that’s why I want to use KNXd.
I was looking for one work-around, installing this in HA OS using terminal SSH.
Already have packages, but still need to run some commands.
apt-get or dpkg-buildpackage
Capture

Any ideias?