Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sleeping nodes do not update #249

Open
dillw opened this issue Oct 4, 2018 · 6 comments
Open

Sleeping nodes do not update #249

dillw opened this issue Oct 4, 2018 · 6 comments

Comments

@dillw
Copy link

dillw commented Oct 4, 2018

When the openZwave program is started and nodes are sleeping, no update event will be fired unless the node is reset and the node sends all info including all command classes.

From the log it can be seen that openZwave sees the value update but does not fire an event since it does not have the command class registered.

Is there a way to fire an event for value change even if the node has been asleep (no command class set)?

Logs:
.
.
.
2018-10-03 22:00:54.858 Info, Node003, WARNING: ZW_SEND_DATA failed. No ACK received - device may be asleep.
2018-10-03 22:00:54.858 Info, Node003, Node 3 has been marked as asleep
2018-10-03 22:00:54.858 Info, Node003, Node not responding - moving QueryStageComplete command to Wake-Up queue
2018-10-03 22:00:54.858 Detail, Node003, Notification: Notification - NoOperation
2018-10-03 22:00:54.858 Detail, Node003, Notification: Notification - Node Asleep
2018-10-03 22:00:54.858 Detail, Node001, Query Stage Complete (Neighbors)
2018-10-03 22:00:54.859 Detail, Node001, AdvanceQueries queryPending=0 queryRetries=0 queryStage=Session live=1
2018-10-03 22:00:54.859 Detail, Node001, QueryStage_Session
2018-10-03 22:00:54.859 Detail, Node001, QueryStage_Dynamic
2018-10-03 22:00:54.859 Detail, Node001, QueryStage_Configuration
2018-10-03 22:00:54.859 Detail, Node001, QueryStage_Complete
2018-10-03 22:00:54.859 Warning, CheckCompletedNodeQueries m_allNodesQueried=0 m_awakeNodesQueried=0
2018-10-03 22:00:54.859 Warning, CheckCompletedNodeQueries all=0, deadFound=0 sleepingOnly=1
2018-10-03 22:00:54.859 Info, Node query processing complete except for sleeping nodes.
2018-10-03 22:00:54.859 Detail, Node001, Notification: NodeQueriesComplete
2018-10-03 22:00:54.860 Detail, contrlr, Notification: AwakeNodesQueried
2018-10-03 22:01:10.072 Detail, Node002, Received: 0x01, 0x0f, 0x00, 0x04, 0x00, 0x02, 0x09, 0x71, 0x05, 0x00, 0x00, 0x00, 0xff, 0x06, 0x16, 0x00, 0x64
2018-10-03 22:01:10.073 Detail,
2018-10-03 22:01:10.073 Info, Node002, ApplicationCommandHandler - Unhandled Command Class 0x71
2018-10-03 22:01:10.090 Detail, Node002, Received: 0x01, 0x0a, 0x00, 0x04, 0x00, 0x02, 0x04, 0x30, 0x03, 0xff, 0x0a, 0x31
2018-10-03 22:01:10.090 Detail,
2018-10-03 22:01:10.090 Info, Node002, ApplicationCommandHandler - Unhandled Command Class 0x30

Seems to be same issue as #46 but no solution was mentioned besides resetting nodes.

@ekarak
Copy link
Member

ekarak commented Nov 4, 2018

Unhandled Command Class 0x30
but I see that this command class is now supported:
http://www.openzwave.com/dev/classOpenZWave_1_1SensorBinary.html

What version of the OZW lib do you have?

@sim51
Copy link

sim51 commented Dec 22, 2018

I have exactly the same behaviour, and I'm using the latest OZW (I'm directly on the master from the repo)

@sim51
Copy link

sim51 commented Dec 23, 2018

The problem comes from the test2,js script.

It assumes that after the network scan it will discover all the device and be able to fulfil all the device information. Or if you have a sleeping device, this one will not send its info, so the device will never be ready

To resolve this, I have done the following modification in the script :

  • Changing the on available event with the function of the on ready event. So the lib know that the device is there and will listen to it. (But I have changed the ready state to false)
  • Replacing the on ready event by just putting the ready state to true
  • On value events, I added a line to put the ready state to true

So now, If I configure ozw to save the network state, even after restart, I will receive the sleeping device events.

I hope this can help people !

PS: Do you want a PR on the script with my modifications ?

  • Enable the SaveConfiguration
  • Pairing my devices
  • Disconnect zwave so it will write the configuration
  • Reconnect zwave

@robertsLando
Copy link
Member

@sim51 can you make a PR and link it here so I can check your changes?

@robertsLando
Copy link
Member

@sim51 Any news?

@sim51
Copy link

sim51 commented Oct 14, 2019

I don't have the code on my laptop anymore ... but I can try to redo it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants