Does Hubitat support NWI?
According to the documentation for the Fortrezz SSA1 hub, it should include during power on.
I've run a general exclude, but can't get it to show up when discovering new devices.
We don’t have a built-in driver for it that I am aware of. However, I got it to work easily by modifying the Z-Wave Siren DTH I found in the ST public repo.
BTW, I hate that device. When I was messing with it I would set it off, and not be able to shut it off. Learned the hard way to leave the battery out while testing, and to be sure to have an easy way pre-arranged to turn it off, either physically or with an app.
I am not able to get it to even show up as a device (Discover Devices) so that I can change the driver. I’ve gone through the general exclude and it appears to be successful but on Discovery (within 3ft of the hub), it’s not showing up on boot of the siren or pressing the program button.
Are you sure it’s excluded and reset. I think there is some factory reset procedure, like hold the button down for a long time.
I finally got it. Thanks!
I set it as a Generic z-wave switch and was able to set the siren on/off.
I eventually grabbed the “SmartAlert Siren” code, modified it for Hubitat and it’s working now.
So to answer the initial question, Hubitat does support NWI as mentioned in the screenshot/documentation. I didn’t have to “exit NWI mode” to include.
@rayzurbock do you mind sharing your driver code? I installed mine as a z-wave switch which worked at first but it is no longer working.
/**
* Copyright 2017 Rayzurbock (Hubitat port)
* Copyright 2015 SmartThings
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
* in compliance with the License. You may obtain a copy of the License at:
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License
* for the specific language governing permissions and limitations under the License.
*
* SmartAlert Siren
*
* Author: SmartThings
* Date: 2013-03-05
* Rev.H1 - Adapted for Hubitat by Rayzurbock
*/
metadata {
definition (name: "FortrezZ Siren", namespace: "rayzurbock", author: "rayzurbock") {
capability "Actuator"
capability "Switch"
capability "Sensor"
capability "Alarm"
capability "Health Check"
command "test"
fingerprint deviceId: "0x1100", inClusters: "0x26,0x71"
fingerprint mfr:"0084", prod:"0313", model:"010B", deviceJoinName: "FortrezZ Siren Strobe Alarm"
}
}
def installed() {
// Device-Watch simply pings if no device events received for 32min(checkInterval)
sendEvent(name: "checkInterval", value: 2 * 15 * 60 + 2 * 60, displayed: false, data: [protocol: "zwave", hubHardwareId: device.hub.hardwareID, offlinePingable: "1"])
}
def updated() {
// Device-Watch simply pings if no device events received for 32min(checkInterval)
sendEvent(name: "checkInterval", value: 2 * 15 * 60 + 2 * 60, displayed: false, data: [protocol: "zwave", hubHardwareId: device.hub.hardwareID, offlinePingable: "1"])
}
def on() {
[
zwave.basicV1.basicSet(value: 0xFF).format(),
zwave.basicV1.basicGet().format()
]
}
def off() {
[
zwave.basicV1.basicSet(value: 0x00).format(),
zwave.basicV1.basicGet().format()
]
}
def test() {
[
zwave.basicV1.basicSet(value: 0xFF).format(),
"delay 3000",
zwave.basicV1.basicSet(value: 0x00).format(),
zwave.basicV1.basicGet().format()
]
}
def strobe() {
[
zwave.basicV1.basicSet(value: 0x21).format(),
zwave.basicV1.basicGet().format()
]
}
def siren() {
[
zwave.basicV1.basicSet(value: 0x42).format(),
zwave.basicV1.basicGet().format()
]
}
def both() {
[
zwave.basicV1.basicSet(value: 0xFF).format(),
zwave.basicV1.basicGet().format()
]
}
def parse(String description) {
log.debug "parse($description)"
def result = null
def cmd = zwave.parse(description, [0x20: 1])
if (cmd) {
result = createEvents(cmd)
}
log.debug "Parse returned ${result}"
return result
}
def createEvents(hubitat.zwave.commands.basicv1.BasicReport cmd)
{
def switchValue = cmd.value ? "on" : "off"
def alarmValue
if (cmd.value == 0) {
alarmValue = "off"
}
else if (cmd.value <= 33) {
alarmValue = "strobe"
}
else if (cmd.value <= 66) {
alarmValue = "siren"
}
else {
alarmValue = "both"
}
[
createEvent([name: "switch", value: switchValue, type: "digital", displayed: false]),
createEvent([name: "alarm", value: alarmValue, type: "digital"])
]
}
def zwaveEvent(hubitat.zwave.Command cmd) {
log.warn "UNEXPECTED COMMAND: $cmd"
}
/**
* PING is used by Device-Watch in attempt to reach the Device
* */
def ping() {
secure(zwave.basicV1.basicGet())
}
I added the driver, selected the device and changed the device type to Fortrezz Siren. Added it to HSM under siren and it didn't kick off when I tested the alarm. I tried turning it on under devices and it didn't work.
Am I missing a step?
I attempted to remove the damn thing. Exclusion didn't work when I removed the device so I went to remove it manually from the ZWave settings. No luck. Strong considering giving up on this one. This is the only piece I haven't been able to move over from ST. I may just buy a new siren.
This siren is very difficult in exclude/include. I finally figured it out after a bit of frustration as well.
When I switched over, I had a lot of issues with excluding using Hubitat so I used my ST hubs to do exclusions. I think it's better now but I haven't excluded anything in a while. You might try the exclusion process (see post 1 above) using your ST hub (general exclude) just to be absolutely certain it is excluded and ready for inclusion.
Then follow the inclusion process (again in post 1 above). Re-reading that post it appears that if it's excluded when the siren is powered on it will begin trying the include process immediately at power on, so remove the battery after exclusion, remove it from power, press the button a few times while powered off to drain any power from the system, put Hubitat in inclusion mode (add device), power the siren back on with mains power (no battery) and see if it is detected in 30 seconds or so.
If you still have trouble, try with your siren close to the hub.
That did the trick. I took the battery out and did exactly as you said device unplugged, set exclusion mode, power device on and press button. Hubitat exclusion wouldn't exclude it. I had to use Smart things zwave exclusion.
Tested with strobe and siren worked perfect. Thanks so much for the help.
thanks for sharing that code, old gear + new hub=SOL,... not!