Is there a way to intercept Zigbee messages received by the controller before they are consumed by ZHA? I'm running running tests on an ESP32-C6 sensor I created using the 3.2.0 Espressif Arduino library. I'm sending a monotonically increasing value at about 20 second intervals and charting the value in HA. I get no errors return in the program but occasionally i'm missing data. I expect to see a regular stair-step pattern but occasionally ... steps (data) are missing. I'm trying to figure "who" the guilty party is: ZHA, coordinator, or the EP code and/or libraries.
#Intercept ZHA messages?
1 messages · Page 1 of 1 (latest)
zigbee network sniffer?
I don't need to sniff the air
i meant u can use a zigbee network sniffer
to see if the esp sends them
and if the "reciever" zigbee coordinator is dropping them
altho if u enable zigbee end device debug in arduino you might see the messages notbeing recieved
I think these are instances where the device didn't connect.
PTI but has to be compiled on coordinator firmware and hardware support with pins connected and readable. https://community.silabs.com/s/article/why-should-i-enable-the-pti-peripheral-x?language=en_US
Debug logging of the radio lib in zha will show the data coming and going as well. Sniffing and watching the data over the air can tell you if something is missing too
The debug level logging on the ESP32-C6 indicates that there were no errors raised connecting and sending the data. I'm collecting ZHA debug logs but that data is hard (for me) to decode. I'll be searching for relevant entries by Network ID
It looks like the ESP32-C6 occasionally glitches on startup initialization after awakening from deep sleep . I missed seeing the glitch until I changed my logging.
https://github.com/espressif/arduino-esp32/issues/11230
Nice, but fooling around with coordinator code even if I had it, is not something I'm interested in. Turns out it looks like the ESP32-C6 glitches occasionally during startup initialization when coming out of deep sleep. It's not clear if this ROM code or code compiled in the application. If it's the former 😬