Skip to content

Commit

Permalink
fix(config): work around broken firmware of Intermatic PE653 (zwave-j…
Browse files Browse the repository at this point in the history
  • Loading branch information
j9brown committed May 10, 2022
1 parent 6704313 commit 6553824
Showing 1 changed file with 58 additions and 0 deletions.
58 changes: 58 additions & 0 deletions packages/config/config/devices/0x0005/pe653.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,5 +55,63 @@
"maxValue": 7,
"defaultValue": 0
}
],
"endpoints": {
"0": {
"associations": {
"1": {
"label": "Lifeline",
"maxNodes": 5,
"isLifeline": true
}
}
}
},
"compat": [
{
// Fixes #4588: Firmware v3.4 has numerous bugs related to multi-endpoint support.
// Firmware v3.3 and v3.1 do not appear to have the same issues.
"$if": "firmwareVersion === 3.4",
"commandClasses": {
// Force use of MultiChannelCC v1.
"add": {
"0x60": {
"isSupported": true,
"version": 1
}
},
// The firmware handles requests on some endpoints incorrectly, often reporting garbage
// that confuses discovery or inhibits operation. Remove all of these broken CCs.
"remove": {
// BasicCC: All endpoints control the state of Switch 1 so only keep the root endpoint
// to reduce clutter and to handle received BASIC_SET events.
"0x20": {
"endpoints": [1, 2, 3, 4, 5]
},
// ManufacturerSpecificCC: Endpoint 1 erroneously reports an incorrect manufacturer
// and product ID, unlike on the root endpoint.
"0x72": {
"endpoints": [1]
},
// ClockCC: Endpoint 1 erroneously reports a time with an invalid minute field,
// unlike on the root endpoint.
"0x81": {
"endpoints": [1]
},
// AssociationCC: Endpoint 1 erroneously reports that it supports 133 associated nodes
// but association commands don't work at all, unlike on the root endpoint.
"0x85": {
"endpoints": [1]
},
// VersionCC: Endpoint 1 reports an unknown version, unlike on the root endpoint.
"0x86": {
"endpoints": [1]
}
}
},
// The device sometimes sends BASIC_SET to the lifeline association when the state of Switch 1
// changes but the value is always 0 so treat it as an event.
"treatBasicSetAsEvent": true
}
]
}

0 comments on commit 6553824

Please sign in to comment.