Skip to content
This repository has been archived by the owner on Mar 13, 2021. It is now read-only.

🚩 Certain Object Values Not Updating For Single Node #84

Open
EvilEls opened this issue Sep 25, 2019 · 2 comments
Open

🚩 Certain Object Values Not Updating For Single Node #84

EvilEls opened this issue Sep 25, 2019 · 2 comments
Labels
OZW upstream This is something we can't fix and belongs in the OZW repo

Comments

@EvilEls
Copy link

EvilEls commented Sep 25, 2019

I've got several z-wave devices successfully included and working with this adapter.

  • Raspi 3
  • Node.js v10.16.3
  • NPM 6.9.0
  • zwave adapter 1.6.1
  • ozw 1.6
  • only one instance

Recently I added a Qubino (Goap) ZMNHDD1 Flush Dimmer

  • ZWave+_Version 1
  • Application_Version 3.01
  • Library_Version 3
  • Protocol_Version 4.24

✔ Inclusion went well
✔ Changing configuration objects in zwave.0.NODE15.CONFIGURATION work as expected
✔ Device can control the attached lamp correctly

For example, if I change dim level
zwave.0.NODE15.SWITCH_MULTILEVEL.Level_1
from 0 to 50, the lamp is getting turned on and dimmed to 50%.

⚠ But there is an issue when changing object values.
If I change object values from
zwave.0.NODE15.SWITCH_MULTILEVEL
the new values are correctly executed (example from above) but the newly entered values does not appear as new values. The object value stays unchanged until I change the object value again. Than the value becomes the number I entered first.

Again example from above:

  • I change zwave.0.NODE15.SWITCH_MULTILEVEL.Level_1 from 0 to 50
  • The lamp turns on and dims with 50%
  • But the value of zwave.0.NODE15.SWITCH_MULTILEVEL.Level_1 does not change to 50 as it should but stays on 0
  • Changing then zwave.0.NODE15.SWITCH_MULTILEVEL.Level_1 from 50 to 75
  • Lamp goes up from 50 to 75% brightness
  • Value of zwave.0.NODE15.SWITCH_MULTILEVEL.Level_1 now becomes 50 instead of expected 75
  • Now changing zwave.0.NODE15.SWITCH_MULTILEVEL.Level_1 from 75 to 0
  • Lamp turns off (75 to 0)
  • Value of zwave.0.NODE15.SWITCH_MULTILEVEL.Level_1 now becomes 75 instead of expected 0

ℹ with every change "last updated" becomes the current time (confirmed: true, quality: ok) even though there are no changes visible for this value

📌 The odd thing is, that this only happens for some objects and only for this one NODE.
Changing objects values from zwave.0.NODE15.CONFIGURATION works as expected and changes are instantly visible.
But some other values - that are read only -, like from zwave.0.NODE15.METER never update them self.

📢 To get the current values for those misbehaving objects, I need to restart the instance.
Only then, current values are pulled and stored in the object.
There is nothing to be found in the logs that would hint to an issue.

ℹ What I've tried:

  • I excluded/re-included the device
  • Completely removed/setup again adapter

ℹ The device works well in Domoticz and Home Assistant.

Any idea what could be wrong or how I could further debug this issue?

@AlCalzone
Copy link
Collaborator

AlCalzone commented Sep 25, 2019

I fear this is an issue of https://github.com/OpenZWave/open-zwave/
ioBroker only receives new values if that library tells us.

Any idea what could be wrong or how I could further debug this issue?

A first hint could be found in OZW_Log.txt (probably in /opt/iobroker/node_modules/openzwave-shared if you enabled loggin in the adapter settings)

@AlCalzone AlCalzone added the OZW upstream This is something we can't fix and belongs in the OZW repo label Sep 25, 2019
@EvilEls
Copy link
Author

EvilEls commented Sep 25, 2019

Thanks for the hint, @AlCalzone!

Here is a part of the log:
log.txt

  • Line 2 - I was changing zwave.0.NODE6.SWITCH_MULTILEVEL.Level_1 from 0 to 10 <-- lamp is on
  • Line 68 - Received SwitchMultiLevel report: level=0 ❗ <-- should be level=10
  • Line 69 - Refreshed Value: old value=0, new value=0 ❗ <-- should be new value=10
  • Line 77 - changing zwave.0.NODE6.SWITCH_MULTILEVEL.Level_1 back from 10 to 0 <-- lamp goes off
  • line 143 - Received SwitchMultiLevel report: level=8 ❗ << consider 8 to be 10 (dimmer sometimes set other values as requested) <-- should be level=0
  • Line 144 - Refreshed Value: old value=0, new value=8 ❗ <-- should be old value=10, new value=0
  • Line 152 - Again setting zwave.0.NODE6.SWITCH_MULTILEVEL.Level_1 to 0 (lamp is already turned off)
  • Line 218 - Received SwitchMultiLevel report: level=0 <-- finally the 0 arrived in the object value

So it really looks like a OZW issue 😒

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
OZW upstream This is something we can't fix and belongs in the OZW repo
Projects
None yet
Development

No branches or pull requests

2 participants