Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: move manuSpecificIkeaAirPurifier to zhc #7614

Merged
merged 2 commits into from
Jun 8, 2024

Conversation

sjorge
Copy link
Contributor

@sjorge sjorge commented Jun 8, 2024

Merge before Koenkk/zigbee-herdsman#1083

Still working fine after cluster has been moved:

[2024-06-08 15:11:41] debug:    z2m: Publishing get 'get' 'pm25' to 'airpurifier/bedroom'
[2024-06-08 15:11:41] debug:    z2m: Received Zigbee message from 'airpurifier/bedroom', type 'readResponse', cluster 'manuSpecificIkeaAirPurifier', data '{"particulateMatter25Measurement":65535}' from endpoint 1 with groupID 0
[2024-06-08 15:11:47] debug:    z2m: Publishing 'set' 'child_lock' to 'airpurifier/bedroom'
[2024-06-08 15:11:50] debug:    z2m: Publishing get 'get' 'child_lock' to 'airpurifier/bedroom'
[2024-06-08 15:11:50] debug:    z2m: Received Zigbee message from 'airpurifier/bedroom', type 'readResponse', cluster 'manuSpecificIkeaAirPurifier', data '{"childLock":1}' from endpoint 1 with groupID 0

Also rename to manuSpecificIkeaVocIndexMeasurement to be inline with other manufacturer specific clusters
@sjorge
Copy link
Contributor Author

sjorge commented Jun 8, 2024

Also moved msIkeaVocIndexMEasurement, renamed it to manuSpecificIkeaVocIndexMeasurement to be in line with other manufacturer specific clusters while moving.

I was still able to pair and get data from my testing VINDSTYRKA.

