Door Contacts

Does anybody know how (SONOFF in particular) door contacts report status? Report a status change only? Report status change and every ‘x’ minutes? For the most part, can “we” poll every so often?

I have been having good luck with SONOFF -4’s. But my most distant device is 30 feet.

Is there such a thing as a Zigbee “sniffer” to monitor traffic?

30 feet from what? Note that Zigbee sets up a mesh network but only mains powered devices will act as repeaters/routers. To improve the performance of your Zigbee network or extend it the best approach is to acquire and deploy one or more mains powered Zigbee devices (e.g. smart plugs). These will improve the mesh and reduce the range the battery powered devices need to transmit to in order to eventually reach the coordinator.

I’m sure there is, but you can learn a whole lot just by putting the binding into debug logging and watching the logs.

I don’t know SONOFF in specific, but in general for battery powered devices they wake up when every they darn well feel like it and report what they have to report. There is no such thing as polling a battery powered device and these devices do not typically report anything unless there is something to report. So the device likely wakes up when it’s sensor changes state and reports that and maybe once a day or so reports battery level status. It might wake up periodically to see if there is some request from the coordinator for something.

Any other behavior and the battery will last days to weeks, not months to years.

It’s hardware specific, but all report regularly even without a status change: The “laziest” I ever had were some fire-sensors reporting every 10 hours. All of my contact sensors are below 3 hours. You can check it in zigbee2mqtt in the last seen property. I use a rule that checks once a day if a sensor was not seen for more than 12 hours to make sure they’re all alive.

Yes, you need a cc2531 zigbee-stick and have to load a special sniffing-firmware on it. Its described here:
Sniff Zigbee traffic | Zigbee2MQTT.
But it’s only necessary when a certain feature or command is not working and you want to provide information to correct that.Unfortunately many zigbee-devices don’t have perfect zigbee implementations so that corrections are made e.g. in zigbee2mqtt.
To check the mqtt-traffic mqtt-explorer or on the phone mqtt-snooper are helpful.

Results for a SNZB-01 (lastseen from Zigbee2MQTT):

So it looks like the button wakes up every 80 minutes (not sure whether the wakeup intervall was configured by Zigbee2MQTT or is hard-wired though).

Actually, now that you mention it, my coordinator is 8’ from a plug! And then it is 15’ from another. And 3 switches are within 10’!

It would be worth a $15 to add an unused plug the other direction as a repeater!

Realistically, only powered zigbee are useful as repeaters then?!

Not just realistically: factually! Only mains powered ZigBee devices act as repeaters. Battery powered devices do not act as repeaters.

Learning every day!