Open Thread Border Router documentation mentions non-existing dummy device ‘/dev/ttyS3’ for networked OTBRs / RPI4?

I’m trying to set up a network-connected (and only network, no USB) SLZB-06M as OTBR for HA on my RPI4 (running HA OS 15.1) and the add-on documentation states “[…]When using a network device, you still need to set a dummy serial port device, e.g. /dev/ttyS3. […]”:

… but when configuring the 'network_device ’ setting and trying to use ‘/dev/ttyS3’ for the 'device ’ parameter, I get an error stating "Failed to save add-on configuration, Device ‘/dev/ttyS3’ does not exist in OpenThread Border Router (core_openthread_border_router). Got {‘device’: ‘/dev/ttyS3’, ‘baudrate’: ‘460800’, ‘flow_control’: True, ‘autoflash_firmware’: False, ‘otbr_log_level’: ‘notice’, ‘firewall’: True, ‘nat64’: False, ‘network_device’: ‘192.168.7.245:6638’} "

And sure enough, when SSH’ing in and checking for /dev/ttS*, there’s nothing there:

Using /dev/null also doesn’t work because saving returns an error saying “Failed to save add-on configuration, Device ‘/dev/null’ don’t match the filter subsystem=tty!”.

So I tried one of the ones listed under /dev/tty*, i.e. /dev/tty60 as per

… but same / similar thing: "Failed to save add-on configuration, Device ‘/dev/tty60’ does not exist in OpenThread Border Router (core_openthread_border_router). Got {‘device’: ‘/dev/tty60’, ‘baudrate’: ‘460800’, ‘flow_control’: True, ‘autoflash_firmware’: False, ‘otbr_log_level’: ‘notice’, ‘firewall’: True, ‘nat64’: False, ‘network_device’: ‘192.168.7.245:6638’} "

Sooooo… how DO I configure the OTBR add-on correctly for a network’ed device and when the system has seemingly no dummy /dev/ttyS* device(s)?

I have not used this device, but looking at this guide, it says: “Due to HA configuration limitations, you still need to have some USB device connected even with a network connection”.
Maybe try the /dev/ttyUSB0 and see what happens.

Thanks @wmaker for chiming in & well yeah… they’re just re-phrasing the odd limitation of the OTBR add-on requiring a /dev/tty* device even when using the network_device functionality. And that’s my point/question… the documentation mentions a somewhat specific “dummy” device that’s not there.

And having to have a spare and then plug in some… any rando USB device just to overcome some odd … bug (?) of the add-on / its configuration / save logic just seems wrong/odd. If anything I’d be fine with some proper dummy device or /dev/null or somewhat, but there is a /dev/tty(s) check in place… so not sure what’s up with that / and the current documentation.

Hi,
I have recently setup OTBR using this device and can guide you extensively with setup and troubleshooting. This device works perfectly with HA even over Wi-Fi/Ethernet.

Thread works only over IPv6 and absolutely requires mDNS for name resolution. Please ensure that IPv6 is enabled for your Home Assistant network and there are no VLANs. mDNS doe not work over VLANs by default. There is absolutely no need for any kind of DHCPv6 server on the network, we just need to make sure that IPv6 is enabled. That’s it.

Now, setup the SLZB-06 as Matter-over-Thread device. I am assuming that you have already setup the networking to either Ethernet or Wi-Fi. Either will do. After setting up the networking and assuming that you did not change the mDNS name of SLZB-06, you should be able to access the SLZB-06 web interface at http://slzb-06.local

I would recommend assigning a static IPv4 address to the SLZB-06. This will make setup easier.

If this works, then we proceed to next step of configuring OTBR.

For initial setup, let’s leave the port at 6638 and speed at 460800 as these are the defaults.

This is a picture of my setup from SLZB-06 dashboard:

You can see:
Radio Mode is Matter-over-Thread
MDNS address: SLZB-06.local
In socket connected, it says Yes, I client. This is HA OTBR. Initially you will not see any client connected, but we will soon change that…

In HA, install the Open Thread Border Router add-on. Make sure to install the Add-on. This will automatically add the OTBR integration, The integration is not used. All configuration is done from the OTBR add-on.

Open the HA OTBR configuration page and set the following:

The add-on configuration page shows all the available serial ports, used or unused. As you can see, I am using one serial port for Z-Wave stick. So, I randomly selected /dev/ttyS1. You can choose any unused serial port.

I selected a baud rate of 460800 which matches the baud rate of SLZB-06. Hardware flow control is off. Next we configure the Network Device:

I have assigned a static IPv4 address 192.168.250.176 to the SLZB-06 device and port is 6638 which matches what we have for SLZB-06 device. This is extremely crucial that the SLZB-06 IP address and port matches the IP address and port in HA OTBR add-on.

Disable Automatically Flash Firmware as this cannot be used for SLZB-06. Leave the log level at notice. Turn on the OTBR firewall. Turn off NAT64. Save the configuration. Start the OTBR add-on. Wait for few minutes and check the status by refreshing the OTBR add-on page. If the add-on was able to establish communication with SLZB-06 device, the add-on will remain started, otherwise it will shutdown. If you check the log, it will show the last line as shutting down mDNS (or something like that).

If the connection is established, then in HA, go to Thread integration and click Configure and the TBR should be visible.

If you did all this setup and OTBR add-on fails to stay started up, then please post here and I can help with troubleshooting.

Hope this helps.

1 Like