HOME › Forums › Gateways › Raspberry Pi › nodes that changed
-
AuthorPosts
-
AnonymousInactiveSeptember 11, 2013 at 7:48 amPost count: 19
Ok, next question:
I would like to find out which nodes have changed value, like a button that was pushed or something similar (I am trying to build an automation that requires input from several sensors,which can’t be done with a scene or association). Do I need to retrieve the info on all the nodes for this, or is there some kind of signal or something similar that I can use to get a list of only the nodes that got changed?AnonymousInactiveSeptember 11, 2013 at 5:45 pmPost count: 259Which nodes are you using? Zigbee, Insteon, X10?
Insteon and Zigbee nodes report on change, so you get a zbppacketsignal XML packet every time their state change.You can also poll the state of the node to check if it changed.
AnonymousInactiveSeptember 12, 2013 at 2:49 pmPost count: 19Thanks,
right now I’m only interested in the zigbee part (as I only have zigbee devices). Maybe in the future I can have a look at the other 2 protocols.
So those packets are send asynchronously by the server (without me doing a specific call)? Let me try that out (a bit more work…)AnonymousInactiveSeptember 13, 2013 at 2:22 pmPost count: 19I think I’m still doing something wrong. I have added a device to my zigbee controller (a ZBWS3) using the harmony gateway. I can see this device when I query for all the registered devices (currently using Node_GetNode). This returns me:
ZBP_NodeNode_GetNode
0
5ef7
137a000000183a
4002
[]
[00]
ZBWS3
default.png
BasicEP,1
06aa79b9-95c5-4938-b193-5f124efd8a02But when I press a button on the ZBWS3, I get 2 messages:
NodeNode_NodeRemoved5ef72752
NodeNode_EndDeviceAnnounce5ef7137a000000183a80But no info about the fact that a button was pressed.
Is my device not registered correctly or something? What am I missing?Thanks.
AnonymousInactiveSeptember 13, 2013 at 6:15 pmPost count: 259Hi,
What you see is the expected behaviour. The 3 buttons send On/Off command when the device has a binding with another device.
For e.g You can Bind a Button to control a Zigbee SmartPlug. Once you have a binding, every time you press the button, the ZBWS3 sends a Toggle command to the SmartPlug.
So what you want to do is create a binding in the ZBWS3 for the SmartPlug. On the Gateway you will be able to see the SmartPlug turn On/Off, but not anything from the ZBWS3.
You can create bindings through API or manually.
1. Manually: Explained in the ZBWS3 QuickStart Guide: http://www.simplehomenet.com/Downloads/ZBWS3B%20Quick-Start.pdf
2. Through API: http://wiki.smartenit.com/api/classNodeMgmt.html#ad1a9388f23e1e35c26d90075617cf492
u16DestAdd = ZBWS3 address
u8SrcEP = 1 for Button1, 2 for Button 2 and Button 3.
u16ClusterID = 0x0006
u16BndgDest = Smartplug
u8DestEP = 1Let me know if you have any other questions.
AnonymousInactiveSeptember 13, 2013 at 6:48 pmPost count: 19On the Gateway you will be able to see the SmartPlug turn On/Off, but not anything from the ZBWS3.
Does this mean I can not see the values of devices like push buttons (like the ZBWS3), but only from devices that can receive commands like a smartplug?
Or is there perhaps another way that I can query for the current value of each button on the ZBWS3?
Or can I perhaps bind all the buttons to the gateway or a virtual device?AnonymousInactiveSeptember 13, 2013 at 7:42 pmPost count: 259The buttons do not have a state. So there is no value to be read from them. When you press the button, a Toggle command is sent to the bound device. Its like a remote control with 3 Toggle buttons. Feel free to call/email me if you need help setting this up.
AnonymousInactiveSeptember 14, 2013 at 11:22 amPost count: 19Ok, thanks. I’ll have to try out a few things then.
-
AuthorPosts
- You must be logged in to reply to this topic.