Closed maartenhendrix closed 2 years ago
Hey there @home-assistant/z-wave, mind taking a look at this issue as it has been labeled with an integration (zwave_js
) you are listed as a code owner for? Thanks!
(message by CodeOwnersMention)
zwave_js documentation zwave_js source (message by IssueLinks)
Please provide debug logs of the integration and driver where the related devices are updated.
Please create a dump of your Z-Wave network and upload the dump as a text file here.
The dump tool is available in the configuration panel of the Z-Wave JS integration, reached from the integrations page in the Home Assistant GUI.
The network dump will help us troubleshoot your device.
Thanks!
2021-10-07T07:28:55.937Z SERIAL « 0x01140004000e0e3202214480002954012d8000295496 (22 bytes)
2021-10-07T07:28:55.937Z CNTRLR [Node 014] [~] [Meter] value[65537]: -21474730.68 => -21474730.68 [Endpoint 0]
2021-10-07T07:28:55.938Z SERIAL » [ACK] (0x06)
2021-10-07T07:28:55.938Z DRIVER « [Node 014] [REQ] [ApplicationCommand]
└─[MeterCCReport]
type: Electric
scale: kWh
rate type: Consumed
value: -21474730.68
time delta: 301 seconds
prev. value: -21474730.68
2021-10-07T07:30:13.857Z SERIAL « 0x01140004001d0e320221448000d3d0012d8000d3d085 (22 bytes)
2021-10-07T07:30:13.858Z CNTRLR [Node 029] [~] [Meter] value[65537]: 542.22 => -21474294.24 [Endpoint 0]
2021-10-07T07:30:13.858Z SERIAL » [ACK] (0x06)
2021-10-07T07:30:13.859Z DRIVER « [Node 029] [REQ] [ApplicationCommand]
└─[MeterCCReport]
type: Electric
scale: kWh
rate type: Consumed
value: -21474294.24
time delta: 301 seconds
prev. value: -21474294.24
I hope this helps. Please let me know if you need more information. Not sure if i missed something.
It looks like I would have the same problem:
Logger: homeassistant.components.sensor.recorder Source: components/sensor/recorder.py:325 Integration: Sensor (documentation, issues) First occurred: 20:21:07 (2 occurrences) Last logged: 20:35:10
Entity sensor.wall_plug_switch_electric_kwh from integration zwave_js has state class total_increasing, but its state is negative. Please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+zwave_js%22 Entity sensor.wall_plug_switch_electric_consumed_kwh from integration zwave_js has state class total_increasing, but its state is negative. Please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+zwave_js%22
My Z-Wave network dump is included: zwave_js_dump.txt
Thanks for your help
I have the same thing
same issue here.
Please don't just post "same issue" or similar replies. Include a network dump as an attachment so we can get a better understanding of what devices are affected.
If you just want to show that you're affected by this issue the appropriate way is to react with 👍 to the top post.
Thanks!
Logger: homeassistant.components.sensor.recorder Source: components/sensor/recorder.py:333 Integration: Sensor (documentation, issues) First occurred: 14:10:10 (1 occurrences) Last logged: 14:10:10
Entity sensor.dehumidifier_switch_electric_consumed_kwh from integration zwave_js has state class total_increasing, but its state is negative. Triggered by state -21474182.7 with last_updated set to 2021-11-26T13:04:59.999999+00:00. Please create a bug report at https://github.com/home-assistant/core/issues?q=is%3Aopen+is%3Aissue+label%3A%22integration%3A+zwave_js%22
The Neo plugs are known to be buggy devices. They sometimes produce values with the most significant bit set.
https://github.com/zwave-js/node-zwave-js/issues/2692 https://github.com/OpenZWave/open-zwave/issues/2333
If I understand the command class spec correctly, the challenge here is that negative values are valid, so we can't just ignore the sign. If there needs to be device specific handling of these cases, IMO it would be better suited for the device configs in the driver (although doesn't seem like Al agrees https://github.com/zwave-js/node-zwave-js/issues/2692#issuecomment-847860241 and his explanation is perfectly reasonable).
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.
This is still a problem in the latest stable version for me.
I have 5 plugs and 4 out of 5 are reporting correctly. The 5th one still has negative values for kwh. Attached is the diagnostic file
Julien Franche IT Miracles, No Problem, Barely an inconvenience.
From: @.> Sent: February 24, 2022 9:12 PM To: @.> Cc: @.>; @.> Subject: Re: [home-assistant/core] integration zwave_js has state class total_increasing, but its state is negative (#57230)
This is still a problem in the latest stable version for me.
— Reply to this email directly, view it on GitHubhttps://github.com/home-assistant/core/issues/57230#issuecomment-1050222992, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AD7WXDUGTA4DK5RWYV77ZGLU42GMLANCNFSM5FQR7Q5Q. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub. You are receiving this because you commented.Message ID: @.***>
{ "home_assistant": { "installation_type": "Home Assistant OS", "version": "2022.2.9", "dev": false, "hassio": true, "virtualenv": false, "python_version": "3.9.7", "docker": true, "arch": "aarch64", "timezone": "Europe/Warsaw", "os_name": "Linux", "os_version": "5.10.63-v8", "supervisor": "2022.01.1", "host_os": "Home Assistant OS 7.2", "docker_version": "20.10.9", "chassis": "embedded", "run_as_root": true }, "custom_components": {}, "integration_manifest": { "domain": "zwave_js", "name": "Z-Wave JS", "config_flow": true, "documentation": "https://www.home-assistant.io/integrations/zwave_js", "requirements": [ "zwave-js-server-python==0.34.0" ], "codeowners": [ @.**/z-wave" ], "dependencies": [ "usb", "http", "websocket_api" ], "iot_class": "local_push", "usb": [ { "vid": "0658", "pid": "0200", "known_devices": [ "Aeotec Z-Stick Gen5+", "Z-WaveMe UZB" ] }, { "vid": "10C4", "pid": "8A2A", "description": "z-wave*", "known_devices": [ "Nortek HUSBZB-1" ] }, { "vid": "10C4", "pid": "EA60", "known_devices": [ "Aeotec Z-Stick 7", "Silicon Labs UZB-7", "Zooz ZST10 700" ] } ], "is_built_in": true }, "data": { "versionInfo": { "driverVersion": "8.11.5", "serverVersion": "1.14.1", "minSchemaVersion": 0, "maxSchemaVersion": 14 }, "state": { "nodeId": 12, "index": 0, "installerIcon": 1792, "userIcon": 1792, "status": 4, "ready": true, "isListening": true, "isRouting": true, "isSecure": false, "manufacturerId": 600, "productId": 4135, "productType": 512, "firmwareVersion": "2.23", "zwavePlusVersion": 1, "deviceConfig": { "filename": "/data/db/devices/0x0258/nas-wr01ze.json", "isEmbedded": true, "manufacturer": "Shenzhen Neo Electronics Co., Ltd.", "manufacturerId": 600, "label": "NAS-WR01ZE", "description": "Wall Plug Switch", "devices": [ { "productType": 256, "productId": 4135 }, { "productType": 512, "productId": 4135 }, { "productType": 768, "productId": 4135 } ], "firmwareVersion": { "min": "0.0", "max": "255.255" }, "paramInformation": { "_map": {} }, "metadata": { "comments": { "level": "warning", "text": "This device is buggy and sends large negative Meter Reports from time to time. " } } }, "label": "NAS-WR01ZE", "interviewAttempts": 0, "endpoints": [ { "nodeId": 12, "index": 0, "installerIcon": 1792, "userIcon": 1792, "deviceClass": { "basic": { "key": 4, "label": "Routing Slave" }, "generic": { "key": 16, "label": "Binary Switch" }, "specific": { "key": 1, "label": "Binary Power Switch" }, "mandatorySupportedCCs": [ 32, 37, 39 ], "mandatoryControlledCCs": [] } } ], "values": [ { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "currentValue", "propertyName": "currentValue", "ccVersion": 1, "metadata": { "type": "boolean", "readable": true, "writeable": false, "label": "Current value" }, "value": true }, { "endpoint": 0, "commandClass": 37, "commandClassName": "Binary Switch", "property": "targetValue", "propertyName": "targetValue", "ccVersion": 1, "metadata": { "type": "boolean", "readable": true, "writeable": true, "label": "Target value", "valueChangeOptions": [ "transitionDuration" ] }, "value": true }, { "endpoint": 0, "commandClass": 50, "commandClassName": "Meter", "property": "value", "propertyKey": 65537, "propertyName": "value", "propertyKeyName": "Electric_kWh_Consumed", "ccVersion": 4, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Electric Consumption [kWh]", "ccSpecific": { "meterType": 1, "rateType": 1, "scale": 0 }, "unit": "kWh" }, "value": -21474436.06 }, { "endpoint": 0, "commandClass": 50, "commandClassName": "Meter", "property": "value", "propertyKey": 66049, "propertyName": "value", "propertyKeyName": "Electric_W_Consumed", "ccVersion": 4, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Electric Consumption [W]", "ccSpecific": { "meterType": 1, "rateType": 1, "scale": 2 }, "unit": "W" }, "value": 0 }, { "endpoint": 0, "commandClass": 50, "commandClassName": "Meter", "property": "value", "propertyKey": 66561, "propertyName": "value", "propertyKeyName": "Electric_V_Consumed", "ccVersion": 4, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Electric Consumption [V]", "ccSpecific": { "meterType": 1, "rateType": 1, "scale": 4 }, "unit": "V" }, "value": 230.06 }, { "endpoint": 0, "commandClass": 50, "commandClassName": "Meter", "property": "value", "propertyKey": 66817, "propertyName": "value", "propertyKeyName": "Electric_A_Consumed", "ccVersion": 4, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Electric Consumption [A]", "ccSpecific": { "meterType": 1, "rateType": 1, "scale": 5 }, "unit": "A" }, "value": 0 }, { "endpoint": 0, "commandClass": 50, "commandClassName": "Meter", "property": "reset", "propertyName": "reset", "ccVersion": 4, "metadata": { "type": "boolean", "readable": false, "writeable": true, "label": "Reset accumulated values" } }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 1, "propertyName": "State After Power Failure", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "label": "State After Power Failure", "default": 1, "min": 0, "max": 1, "states": { "0": "Always off", "1": "Previous state" }, "valueSize": 1, "format": 0, "allowManualEntry": false, "isFromConfig": true }, "value": 1 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 2, "propertyName": "Top button function", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "label": "Top button function", "default": 1, "min": 0, "max": 1, "states": { "0": "Disable", "1": "Enable" }, "valueSize": 1, "format": 0, "allowManualEntry": false, "isFromConfig": true }, "value": 1 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 3, "propertyName": "LED indication", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "label": "LED indication", "default": 1, "min": 0, "max": 1, "states": { "0": "Disable", "1": "Enable" }, "valueSize": 1, "format": 0, "allowManualEntry": false, "isFromConfig": true }, "value": 0 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 4, "propertyName": "Timed auto-off", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "label": "Timed auto-off", "default": 0, "min": 0, "max": 1, "states": { "0": "Disable", "1": "Enable" }, "valueSize": 1, "format": 0, "allowManualEntry": false, "isFromConfig": true }, "value": 0 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 5, "propertyName": "Timed auto-off period", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "description": "Delay time after the plug is switched off", "label": "Timed auto-off period", "default": 120, "min": 0, "max": 32767, "unit": "minutes", "valueSize": 2, "format": 1, "allowManualEntry": true, "isFromConfig": true }, "value": 120 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 6, "propertyName": "Send meter reports", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "label": "Send meter reports", "default": 1, "min": 0, "max": 1, "states": { "0": "Disable", "1": "Enable" }, "valueSize": 1, "format": 0, "allowManualEntry": false, "isFromConfig": true }, "value": 1 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 7, "propertyName": "Meter report interval", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "label": "Meter report interval", "default": 300, "min": 30, "max": 32767, "unit": "seconds", "valueSize": 2, "format": 1, "allowManualEntry": true, "isFromConfig": true }, "value": 300 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 8, "propertyName": "Maximum current", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "description": "Maximum current the plug can provide to load", "label": "Maximum current", "default": 16, "min": 1, "max": 16, "unit": "A", "valueSize": 1, "format": 0, "allowManualEntry": true, "isFromConfig": true }, "value": 16 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 9, "propertyName": "Power report threshold", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "description": "Change in power consumption that triggers a report", "label": "Power report threshold", "default": 50, "min": 1, "max": 1600, "unit": "0.01 A", "valueSize": 2, "format": 0, "allowManualEntry": true, "isFromConfig": true }, "value": 50 }, { "endpoint": 0, "commandClass": 112, "commandClassName": "Configuration", "property": 10, "propertyName": "Alarm current thershold", "ccVersion": 1, "metadata": { "type": "number", "readable": true, "writeable": true, "description": "An over-current notification is sent when the current is higher than this value", "label": "Alarm current thershold", "default": 13, "min": 1, "max": 16, "unit": "A", "valueSize": 1, "format": 0, "allowManualEntry": true, "isFromConfig": true }, "value": 13 }, { "endpoint": 0, "commandClass": 113, "commandClassName": "Notification", "property": "Power Management", "propertyKey": "Over-load status", "propertyName": "Power Management", "propertyKeyName": "Over-load status", "ccVersion": 8, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Over-load status", "ccSpecific": { "notificationType": 8 }, "min": 0, "max": 255, "states": { "0": "idle", "8": "Over-load detected" } }, "value": 0 }, { "endpoint": 0, "commandClass": 114, "commandClassName": "Manufacturer Specific", "property": "manufacturerId", "propertyName": "manufacturerId", "ccVersion": 2, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Manufacturer ID", "min": 0, "max": 65535 }, "value": 600 }, { "endpoint": 0, "commandClass": 114, "commandClassName": "Manufacturer Specific", "property": "productType", "propertyName": "productType", "ccVersion": 2, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Product type", "min": 0, "max": 65535 }, "value": 512 }, { "endpoint": 0, "commandClass": 114, "commandClassName": "Manufacturer Specific", "property": "productId", "propertyName": "productId", "ccVersion": 2, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Product ID", "min": 0, "max": 65535 }, "value": 4135 }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "libraryType", "propertyName": "libraryType", "ccVersion": 3, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Library type", "states": { "0": "Unknown", "1": "Static Controller", "2": "Controller", "3": "Enhanced Slave", "4": "Slave", "5": "Installer", "6": "Routing Slave", "7": "Bridge Controller", "8": "Device under Test", "9": "N/A", "10": "AV Remote", "11": "AV Device" } }, "value": 3 }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "protocolVersion", "propertyName": "protocolVersion", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Z-Wave protocol version" }, "value": "6.4" }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "firmwareVersions", "propertyName": "firmwareVersions", "ccVersion": 3, "metadata": { "type": "string[]", "readable": true, "writeable": false, "label": "Z-Wave chip firmware versions" }, "value": [ "2.23" ] }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "hardwareVersion", "propertyName": "hardwareVersion", "ccVersion": 3, "metadata": { "type": "number", "readable": true, "writeable": false, "label": "Z-Wave chip hardware version" }, "value": 16 }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "sdkVersion", "propertyName": "sdkVersion", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "SDK version" }, "value": "6.81.3" }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "applicationFrameworkAPIVersion", "propertyName": "applicationFrameworkAPIVersion", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Z-Wave application framework API version" }, "value": "4.1.2" }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "applicationFrameworkBuildNumber", "propertyName": "applicationFrameworkBuildNumber", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Z-Wave application framework API build number" }, "value": 52445 }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "hostInterfaceVersion", "propertyName": "hostInterfaceVersion", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Serial API version" }, "value": "unused" }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "hostInterfaceBuildNumber", "propertyName": "hostInterfaceBuildNumber", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Serial API build number" }, "value": 0 }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "zWaveProtocolVersion", "propertyName": "zWaveProtocolVersion", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Z-Wave protocol version" }, "value": "6.4.0" }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "zWaveProtocolBuildNumber", "propertyName": "zWaveProtocolBuildNumber", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Z-Wave protocol build number" }, "value": 91 }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "applicationVersion", "propertyName": "applicationVersion", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Application version" }, "value": "2.23.0" }, { "endpoint": 0, "commandClass": 134, "commandClassName": "Version", "property": "applicationBuildNumber", "propertyName": "applicationBuildNumber", "ccVersion": 3, "metadata": { "type": "string", "readable": true, "writeable": false, "label": "Application build number" }, "value": 52445 } ], "isFrequentListening": false, "maxDataRate": 100000, "supportedDataRates": [ 40000, 100000 ], "protocolVersion": 3, "supportsBeaming": true, "supportsSecurity": false, "nodeType": 1, "zwavePlusNodeType": 0, "zwavePlusRoleType": 5, "deviceClass": { "basic": { "key": 4, "label": "Routing Slave" }, "generic": { "key": 16, "label": "Binary Switch" }, "specific": { "key": 1, "label": "Binary Power Switch" }, "mandatorySupportedCCs": [ 32, 37, 39 ], "mandatoryControlledCCs": [] }, "commandClasses": [ { "id": 37, "name": "Binary Switch", "version": 1, "isSecure": false }, { "id": 50, "name": "Meter", "version": 4, "isSecure": false }, { "id": 85, "name": "Transport Service", "version": 2, "isSecure": false }, { "id": 89, "name": "Association Group Information", "version": 1, "isSecure": false }, { "id": 90, "name": "Device Reset Locally", "version": 1, "isSecure": false }, { "id": 94, "name": "Z-Wave Plus Info", "version": 2, "isSecure": false }, { "id": 108, "name": "Supervision", "version": 1, "isSecure": false }, { "id": 112, "name": "Configuration", "version": 1, "isSecure": false }, { "id": 113, "name": "Notification", "version": 8, "isSecure": false }, { "id": 114, "name": "Manufacturer Specific", "version": 2, "isSecure": false }, { "id": 115, "name": "Powerlevel", "version": 1, "isSecure": false }, { "id": 133, "name": "Association", "version": 2, "isSecure": false }, { "id": 134, "name": "Version", "version": 3, "isSecure": false }, { "id": 142, "name": "Multi Channel Association", "version": 3, "isSecure": false }, { "id": 152, "name": "Security", "version": 1, "isSecure": true }, { "id": 159, "name": "Security 2", "version": 1, "isSecure": true } ], "interviewStage": "Complete", "deviceDatabaseUrl": "https://devices.zwave-js.io/?jumpTo=0x0258:0x0200:0x1027:2.23", "statistics": { "commandsTX": 29, "commandsRX": 15351, "commandsDroppedRX": 0, "commandsDroppedTX": 0, "timeoutResponse": 0 }, "highestSecurityClass": -1, "isControllerNode": false, "keepAwake": false } } }
this isn't a problem with the integration, it's a problem with the communication between the driver and the node, and may be an issue with the device itself. See here for more context as well as information as to why the driver won't implement device specific fixes for this problem: https://github.com/zwave-js/node-zwave-js/issues/2692
"metadata": { "comments": { "level": "warning", "text": "This device is buggy and sends large negative Meter Reports from time to time. " } }
As you can see here the driver even tells you that this is a known problem, although we haven't figured out how to expose this in HA yet (feature we want to implement)
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest Home Assistant version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.
The problem
I'm getting a warning in my logs that states state class is negative. This makes the sensors not usable in the Energy page.
What is version of Home Assistant Core has the issue?
core-2021.10.0
What was the last working version of Home Assistant Core?
No response
What type of installation are you running?
Home Assistant OS
Integration causing the issue
Z-Wave JS
Link to integration documentation on our website
https://www.home-assistant.io/integrations/zwave_js/
Example YAML snippet
No response
Anything in the logs that might be useful for us?
Additional information
No response