Closed dignifiedquire closed 3 months ago
Pairing worked without issues, but now getting this in the logs
Zigbee2MQTT:debug 2024-04-02 17:31:02: Received Zigbee message from '0x000d6f0019104fa8', type 'attributeReport', cluster 'manuSpecificTuya_2', data '{"16384":4024,"16388":2344,"16389":194,"16393":1000}' from endpoint 3 with groupID 0 Zigbee2MQTT:debug 2024-04-02 17:31:02: No converter available for '8750001213' with cluster 'manuSpecificTuya_2' and type 'attributeReport' and data '{"16384":4024,"16388":2344,"16389":194,"16393":1000}'
0x000d6f0019104fa8
I confirmed that this is the twinguard
Hi @dignifiedquire, I did some of the very recent work on the Twinguard converter. ✋
What's your Z2M version/build? Also please share your Twinguard's firmware build, if possible.
Status output
Last seen N/A
Availability Disabled
Device type EndDevice
Zigbee Model Champion
Zigbee Manufacturer BOSCH ST
Description Twinguard
Support status Supported
IEEE Address 0x000d6f0019104fa8
Network address 0xCE7E
Firmware build date 20230420
Firmware version 6b6048b
Manufacturer [Bosch](https://www.zigbee2mqtt.io/supported-devices/#v=Bosch)
Model 8750001213
Power Battery
Interview completed True
I am running Z2M from master
, version 1.36.1
Unfortunately it seems though none of the values are getting populated though
Aha, I see. Just upgraded my dev setup to the latest release myself, and see the same thing.
The cluster manuSpecificBosch3
that should be on Endpoint 3
gets somehow misidentified as manuSpecificTuya_2
...
@dignifiedquire Can you please do me a favor, while I investigate? Go to Dev console and issue a read on Endpoint 3
, at cluster manuSpecificBosch3
, for attribute airpurity
. VOC & CO2 should now display a value.
Didn't work unfortunately, these are the logs
Zigbee2MQTT:debug 2024-04-02 22:51:54: Received MQTT message on 'zigbee2mqtt/0x000d6f0019104fa8/3/set' with data '{"read":{"attributes":["airpurity"],"cluster":"manuSpecificBosch3","options":{}}}'
Zigbee2MQTT:debug 2024-04-02 22:51:54: Publishing 'set' 'read' to '0x000d6f0019104fa8'
Zigbee2MQTT:debug 2024-04-02 22:51:55: Received Zigbee message from '0x000d6f0019104fa8', type 'readResponse', cluster 'manuSpecificTuya_2', data '{"16387":0}' from endpoint 3 with groupID 0
Zigbee2MQTT:debug 2024-04-02 22:51:55: No converter available for '8750001213' with cluster 'manuSpecificTuya_2' and type 'readResponse' and data '{"16387":0}'
Zigbee2MQTT:info 2024-04-02 22:51:55: Read result of 'manuSpecificBosch3': {"16387":0}
Zigbee2MQTT:debug 2024-04-02 22:51:56: Received Zigbee message from '0x000d6f0019104fa8', type 'readResponse', cluster 'manuSpecificTuya_2', data '{"16387":0}' from endpoint 3 with groupID 0
Zigbee2MQTT:debug 2024-04-02 22:51:56: No converter available for '8750001213' with cluster 'manuSpecificTuya_2' and type 'readResponse' and data '{"16387":0}'
Zigbee2MQTT:info 2024-04-02 22:51:56: Read result of 'manuSpecificBosch3': {"16387":0}
Ok, so I think I know what's going on here.
The latest release includes updated ZCL definitions, and some of them, namely zosungIRControl
and manuSpecificTuya_2
, share IDs with custom clusters from Bosch.
And when support for Twinguard was first introduced, the ID (e.g. 0xE002) for each those clusters was used, instead of the then yet unspecified cluster name.
@Koenkk I'm preparing a hotfix 🔥 for this. Is it sufficient for clusters in ZCL to have a unique name or must the ID also be unique across clusters?
Edit: Also the manufacturerCode
for Bosch is incorrect. Bug found & squashed. 🐛
appreciate the quick response, will wait for new code to test :)
appreciate the quick response, will wait for new code to test :)
Happy to help. Besides, my own Twinguard also no longer works. 😉
Hotfixes are ready to be merged, but there's a chance that a rollback of ZCL might be required, if IDs have to be globally unique.
Also, we'll probably have to reset & re-pair our Twinguards, just FYI.
Edit: Can confirm that as soon as my PRs are merged & released, everything just works.™
Okay, pulled your two PRs and can confirm that it works now
On question, how do you update your twinguards? I am trying to avoid having to buy the bosch smart home bridge 😅 I already have too many bridges in my house.
The only error that is popping up constantly now is
Zigbee2MQTT:error 2024-04-03 15:19:23: Failed to apply calibration to 'temperature': 'temperature_precision' is not a number, got string ()
On question, how do you update your twinguards? I am trying to avoid having to buy the bosch smart home bridge 😅 I already have too many bridges in my house.
Excellent question! I was in a similar position, and 'am now moving everything to Z2M. Already eliminated two Hue Bridges. 😏 It's currently a bit difficult to get OTA blobs for Bosch devices... So I'm still using my BSHC Gen. I to update new devices. An official firmware repository hasn't been found yet, AFAIK.
The only error that is popping up constantly now is
Zigbee2MQTT:error 2024-04-03 15:19:23: Failed to apply calibration to 'temperature': 'temperature_precision' is not a number, got string ()
Hmm, you tried setting a calibration for your Twinguard? Did you used the slider? Seems to work fine for me. 🤔
Edit: I'll also suggest you reconfigure 🔄 the Twinguard once, just for good measure.
Okay, pulled your two PRs and can confirm that it works nows
Would you mind sharing a bit about your Z2M setup? I guess you're not running it in a container?
Would you mind sharing a bit about your Z2M setup? I guess you're not running it in a container?
No just directly on my laptop (mac m1), with a sonoff zigbee dongle. So I can easily test things out
Hmm, you tried setting a calibration for your Twinguard? Did you used the slider? Seems to work fine for me. 🤔
Edit: I'll also suggest you reconfigure 🔄 the Twinguard once, just for good measure.
Did both, it shows now 0
and reconfigured the twinguards afterwards. The error still shows up
some logs if helpful
Zigbee2MQTT:debug 2024-04-03 17:49:22: Received Zigbee message from '0x000d6f0019104fa8', type 'attributeReport', cluster 'manuSpecificBosch3', data '{"humidity":5234,"temperature":2073,"unknown3":22,"unknown5":978}' from endpoint 3 with groupID 0
Zigbee2MQTT:error 2024-04-03 17:49:22: Failed to apply calibration to 'temperature': 'temperature_precision' is not a number, got string ()
Zigbee2MQTT:info 2024-04-03 17:49:22: MQTT publish: topic 'zigbee2mqtt/0x000d6f0019104fa8', payload '{"aqi":0,"co2":500,"heartbeat":"ON","humidity":52.34,"illuminance_lux":0,"linkquality":135,"pre_alarm":"ON","self_test":false,"sensitivity":"medium","siren_state":"clear","smoke":false,"temperature":20.73,"voc":0}'
zh:zstack:unpi:parser: <-- [254,45,68,129,0,0,2,224,118,208,3,1,0,99,0,65,84,238,0,0,25,28,9,18,88,10,0,64,33,227,20,4,64,41,52,8,5,64,33,221,1,9,64,33,232,3,118,208,29,61]
zh:zstack:unpi:parser: --- parseNext [254,45,68,129,0,0,2,224,118,208,3,1,0,99,0,65,84,238,0,0,25,28,9,18,88,10,0,64,33,227,20,4,64,41,52,8,5,64,33,221,1,9,64,33,232,3,118,208,29,61]
zh:zstack:unpi:parser: --> parsed 45 - 2 - 4 - 129 - [0,0,2,224,118,208,3,1,0,99,0,65,84,238,0,0,25,28,9,18,88,10,0,64,33,227,20,4,64,41,52,8,5,64,33,221,1,9,64,33,232,3,118,208,29] - 61
zh:zstack:znp: AREQ: <-- AF - incomingMsg - {"groupid":0,"clusterid":57346,"srcaddr":53366,"srcendpoint":3,"dstendpoint":1,"wasbroadcast":0,"linkquality":99,"securityuse":0,"timestamp":15619137,"transseqnumber":0,"len":25,"data":{"type":"Buffer","data":[28,9,18,88,10,0,64,33,227,20,4,64,41,52,8,5,64,33,221,1,9,64,33,232,3]}}
zh:controller: Received 'zcl' data '{"frame":{"Header":{"frameControl":{"frameType":0,"manufacturerSpecific":true,"direction":1,"disableDefaultResponse":true,"reservedBits":0},"transactionSequenceNumber":88,"manufacturerCode":4617,"commandIdentifier":10},"Payload":[{"attrId":16384,"dataType":33,"attrData":5347},{"attrId":16388,"dataType":41,"attrData":2100},{"attrId":16389,"dataType":33,"attrData":477},{"attrId":16393,"dataType":33,"attrData":1000}],"Command":{"ID":10,"name":"report","parameters":[{"name":"attrId","type":33},{"name":"dataType","type":32},{"name":"attrData","type":1000}]}},"address":53366,"endpoint":3,"linkquality":99,"groupID":0,"wasBroadcast":false,"destinationEndpoint":1}'
zh:zstack:unpi:parser: --- parseNext []
Zigbee2MQTT:debug 2024-04-03 17:51:11: Received Zigbee message from '0x000d6f001910500e', type 'attributeReport', cluster 'manuSpecificBosch3', data '{"humidity":5347,"illuminance_lux":477,"temperature":2100,"unknown5":1000}' from endpoint 3 with groupID 0
Zigbee2MQTT:info 2024-04-03 17:51:11: MQTT publish: topic 'zigbee2mqtt/0x000d6f001910500e', payload '{"aqi":0,"battery":100,"co2":500,"heartbeat":"ON","humidity":53.47,"illuminance_lux":239,"linkquality":99,"pre_alarm":"ON","self_test":false,"siren_state":"clear","smoke":false,"temperature":21,"voc":0}'
also note, voc
seems to be 0
most of the time, is this expected?
also note,
voc
seems to be0
most of the time, is this expected?
When AQI is also zero and your indoor air is clean and/or well ventilated, then yes. 😉
temperature_precision is not a number, got string ()
Hmm, seems like you have set it to string in your configuration.yaml
?
Make sure temperature_precision
is actually a number (i.e. without quotes).
Pairing worked without issues, but now getting this in the logs
0x000d6f0019104fa8
I confirmed that this is the twinguard