I am trying to get started with my first ESP32-H2-Zero microcontroller (from WaveShare). It is very low power and does not have wifi. I specifically picked it because I am trying to keep my wifi clean and double down on matter over thread.
I have a ZBT-2 antenna on my system and it is configured for Matter (which means it does not support Zigbee).
I created my device in esphome but the device appears offline. How can I add it to my matter/thread network? the default mechanism is to scan a bar code, but there is no bar code to scan as it is a custom device I just created. How can I download a key or something and get it to bind to my HA? Other matter devices seem to require my phone and bluetooth to do the binding, but I am not seeing how I can add this device.
Has anyone created a matter/thread device with esphome and added it to HA?
Update: the flash process I used does not seem to be bootable. I was able to connect to the device and download the logs from it, and this is what I see. It looks like the partition (factory) that I uploaded the image to is not bootable. I don’t know which partition I need to use to make this bootable. I kept a copy of the original factory image. Should I flash that back, and then flash this image to the first empty address after it? Or how do I designate a partition as bootable?
It is a new board, and this is my first attempt to get it running. It fails to initialize or flash via the device management tool. I had to use the raw esp connect tool to flash an image. The image flashes fine but the board is not bootable after the flash. I think there is a bug in esphome regarding this board, and I obviously don’t know enough about how to work around the issue with the raw esp connect tool. The only logs I get are the ones I put in the question.
Good news, I have figured it out. There needs to be a better guide for this process. What I discovered after reading a few other blogs is that matter/thread provisioning with ESPHome is different than straight up HA. You capture your TLVs string from Settings | integrations | thread | configure (gear icon), then the info icon on that screen. It is a long string.
Then you wipe out the wifi and captive portal section in your yaml file, and inject the following, substituting your TLVs string:
network:
enable_ipv6: true
openthread:
tlv:
Once you get this flashed to your board, the device will automatically authenticate to the thread border router using that information. This replaces the standard matter/thread provisioning using bluetooth and screen capturing a bar code. Once you boot your board, it should just show up as a discovered device and you can then configure it and add it to your dashboard.
Did this really solved the boot loop problem? I did it exactly the same (various reciepts exists on the net). But I cannot leave the boot loop telling me