Hello
I’m fairly new to HA and this is my first post. I’ve just installed the Ring outdoor siren and was working my way through the above posts. At this stage I’m just using the z-wave JS service to test the siren. I’ve noticed that I can get the LED’s, both the Red and Logo, to come on and off but more often than not the device seems to be disconnecting after each service call. I have to take one of the batteries out and put it back in then it’s all good again. I’m running only on the supplied batteries at the moment so no AC power. Could this cause an issue? I’ve got the UZB-7 silicone labs stick and I’ve already updated the firmware on it. I’m running HA on an old Raspbery Pi 3 board and this siren is currently my only device. Any advice?
I don’t have an issue like that with my stick but I got a Sigma Designs stick, it works fine. I do have D batteries AND the Ring battery but I don’t believe what you are seeing is caused by which battery you are using, though. Is there anything on the ZWave logs showing for the Siren?
I didn’t get a chance to look at where the logs were last night but I did restart the pi and so far the siren seems to be remain available. I will monitor and advise if it drops off again. Once stable I will get on to the mqtt side and see if I can make it all work at the same time. Thanks again for the help
I’ve been playing around with some Ring sensors and Z-Wave JS and I seem to have got Home Assistant to directly trigger 2 Indicator commands at the same time without the need of going through MQTT.
I don’t have a siren to test sound + light but with some contact sensors I can tell them to blink their lights at a specific interval and a defined ammount times.
Seems that instead of using zwave_js.set_value with zwave_js.invoke_cc_api It lets me set more than 1 parameter for the same command class, for example:
Hey. I’m still having issues trying to get this all to work and stay working. Could someone take a look at the below image and confirm that I’ve got the correct settings? Sometimes it works and I can turn both the logo and red strobe lights on and off but more often than not as soon as I call the service the device becomes dead and I need to remove all power and reconnect. I now have AC & the rechargeable battery as backup. I’ve tried the option “Wait for result?” and it doesn’t seem to help. I will post z-wave logs this evening when I get home but thought I’d check got the service setup correctly first. @paumanel - I had a go with this but I could only get it to turn on the first of the services. Which ever one was on top.
Please see logs below which I’ve taken from: SUPERVISOR–>Z-WAVE JS (add-on button)–>LOG (top menu, on right). The problem is the logs seem to be incomplete. I’ve ordered the aeotec z-stick 7. Arriving today to see if the problem is with the siliconlabs stick. If not I’m thinking I’ve got a dud siren. @emontes are you able to confirm that the service is being called correctly from the image above?
Thanks again
2022-11-30T09:48:14.099Z CNTRLR [Node 023] [setValue] calling SET_VALUE API IndicatorCCAPI:
property: 48
property key: 1
optimistic: true
2022-11-30T09:48:14.122Z SERIAL » 0x012300a90117179f03730027632648378925a713fea7eda4c85ded06715925000 (37 bytes)
0000052af
2022-11-30T09:48:14.125Z DRIVER » [Node 023] [REQ] [SendDataBridge]
│ source node id: 1
│ transmit options: 0x25
│ callback id: 82
└─[Security2CCMessageEncapsulation]
│ sequence number: 115
└─[SupervisionCCGet]
│ session id: 38
│ request updates: true
└─[IndicatorCCSet]
values:
· indicatorId: 48
propertyId: 1
value: 50
2022-11-30T09:48:14.133Z SERIAL « [ACK] (0x06)
2022-11-30T09:48:14.136Z SERIAL « 0x010401a90152 (6 bytes)
2022-11-30T09:48:14.138Z SERIAL » [ACK] (0x06)
2022-11-30T09:48:14.140Z DRIVER « [RES] [SendDataBridge]
was sent: true
2022-11-30T09:48:43.055Z SERIAL « 0x011d00a9520102a7007f7f7f7f7f00010600000000420600007f7f7f7f7ffe (31 bytes)
2022-11-30T09:48:43.061Z SERIAL » [ACK] (0x06)
2022-11-30T09:48:43.066Z DRIVER « [REQ] [SendDataBridge]
callback id: 82
transmit status: NoAck, took 6790 ms
routing attempts: 6
protocol & route speed: Z-Wave, 40 kbit/s
TX channel no.: 1
beam: 1000 ms
2022-11-30T09:48:43.080Z CNTRLR [Node 023] The node did not respond after 3 attempts, it is presumed dead
2022-11-30T09:48:43.082Z CNTRLR [Node 023] The node is now dead.
2022-11-30T09:48:43.101Z CNTRLR [Node 023] [setValue] raised ZWaveError (not handled, code Controller_Callback
NOK): Failed to send the command after 3 attempts (Status NoAck) (ZW0204)
Z-Wave error ZWaveError: Failed to send the command after 3 attempts (Status NoAck) (ZW0204)
at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)
at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)
at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)
at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)
at IndicatorCCAPI.set (/usr/src/node_modules/@zwave-js/cc/src/cc/IndicatorCC.ts:263:24)
at Proxy.IndicatorCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/IndicatorCC.ts:209:16)
at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)
at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)
at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)
at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99) {
code: 204,
context: SendDataBridgeRequestTransmitReport {
host: [Driver],
type: 0,
functionType: 169,
payload: <Buffer 52 01 02 a7 00 7f 7f 7f 7f 7f 00 01 06 00 00 00 00 42 06 00 00 7f 7f 7f 7f 7f>,
_callbackId: 82,
transmitStatus: 1,
txReport: {
txTicks: 679,
numRepeaters: 0,
txChannelNo: 1,
routeSchemeState: 6,
repeaterNodeIds: [],
beam1000ms: true,
beam250ms: false,
routeSpeed: 2,
routingAttempts: 6,
failedRouteLastFunctionalNodeId: 0,
failedRouteFirstNonFunctionalNodeId: 0,
measuredNoiseFloor: 127
}
},
transactionSource: ' at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3990:23)\n' +
' at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:28)\n' +
' at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:27)\n' +
' at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:30)\n' +
' at IndicatorCCAPI.set (/usr/src/node_modules/@zwave-js/cc/src/cc/IndicatorCC.ts:263:24)\n' +
' at Proxy.IndicatorCCAPI.<computed> (/usr/src/node_modules/@zwave-js/cc/src/cc/IndicatorCC.ts:209:16)\n' +
' at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:29)\n' +
' at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:38)\n' +
' at Object.node (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:40:96)\n' +
' at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:99)'
}
2022-11-30T09:49:07.146Z CNTRLR [Node 023] [setValue] calling SET_VALUE API IndicatorCCAPI:
property: 48
property key: 1
optimistic: true
2022-11-30T09:49:07.150Z CNTRLR » [Node 023] pinging the node...
2022-11-30T09:49:07.173Z SERIAL » 0x010d00a9011701002500000000533a (15 bytes)
2022-11-30T09:49:07.175Z DRIVER » [Node 023] [REQ] [SendDataBridge]
│ source node id: 1
│ transmit options: 0x25
│ callback id: 83
└─[NoOperationCC]
2022-11-30T09:49:07.181Z SERIAL « [ACK] (0x06)
2022-11-30T09:49:07.184Z SERIAL « 0x010401a90152 (6 bytes)
2022-11-30T09:49:07.187Z SERIAL » [ACK] (0x06)
2022-11-30T09:49:07.189Z DRIVER « [RES] [SendDataBridge]
was sent: true
2022-11-30T09:49:13.990Z SERIAL « 0x011d00a95301029c007f7f7f7f7f00010600000000420600007f7f7f7f7fc4 (31 bytes)
2022-11-30T09:49:13.996Z SERIAL » [ACK] (0x06)
2022-11-30T09:49:13.999Z DRIVER « [REQ] [SendDataBridge]
callback id: 83
transmit status: NoAck, took 6680 ms
routing attempts: 6
protocol & route speed: Z-Wave, 40 kbit/s
TX channel no.: 1
beam: 1000 ms
2022-11-30T09:49:14.019Z CNTRLR [Node 023] The node did not respond after 1 attempts, it is presumed dead
2022-11-30T09:49:14.029Z CNTRLR [Node 023] ping failed: Failed to send the command after 1 attempts (Status No
Ack) (ZW0204)
2022-11-30T09:49:14.030Z CNTRLR [Node 023] [setValue] raised ZWaveError (not handled, code Controller_MessageD
ropped): The message cannot be sent because node 23 is dead (ZW0202)
Z-Wave error ZWaveError: The message cannot be sent because node 23 is dead (ZW0202)
at Driver.sendMessage (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:3920:12)
at Driver.sendCommandInternal (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4181:17)
at Driver.sendSupervisedCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4226:16)
at Driver.sendCommand (/usr/src/node_modules/zwave-js/src/lib/driver/Driver.ts:4278:19)
at ZWaveNode.setValue (/usr/src/node_modules/zwave-js/src/lib/node/Node.ts:932:19)
at NodeMessageHandler.handle (/usr/src/node_modules/@zwave-js/server/dist/lib/node/message_handler.js:23:27)
at Client.receiveMessage (/usr/src/node_modules/@zwave-js/server/dist/lib/server.js:105:62) {
code: 202,
context: undefined,
transactionSource: undefined
}
Hey Tim. This is very weird but I can see the node is dead so it’s not even getting the message you are trying to send. As I said, I use MQTT so I don’t do calls to ZWave directly but I have to agree you need to first fix the problem you are seeing with the node just dying out of the blue. Do you have any other device you can test with this controller just to make sure it’s working?
The device (siren) does connect. If I pull the battery and ac power out as soon as I plug one of them back in to the siren it’s alive again. I can turn the siren on and off again, multiple times and the device functions as normal until I start sending the service calls. I can always successfully send at least one command and get it to do what I want (ie. the lights come on) but usually, after just one command, it dies. I do have other z-wave devices (mainly contact sensors) but none that I’m trying to operate using these service calls. Below are a few successful calls I made this morning when I thought it was finally working. Just to be sure, am I sending the service call correctly?
Everything seems to be working now. I’ve just switched the Silicon Labs z-wave stick out for a new Aeotech one. Both of which show up as Silicon Labs in HA and when I was updating their firmwares. Wonder if just got unlucky with the first stick. I seem to be able to call any of the LED or siren functions with no disconnects at all. @emontes - Thanks again for your help with this. @paumanel - Using your method I can indeed call two services at the same time as long as they have the same indicatorID. Perhpas this is obvious but when I tried it before I was trying to call two different IDs. Perhaps this is not possible. As the strobe and the siren are on the same ID I can turn them both on with one call without the need for MQTT. Very useful.
Thanks so much for everyone’s input even before I got involved.
Thanks for the update, Tim, I am gldad it’s working well for you and sorry for not being able to reply to your before last message, ridiculously busy day at work!
@emontes I was just looking back to a post you made on the 22 Feb about the ZWaveJS’s database.I’ve managed to find this link:Z-Wave JS Config DB Browser but I can’t see any reference to the lights or 135-0-48-1. Is there another link you could point me towards that has more information?
What I’m ultimately looking for is to see if I can set a delay to the alarm sounding with just one request. eg. Turn on the alarm at 100% but not for 60 seconds. Otherwise someone could break in, disconnect the power and the alarm would not sound because HA could no longer send the message. Is this possible at all. I ask because there is a exit & entry delay option through the ring base station and app.
Thanks again.
Hey Tim, I am not sure if you would be able to do that, I don’t think there’s a way to queue the message on the device or on ZWaveJS, for example. My HA got an UPS so even by cutting power, the alarm will still work.
The Ring base station also has a battery so it would still work without power too.
Hey. Cheers for the reply. No I didn’t think there would be but thought I’d ask. I do have UPS but it’s not locked away so in theory someone could unplug HA during the 90 seconds I currently allow for pin entry. I wonder if the Ring base station behaves any differently. Perhaps it also just waits for the delay and then sends a new message to activate the alarm.
Were you able to find a link to the z-wave JS info I mentioned? Would just be interesting and useful for future endeavours.
Thanks
All good
The link points just to the configuration items and not the indicator commandclass (which is what I used for lights) but it’s really useful. Have a look here that shows the command classes.: Z-Wave JS - Z-Wave driver written entirely in JavaScript/TypeScript (Indicator is 135 so 0x87 in hex)
This is what I have on mine to switch the siren on AND blink the lights red for 180 seconds, for example:
I am not sure if this is what you were looking for, I have tried to do this ages ago on HA and was not able to, I am not sure if it’s still the case now.