Hello, I am having trouble changing my preferred thread network. Currently, it is set to my Apple network, but I would like to access the HA thread network. Unfortunately, completely deleting it did not resolve the issue.
Iâm not sure, but it seems that HA has discovered the OTBR (via mDNS), but it looks like the OTBR Integration has not been setup (either automatically or manually) to connect to the OTBR and consequently this Thread Integration is not giving you any way to join the OTBR to the Thread network.
I suggest taking a look at the OTBR Integration and see if there are any entries, and reload it. You may have to delete the OTBR Integration and re-add it.
Iâve already tried that. I deleted OTBR, including all data. I set it up again, but I canât change the network. The Apple network always remains selected. There is a log in the spoiler.
Summary
[19:08:04] INFO: The otbr-web is disabled.
s6-rc: info: service mdns: starting
s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service mdns successfully started
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service banner: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
[19:08:04] INFO: Starting mDNS ResponderâŚ
Default: mDNSResponder (Engineering Build) (Oct 28 2025 07:36:47) starting
Add-on: OpenThread Border Router
OpenThread Border Router add-on
Add-on version: 2.15.0
You are running the latest version of this add-on.
System: Home Assistant OS 16.2 (amd64 / qemux86-64)
Home Assistant Core: 2025.10.4
Home Assistant Supervisor: 2025.10.0
Please, share the above information when looking for help
or support in, e.g., GitHub, forums or the Discord chat.
s6-rc: info: service banner successfully started
s6-rc: info: service otbr-agent: starting
[19:08:05] INFO: Setup OTBR firewallâŚ
[19:08:05] INFO: Migrating OTBR settings if neededâŚ
2025-10-28 19:08:05 homeassistant asyncio[226] DEBUG Using selector: EpollSelector
2025-10-28 19:08:05 homeassistant zigpy.serial[226] DEBUG Opening a serial connection to â/dev/serial/by-id/usb-Nabu_Casa_Home_Assistant_Connect_ZBT-1_780478233912f011bf090714773d9da9-if00-port0â (baudrate=460800, xonxoff=False, rtscts=False)
2025-10-28 19:08:05 homeassistant zigpy.serial[226] DEBUG Connection made: SerialTransport(<_UnixSelectorEventLoop running=True closed=False debug=False>, <universal_silabs_flasher.spinel.SpinelProtocol object at 0x7fbbbc168310>, Serial<id=0x7fbbbc194a90, open=True>(port=â/dev/serial/by-id/usb-Nabu_Casa_Home_Assistant_Connect_ZBT-1_780478233912f011bf090714773d9da9-if00-port0â, baudrate=460800, bytesize=8, parity=âNâ, stopbits=1, timeout=0, xonxoff=False, rtscts=False, dsrdtr=False))
2025-10-28 19:08:05 homeassistant universal_silabs_flasher.spinel[226] DEBUG Sending frame SpinelFrame(header=SpinelHeader(transaction_id=3, network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_GET: 2>, data=bâ\x08â)
2025-10-28 19:08:05 homeassistant universal_silabs_flasher.spinel[226] DEBUG Sending data bâ~\x83\x02\x08\xbc\x9a~â
2025-10-28 19:08:05 homeassistant universal_silabs_flasher.spinel[226] DEBUG Decoded HDLC frame: HDLCLiteFrame(data=bâ\x83\x06\x08\x04\xe3\xe5\xff\xfek\xd3\xf1â)
2025-10-28 19:08:05 homeassistant universal_silabs_flasher.spinel[226] DEBUG Parsed frame SpinelFrame(header=SpinelHeader(transaction_id=3, network_link_id=0, flag=2), command_id=<CommandID.PROP_VALUE_IS: 6>, data=bâ\x08\x04\xe3\xe5\xff\xfek\xd3\xf1â)
2025-10-28 19:08:05 homeassistant zigpy.serial[226] DEBUG Waiting for serial port to close
2025-10-28 19:08:05 homeassistant zigpy.serial[226] DEBUG Connection lost: None
Settings file /data/thread/0_4e3e5fffe6bd3f1.data is not a valid OTBR settings file, skipping
No existing settings files found, skipping
[19:08:05] INFO: Starting otbr-agentâŚ
[NOTE]-AGENTâ: Running 0.3.0-b067e5ac-dirty
[NOTE]-AGENTâ: Thread version: 1.3.0
[NOTE]-AGENTâ: Thread interface: wpan0
[NOTE]-AGENTâ: Radio URL: spinel+hdlc+uart:///dev/serial/by-id/usb-Nabu_Casa_Home_Assistant_Connect_ZBT-1_780478233912f011bf090714773d9da9-if00-port0?uart-baudrate=460800&uart-flow-control
[NOTE]-AGENTâ: Radio URL: trel://enp6s18
[NOTE]-ILS-----: Infra link selected: enp6s18
52d.02:24:55.921 [C] P-SpinelDrive-: Software reset co-processor successfully
00:00:00.034 [N] RoutingManager: BR ULA prefix: fd5b:4139:abce::/48 (loaded)
00:00:00.034 [N] RoutingManager: Local on-link prefix: fdde:ad00:beef:cafe::/64
00:00:00.042 [W] P-Netif-------: Failed to process request#2: No such process
s6-rc: info: service otbr-agent successfully started
s6-rc: info: service otbr-agent-configure: starting
Done
s6-rc: info: service otbr-agent-configure successfully started
s6-rc: info: service otbr-agent-rest-discovery: starting
00:00:00.456 [W] P-Daemon------: Failed to write CLI output: Broken pipe
[19:08:06] INFO: Successfully sent discovery information to Home Assistant.
s6-rc: info: service otbr-agent-rest-discovery successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
Sounds like youâre referring to the Add-on, which appears to be working, but what you seem to be missing is the Integration, which lets HA control the add-on. Do you have one of these in your list of integrations?
If thatâs missing or failed, you might need to add it again. When the Integration and Add-on are working together, your OTBR network should have the circled (i) icon meaning the credentials are known, and the TBRâs three-dot menu gets added functionality like âadd to preferred networkâ.
When I want to add the integration, I am asked to specify a URL for the REST API. What should I enter there?
This was what I was referring to earlier about the OTBR IntegrationâŚwhat installation are you using? HAOS?
I use HAOS via VM in Proxmox.
If you are using HAOS, this should be auto-discovered otherwise should be something like http://core-openthread-border-router:8081/
Okay, I did that, and now it looks like this
Now my HA Border router is also listed as a preferred network.
Shouldnât I still be able to remove the HomePods as preferred networks?
No, you have a single network with three routers â they are all sharing a common set of credentials and forming a strong mesh that provides redundant routes to your wifi subnet, which is usually preferable. You also have the option of commissioning to both Apple Home and HA apps/fabrics (sometimes Appleâs works better for commissioning), since Matter supports multi-fabric control.
If you really want to use OTBR only and not Apple, you can click the three-dot menu and âresetâ that router which will form a new network, then you can make that your preferred network, but the new network will lack redundancy, will never have the HomePods because Apple canât join existing networks, and you wonât be able to use Apple Home for commissioning. Personally I would not recommend this option.
Realize that now that are all one Thread network. There are pros and cons about having multiple TBRs, but before you remove them/unplug them, click on the 3-dots for the HA OTBR and select it for the iOS/Android credentials where you should then see a âkey in a phoneâ icon. Credentials are tied to an TBR when pairing a device. This may actually be a problem because I suspect you have the Thread creds already stored on your iOS device and you gave it to HA so your Creds may already be on your phone stored against an existing Apple TBR. You should be able to delete existing Thread creds in your iOS device using the HA Companion App. and then you can âSend credentials to phoneâ.
BTW from what Peter said, unless you start experiencing problems later on, it doesnât hurt to keep you Apple TBRs connected.
I have already sent my Thread credentials to HA and my iPhone. And the HA Border has already been selected for Android and iOS access data. However, I donât see any option to delete Thread credits in the companion app.
Edit: Found the option and deleted all unnecessary login details.
Iâve been experimenting a bit more.
I tried adding an EVE Motion Sensor and a QingPing Thermometer via Thread (without Matter). First, I connect them to Apple Home, then I delete them from Home. HA then finds them, I try to add them to HA, but I get a message saying that the device is already in use. After that, it can no longer be found and I have to reset it. I canât find it in HA either. Do you have any advice?
You may have to provide more details about this âŚ
- where in HA to you see that HA finds them?
- How did you try to add them to HA?
When I go to HomeKit Device integration and then Add Entry, I find the QingPing thermometer or my EVE Motion. I am then prompted to enter an 8-digit HomeKit code. I do so, and HA attempts to connect the device. However, I then receive a message stating that the device is already connected and cannot be connected multiple times.
Canât anyone help me with this?
I donât know too much about Apple Homekit, but from what I have read, this may be because the QingPing thinks its is still connected to a Homekit controller.
Since this topic/thread was more about Thread credentials which I think has been resolved, I suggest you open up a new Thread regarding your Homekit pairing problem as it may get Homekit users to take a look at it.



