SONOFF SNZB-02/TH01 - no values reported

I have an old SONOFF SNZB-02 / TH01 (firmware 20200718) which works greats since I added it. I have values every 5 minutes.

I recently bought a bunch of new ones (firmare 20211103) because the old one is so reliable and they were very cheap. But I can’t get them to work. I paired via Phoscon App and they showed up - but it was never a value reported. I opened the deCONZ GUI and paired again. I was able to read once after paring but no more values reported.

Then I tried setting the bindings manualla like decribed here: SONOFF SNZB-02 · Issue #3037 · dresden-elektronik/deconz-rest-plugin · GitHub - writing was successful but still no values reported.

What else can I do?

BTW: After paring the “Report Interval” stuff is different from whats in the DDF. Is that normal or should it match?

And: is there an explaination how to read these intervals?

The value 65535 = 0xFFFF mean disabled.
So yes the problem can com from here, better to set value from the DDF.
Deconz can have problem to set the device, it’s a sleeper one. Are you able to set correct reporting ?
Can try a second inclusion (without deleting the device)

Just to be sure to understand your question : you seems comparing the item reporting stuff to the binding reporting stuff (your two screenshots) and you want to know why they are different ?

Because for bindings, DDF and your screenshot are the same :

{
		"bind": "unicast",
		"src.ep": 1,
		"cl": "0x0402",
		"report": [{
			"at": "0x0000",
			"dt": "0x29",
			"min": 5,
			"max": 1800,
			"change": "0x0000000A"
		}]

For me the question is : from where the item reporting values came from ? ( as they are not populated by the DDF)

I found a way to get it working here: https://github.com/Koenkk/zigbee2mqtt/issues/8971#issuecomment-933473038

Removing the battery + deleting it from phoscon before pairing it looks like is the key. The DDF reporting properties are set and I can set my own. But only in the short timerange after paring. Resetting it again without deleting it first does not work. DDF reporting properties are set and I can set my own - but it does not update the values. Even if I remove the battery before resetting. Only removing battery + deleting in phoscon works.

so you always end up getting new IDs for the sensors. Is there something you can do about that?

My interpretation of the Reprting Configuration ist: if the value changed more (or equal?) than “Reportable Change” AND “Min Report Interval” (seconds) has passed it updates the value. If “Reportable Change” is not reached after “Max Report Interval” (seconds) it is updated anyways? So Setting it to 5, 600, 100 it updated every 5 seconds if the temperature changed at least 0,1° (20,00° is 2000). If the value does not change enough in 10 minutes it is updating anyways. Correct?

So it mean deconz don’t remake bind/report at each inclusion but only if the device is new ?

If I m right.
min > the minimum time without notification.
max > the maximum time beetween 2 notification.
Change > can trigger a notification if min and max are respected (can be optionnal)

Have found that too

zigbee_configuration

2 Likes

Yea - and it looks like the battery has to be removed before resetting. And even if I set alle reporting values myself (write is successful and read returns the data I just set) it won’t report.

Setting reporting values after a successful battery-remove-reset-pair-dance works perfect. I am going with 60 / 600 / 10 for temperature now