Hi
I have the tubes ZB Poe coordinator EFR32. Today I first paired a couple of IKEA zigbee devices with ZHA. The shortcut button, the on/off button, the symfonisk dial and the switched outlet.
All paired, but only the on/off button and the outlet worked and showed activity in the device-log.
So I removed the ZHA integration and installed Zigbee2mqtt. There I re-paired all of the devices again. The on/off button, the dial and the switch worked and sent data. The shortcut button didn’t.
But it was a mess. It was unreliable, batteries showed empty, devices kept being removed from the network and re-paired. All without me doing something.
So I disabled Zigbee2mqtt and went back to ZHA. It re-paired all the devices, which worked.
However only the outlet now works. The switches and the dial do only have the battery and the identify entity.
The logs are still the same as a couple of hours ago. Event though I gave different names, ZHA KNOWS they are the same devices.
So I deleted them, re-paired them. Still the same. Logs are identical, no new action shown in the logs and there are only the battery and identify entities.
To me, this seems to be a bug. Or what do I do wrong?
Anyhow. How can I REALLY delete the devices from ZHA, to add them again REALLY FRESH… ? Because right now it doesn’t seem to do that.
I can’t use Zigbee2Mqtt because I have bought the wrong device for that.
I can’t use ZHA because the devices are missing entities after deleting / re-pairing them.
So, I have to wait for zigbee2mqtt to support EFR32.
I know this is absolutely no help to you three years later but posting the solution for others:
Get the IEEE address for the device in question from within the ZHA integration (go to the device, press the Zigbee info dropdown). Copy it down somewhere.
Delete the device in the ZHA integration or using the action zha.delete in developer tools
Find the zigbee database zigbee.db file in your config folder. For me, running HAOS, this involved installing the Samba add on so I could connect to the drive.
Copy the file to your desktop or somewhere, make a backup just in case, then edit it using a sql editor like DB Browser. You’ll need to delete all rows containing the IEEE address you recorded. Save the database.
Copy the file back to the home assistant config folder and restart home assistant.
My faulty device did reappear as “unk_developer” but and I deleted this. Then I was able to repair as a fresh device and it added all entities etc.
Hopefully can save someone the hours I wasted on this.
I’m a little surprised you had to go that far. I think in the last year I had to edit the db once and that was when I was building my own device and sending invalid packets. Almost always removing the offending device and rebooting will take care of cleaning the remaining references.