Z-Wave Water Valve: remove fingerprint from fortrezz, automatic refresh when join, remove manufacturerSpecificGet from poll()

This commit is contained in:
Warodom Khamphanchai
2015-09-29 16:21:08 -07:00
parent 617d53da43
commit 8040ddd6f7
2 changed files with 12 additions and 16 deletions

View File

@@ -19,7 +19,6 @@ metadata {
capability "Sensor"
fingerprint deviceId: "0x1000", inClusters: "0x25,0x72,0x86,0x71,0x22,0x70"
fingerprint deviceId: "0x1006", inClusters: "0x25"
}
// simulator metadata

View File

@@ -22,11 +22,6 @@ metadata {
fingerprint deviceId: "0x1006", inClusters: "0x25"
}
preferences {
input description: "After successful installation, please click the refresh tile to update device status",
title: "Instructions", displayDuringSetup: true, type: "paragraph", element: "paragraph"
}
// simulator metadata
simulator {
status "open": "command: 2503, payload: FF"
@@ -58,6 +53,10 @@ metadata {
}
def updated() {
response(refresh())
}
def parse(String description) {
log.trace "parse description : $description"
def result = null
@@ -70,7 +69,7 @@ def parse(String description) {
}
def zwaveEvent(physicalgraph.zwave.commands.basicv1.BasicReport cmd) {
def value = cmd.value == "on" || cmd.value == 0xFF ? "open" : cmd.value == "off" || cmd.value == 0x00 ? "closed" : "unknown"
def value = cmd.value == 0xFF ? "open" : cmd.value == 0x00 ? "closed" : "unknown"
[name: "contact", value: value, descriptionText: "$device.displayName valve is $value"]
}
@@ -89,7 +88,7 @@ def zwaveEvent(physicalgraph.zwave.commands.deviceresetlocallyv1.DeviceResetLoca
}
def zwaveEvent(physicalgraph.zwave.commands.switchbinaryv1.SwitchBinaryReport cmd) {
def value = cmd.value == "on" || cmd.value == 0xFF ? "open" : cmd.value == "off" || cmd.value == 0x00 ? "closed" : "unknown"
def value = cmd.value == 0xFF ? "open" : cmd.value == 0x00 ? "closed" : "unknown"
[name: "contact", value: value, descriptionText: "$device.displayName valve is $value"]
}
@@ -112,16 +111,14 @@ def close() {
}
def poll() {
delayBetween([
zwave.switchBinaryV1.switchBinaryGet().format(),
zwave.manufacturerSpecificV1.manufacturerSpecificGet().format()
],100)
zwave.switchBinaryV1.switchBinaryGet().format()
}
def refresh() {
log.debug "refresh() is called"
delayBetween([
zwave.switchBinaryV1.switchBinaryGet().format(),
zwave.manufacturerSpecificV1.manufacturerSpecificGet().format()
],100)
def commands = [zwave.switchBinaryV1.switchBinaryGet().format()]
if (getDataValue("MSR") == null) {
commands << zwave.manufacturerSpecificV1.manufacturerSpecificGet().format()
}
delayBetween(commands,100)
}