[2024-06-08 15:31:40] debug:    zh:controller: Device '0x90ab96fffefa5d91' joined
[2024-06-08 15:31:40] debug:    zh:controller: Device '0x90ab96fffefa5d91' accepted by handler
[2024-06-08 15:31:40] debug:    zh:controller: New device '0x90ab96fffefa5d91' joined
[2024-06-08 15:31:40] debug:    zh:controller: Creating device '0x90ab96fffefa5d91'
[2024-06-08 15:31:40] info:     zh:controller: Interview for '0x90ab96fffefa5d91' started
[2024-06-08 15:31:40] debug:    zh:controller:device: Interview - start device '0x90ab96fffefa5d91'
[2024-06-08 15:31:40] info:     z2m: Device '0x90ab96fffefa5d91' joined
[2024-06-08 15:31:40] info:     z2m: Starting interview of '0x90ab96fffefa5d91'
[2024-06-08 15:31:40] debug:    zh:controller: Device '0x90ab96fffefa5d91' joined
[2024-06-08 15:31:40] debug:    zh:controller: Device announce '0x90ab96fffefa5d91'
[2024-06-08 15:31:40] debug:    z2m: Device '0x90ab96fffefa5d91' announced itself
[2024-06-08 15:31:41] debug:    zh:controller: Device '0x90ab96fffefa5d91' accepted by handler
[2024-06-08 15:31:41] debug:    zh:controller: Not interviewing '0x90ab96fffefa5d91', completed 'false', in progress 'true'
[2024-06-08 15:31:41] debug:    zh:controller:device: Interview - got node descriptor for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:41] debug:    zh:controller:device: Interview - got active endpoints for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got simple descriptor for endpoint '1' device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["modelId"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:42] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"modelId":"VINDSTYRKA"}' from endpoint 1 with groupID 0
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got 'modelID' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["manufacturerName"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:42] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"manufacturerName":"IKEA of Sweden"}' from endpoint 1 with groupID 0
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got 'manufacturerName' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["powerSource"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:42] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"powerSource":1}' from endpoint 1 with groupID 0
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got 'powerSource' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["zclVersion"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:42] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"zclVersion":8}' from endpoint 1 with groupID 0
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got 'zclVersion' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["appVersion"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:42] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"appVersion":1}' from endpoint 1 with groupID 0
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got 'applicationVersion' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["stackVersion"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:42] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"stackVersion":106}' from endpoint 1 with groupID 0
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got 'stackVersion' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["hwVersion"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:42] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"hwVersion":1}' from endpoint 1 with groupID 0
[2024-06-08 15:31:42] debug:    zh:controller:device: Interview - got 'hardwareVersion' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:42] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["dateCode"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:43] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"dateCode":"20230202"}' from endpoint 1 with groupID 0
[2024-06-08 15:31:43] debug:    zh:controller:device: Interview - got 'dateCode' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:43] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 genBasic.read(["swBuildId"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false,"sendPolicy":"immediate"})
[2024-06-08 15:31:43] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'genBasic', data '{"swBuildId":"1.0.11"}' from endpoint 1 with groupID 0
[2024-06-08 15:31:43] debug:    zh:controller:device: Interview - got 'softwareBuildID' for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:43] debug:    zh:controller:device: Interview - got simple descriptor for endpoint '242' device '0x90ab96fffefa5d91'
[2024-06-08 15:31:43] debug:    zh:controller:device: Interview - completed for device '0x90ab96fffefa5d91'
[2024-06-08 15:31:43] info:     zh:controller: Succesfully interviewed '0x90ab96fffefa5d91'
[2024-06-08 15:31:43] info:     z2m: Successfully interviewed '0x90ab96fffefa5d91', device has successfully been paired
[2024-06-08 15:31:43] info:     z2m: Device '0x90ab96fffefa5d91' is supported, identified as: IKEA VINDSTYRKA air quality and humidity sensor (E2112)
[2024-06-08 15:31:43] info:     z2m: Configuring '0x90ab96fffefa5d91'
[2024-06-08 15:31:43] debug:    zhc:setupattribute: Configure reporting: true, read: true for 0x90ab96fffefa5d91/1 msTemperatureMeasurement [{"min":"10_SECONDS","max":"1_HOUR","change":100,"attribute":"measuredValue"}]
[2024-06-08 15:31:43] debug:    zh:controller:endpoint: Bind 0x90ab96fffefa5d91/1 msTemperatureMeasurement from '0x00124b00228120b5/1'
[2024-06-08 15:31:43] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msTemperatureMeasurement.configReport([{"minimumReportInterval":10,"maximumReportInterval":3600,"reportableChange":100,"attribute":"measuredValue"}], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false})
[2024-06-08 15:31:43] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msTemperatureMeasurement.defaultRsp({"cmdId":7,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":16,"writeUndiv":false})
[2024-06-08 15:31:43] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msTemperatureMeasurement.read(["measuredValue"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false})
[2024-06-08 15:31:44] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'msTemperatureMeasurement', data '{"measuredValue":2500}' from endpoint 1 with groupID 0
[2024-06-08 15:31:44] debug:    zhc:setupattribute: Configure reporting: true, read: true for 0x90ab96fffefa5d91/1 msRelativeHumidity [{"min":"10_SECONDS","max":"1_HOUR","change":100,"attribute":"measuredValue"}]
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: Bind 0x90ab96fffefa5d91/1 msRelativeHumidity from '0x00124b00228120b5/1'
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msRelativeHumidity.configReport([{"minimumReportInterval":10,"maximumReportInterval":3600,"reportableChange":100,"attribute":"measuredValue"}], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false})
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msRelativeHumidity.defaultRsp({"cmdId":7,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":18,"writeUndiv":false})
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msRelativeHumidity.read(["measuredValue"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false})
[2024-06-08 15:31:44] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'msRelativeHumidity', data '{"measuredValue":4400}' from endpoint 1 with groupID 0
[2024-06-08 15:31:44] debug:    zhc:setupattribute: Configure reporting: true, read: true for 0x90ab96fffefa5d91/1 pm25Measurement [{"min":"1_MINUTE","max":"2_MINUTES","change":2,"attribute":"measuredValue"}]
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: Bind 0x90ab96fffefa5d91/1 pm25Measurement from '0x00124b00228120b5/1'
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 pm25Measurement.configReport([{"minimumReportInterval":60,"maximumReportInterval":120,"reportableChange":2,"attribute":"measuredValue"}], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false})
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 pm25Measurement.defaultRsp({"cmdId":7,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":20,"writeUndiv":false})
[2024-06-08 15:31:44] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 pm25Measurement.read(["measuredValue"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false})
[2024-06-08 15:31:45] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'readResponse', cluster 'pm25Measurement', data '{"measuredValue":6}' from endpoint 1 with groupID 0
[2024-06-08 15:31:45] debug:    zhc:setupattribute: Configure reporting: true, read: false for 0x90ab96fffefa5d91/1 manuSpecificIkeaVocIndexMeasurement [{"min":"1_MINUTE","max":"2_MINUTES","change":1,"attribute":"measuredValue"}]
[2024-06-08 15:31:45] debug:    zh:controller:endpoint: Bind 0x90ab96fffefa5d91/1 manuSpecificIkeaVocIndexMeasurement from '0x00124b00228120b5/1'
[2024-06-08 15:31:45] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 manuSpecificIkeaVocIndexMeasurement.configReport([{"minimumReportInterval":60,"maximumReportInterval":120,"reportableChange":1,"attribute":"measuredValue"}], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":4476,"transactionSequenceNumber":null,"writeUndiv":false})
[2024-06-08 15:31:46] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 manuSpecificIkeaVocIndexMeasurement.defaultRsp({"cmdId":10,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":4476,"transactionSequenceNumber":27,"writeUndiv":false})
[2024-06-08 15:31:46] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'attributeReport', cluster 'manuSpecificIkeaVocIndexMeasurement', data '{"measuredValue":0}' from endpoint 1 with groupID 0
[2024-06-08 15:31:46] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 manuSpecificIkeaVocIndexMeasurement.defaultRsp({"cmdId":7,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":4476,"transactionSequenceNumber":22,"writeUndiv":false})
[2024-06-08 15:31:46] info:     z2m: Successfully configured '0x90ab96fffefa5d91'
[2024-06-08 15:31:46] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 manuSpecificIkeaVocIndexMeasurement.defaultRsp({"cmdId":10,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":4476,"transactionSequenceNumber":26,"writeUndiv":false})
[2024-06-08 15:31:46] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'attributeReport', cluster 'manuSpecificIkeaVocIndexMeasurement', data '{"measuredValue":0}' from endpoint 1 with groupID 0
[2024-06-08 15:32:08] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msTemperatureMeasurement.defaultRsp({"cmdId":10,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":30,"writeUndiv":false})
[2024-06-08 15:32:08] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'attributeReport', cluster 'msTemperatureMeasurement', data '{"measuredValue":2400}' from endpoint 1 with groupID 0
[2024-06-08 15:32:09] debug:    zh:controller:endpoint: ZCL command 0x90ab96fffefa5d91/1 msRelativeHumidity.defaultRsp({"cmdId":10,"statusCode":0}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":1,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":31,"writeUndiv":false})
[2024-06-08 15:32:09] debug:    z2m: Received Zigbee message from '0x90ab96fffefa5d91', type 'attributeReport', cluster 'msRelativeHumidity', data '{"measuredValue":4500}' from endpoint 1 with groupID 0

@sjorge sjorge marked this pull request as ready for review June 8, 2024 13:46
@sjorge
Copy link
Contributor Author

sjorge commented Jun 8, 2024

I also noticed 64636 is unknown on the VINDSTYRKA but I couldn't find any info on it, the only other reference I found was in ZHC's VINDSTYRKA support and it's commented out as unknown. So I guess nobody figured out what it was yet.

PRs ready to go.

@Koenkk Koenkk merged commit 2def940 into Koenkk:master Jun 8, 2024
2 checks passed
@Koenkk
Copy link
Owner

Koenkk commented Jun 8, 2024

Thanks!

@sjorge sjorge deleted the starkvindCLuster branch June 8, 2024 15:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants