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

Device support Danfoss (Living Connect Z Thermostat - LC-13 and LCZ251) #400

Closed
2 tasks
dkjsj opened this issue Jan 31, 2021 · 4 comments · Fixed by #408
Closed
2 tasks

Device support Danfoss (Living Connect Z Thermostat - LC-13 and LCZ251) #400

dkjsj opened this issue Jan 31, 2021 · 4 comments · Fixed by #408
Assignees

Comments

@dkjsj
Copy link

dkjsj commented Jan 31, 2021

Describe the bug
Danfoss (Living Connect Z Thermostat - LC-13 - device id "2-4-5") are not recognized as a Climate device. Are missing the Climate entity in HomeAssistant (when using ZwaveJSServer). The same goes for Danfoss (Living Connect Z Thermostat - LCZ251 - device id "2-3-5")

Device information

Which device(s) is/are affected (make/model)? Danfoss (Living Connect Z Thermostat - LC-13)
What are the node IDs?

Last Known Working Configuration

  • New device

Installation information
How did you install node-zwave-js?

  • zwavejs2mqtt (dev) docker image (App version 1.0.1 - ZwaveJS 6.1.0)

ZwaveJSMqtt Export of node:

{"id":16,"deviceId":"2-4-5","manufacturer":"Danfoss","manufacturerId":2,"productType":5,"productId":4,"name":"climate30","loc":"kontor","values":[{"id":"16-67-0-setpoint-1","nodeId":16,"commandClass":67,"commandClassName":"Thermostat Setpoint","endpoint":0,"property":"setpoint","propertyName":"setpoint","propertyKey":1,"propertyKeyName":"Heating","type":"number","readable":true,"writeable":true,"label":"setpoint (property)","stateless":false,"ccSpecific":{"setpointType":1},"unit":"°C","list":false,"value":22,"lastUpdate":1612125745525,"newValue":22},{"id":"16-70-0-changeCounter","nodeId":16,"commandClass":70,"commandClassName":"Climate Control Schedule","endpoint":0,"property":"changeCounter","propertyName":"changeCounter","type":"any","readable":true,"writeable":true,"label":"changeCounter (property)","stateless":false,"list":false,"lastUpdate":1611944562953},{"id":"16-70-0-overrideType","nodeId":16,"commandClass":70,"commandClassName":"Climate Control Schedule","endpoint":0,"property":"overrideType","propertyName":"overrideType","type":"any","readable":true,"writeable":true,"label":"overrideType (property)","stateless":false,"list":false,"value":0,"lastUpdate":1612125745371,"newValue":0},{"id":"16-70-0-overrideState","nodeId":16,"commandClass":70,"commandClassName":"Climate Control Schedule","endpoint":0,"property":"overrideState","propertyName":"overrideState","type":"any","readable":true,"writeable":true,"label":"overrideState (property)","stateless":false,"list":false,"value":"Unused","lastUpdate":1612125745374,"newValue":"Unused"},{"id":"16-114-0-manufacturerId","nodeId":16,"commandClass":114,"commandClassName":"Manufacturer Specific","endpoint":0,"property":"manufacturerId","propertyName":"manufacturerId","type":"number","readable":true,"writeable":false,"label":"Manufacturer ID","stateless":false,"min":0,"max":65535,"list":false,"value":2,"lastUpdate":1611944562954,"newValue":2},{"id":"16-114-0-productType","nodeId":16,"commandClass":114,"commandClassName":"Manufacturer Specific","endpoint":0,"property":"productType","propertyName":"productType","type":"number","readable":true,"writeable":false,"label":"Product type","stateless":false,"min":0,"max":65535,"list":false,"value":5,"lastUpdate":1611944562955,"newValue":5},{"id":"16-114-0-productId","nodeId":16,"commandClass":114,"commandClassName":"Manufacturer Specific","endpoint":0,"property":"productId","propertyName":"productId","type":"number","readable":true,"writeable":false,"label":"Product ID","stateless":false,"min":0,"max":65535,"list":false,"value":4,"lastUpdate":1611944562955,"newValue":4},{"id":"16-117-0-local","nodeId":16,"commandClass":117,"commandClassName":"Protection","endpoint":0,"property":"local","propertyName":"local","type":"number","readable":true,"writeable":true,"label":"Local protection state","stateless":false,"list":true,"states":[{"text":"Unprotected","value":0},{"text":"NoOperationPossible","value":2}],"value":0,"lastUpdate":1611945647307,"newValue":0},{"id":"16-117-0-rf","nodeId":16,"commandClass":117,"commandClassName":"Protection","endpoint":0,"property":"rf","propertyName":"rf","type":"number","readable":true,"writeable":true,"label":"RF protection state","stateless":false,"list":true,"states":[],"value":0,"lastUpdate":1611945647308,"newValue":0},{"id":"16-117-0-exclusiveControlNodeId","nodeId":16,"commandClass":117,"commandClassName":"Protection","endpoint":0,"property":"exclusiveControlNodeId","propertyName":"exclusiveControlNodeId","type":"any","readable":true,"writeable":true,"label":"exclusiveControlNodeId (property)","stateless":false,"list":false,"lastUpdate":1611944562956},{"id":"16-117-0-timeout","nodeId":16,"commandClass":117,"commandClassName":"Protection","endpoint":0,"property":"timeout","propertyName":"timeout","type":"any","readable":true,"writeable":true,"label":"timeout (property)","stateless":false,"list":false,"lastUpdate":1611944562957},{"id":"16-128-0-level","nodeId":16,"commandClass":128,"commandClassName":"Battery","endpoint":0,"property":"level","propertyName":"level","type":"number","readable":true,"writeable":false,"label":"Battery level","stateless":false,"min":0,"max":100,"unit":"%","list":false,"value":47,"lastUpdate":1612125745479,"newValue":47},{"id":"16-128-0-isLow","nodeId":16,"commandClass":128,"commandClassName":"Battery","endpoint":0,"property":"isLow","propertyName":"isLow","type":"boolean","readable":true,"writeable":false,"label":"Low battery level","stateless":false,"list":false,"value":false,"lastUpdate":1612125745481,"newValue":false},{"id":"16-132-0-wakeUpInterval","nodeId":16,"commandClass":132,"commandClassName":"Wake Up","endpoint":0,"property":"wakeUpInterval","propertyName":"wakeUpInterval","type":"number","readable":false,"writeable":true,"label":"Wake Up interval","default":300,"stateless":false,"min":60,"max":1800,"step":60,"list":false,"value":300,"lastUpdate":1612080567144,"newValue":300},{"id":"16-132-0-controllerNodeId","nodeId":16,"commandClass":132,"commandClassName":"Wake Up","endpoint":0,"property":"controllerNodeId","propertyName":"controllerNodeId","type":"any","readable":true,"writeable":false,"label":"Node ID of the controller","stateless":false,"list":false,"value":1,"lastUpdate":1612080567146,"newValue":1},{"id":"16-134-0-libraryType","nodeId":16,"commandClass":134,"commandClassName":"Version","endpoint":0,"property":"libraryType","propertyName":"libraryType","type":"any","readable":true,"writeable":false,"label":"Library type","stateless":false,"list":false,"value":6,"lastUpdate":1611944562961,"newValue":6},{"id":"16-134-0-protocolVersion","nodeId":16,"commandClass":134,"commandClassName":"Version","endpoint":0,"property":"protocolVersion","propertyName":"protocolVersion","type":"any","readable":true,"writeable":false,"label":"Z-Wave protocol version","stateless":false,"list":false,"value":"3.67","lastUpdate":1611944562962,"newValue":"3.67"},{"id":"16-134-0-firmwareVersions","nodeId":16,"commandClass":134,"commandClassName":"Version","endpoint":0,"property":"firmwareVersions","propertyName":"firmwareVersions","type":"any","readable":true,"writeable":false,"label":"Z-Wave chip firmware versions","stateless":false,"list":false,"value":["1.1"],"lastUpdate":1611944562962,"newValue":["1.1"]}],"groups":[],"neighbors":[1,3,4,5,6,7,10,14,15],"ready":true,"available":false,"hassDevices":{"climate_thermostat":{"type":"climate","object_id":"thermostat","values":["49-0-Air temperature","67-0-setpoint-1"],"setpoint_topic":{"1":"67-0-setpoint-1"},"default_setpoint":"67-0-setpoint-1","discovery_payload":{"min_temp":4,"max_temp":28,"mode_command_topic":false,"temp_step":0.5,"current_temperature_topic":"49-0-Air temperature","current_temperature_template":"{{ value_json.value }}","temperature_state_template":"{{ value_json.value }}","temperature_command_topic":"z2m/kontor/climate30/thermostat_setpoint/endpoint_0/setpoint/1/set","temperature_state_topic":"z2m/kontor/climate30/thermostat_setpoint/endpoint_0/setpoint/1","device":{"identifiers":["zwavejs2mqtt_0xefa39b06_node16"],"manufacturer":"Danfoss","model":"Living Connect Z Thermostat (LC-13)","name":"kontor-climate30","sw_version":"1.1"},"name":"kontor-climate30_thermostat","unique_id":"zwavejs2mqtt_0xefa39b06_Node16_thermostat"},"discoveryTopic":"climate/kontor-climate30/thermostat/config","persistent":false,"ignoreDiscovery":false},"sensor_battery_level":{"type":"sensor","object_id":"battery_level","discovery_payload":{"value_template":"{{ value_json.value }}","device_class":"battery","unit_of_measurement":"%","state_topic":"z2m/kontor/climate30/battery/endpoint_0/level","json_attributes_topic":"z2m/kontor/climate30/battery/endpoint_0/level","device":{"identifiers":["zwavejs2mqtt_0xefa39b06_node16"],"manufacturer":"Danfoss","model":"Living Connect Z Thermostat (LC-13)","name":"kontor-climate30","sw_version":"1.1"},"name":"kontor-climate30_battery_level","unique_id":"zwavejs2mqtt_0xefa39b06_16-128-0-level"},"discoveryTopic":"sensor/kontor-climate30/battery_level/config","values":["128-0-level"],"persistent":false,"ignoreDiscovery":false},"binary_sensor_battery_islow":{"type":"binary_sensor","object_id":"battery_islow","discovery_payload":{"payload_on":true,"payload_off":false,"value_template":"{{ value_json.value }}","device_class":"battery","state_topic":"z2m/kontor/climate30/battery/endpoint_0/isLow","json_attributes_topic":"z2m/kontor/climate30/battery/endpoint_0/isLow","device":{"identifiers":["zwavejs2mqtt_0xefa39b06_node16"],"manufacturer":"Danfoss","model":"Living Connect Z Thermostat (LC-13)","name":"kontor-climate30","sw_version":"1.1"},"name":"kontor-climate30_battery_islow","unique_id":"zwavejs2mqtt_0xefa39b06_16-128-0-isLow"},"discoveryTopic":"binary_sensor/kontor-climate30/battery_islow/config","values":["128-0-isLow"],"persistent":false,"ignoreDiscovery":false}},"failed":false,"lastActive":1612125745525,"interviewCompleted":true,"firmwareVersion":"1.1","isBeaming":true,"isSecure":false,"keepAwake":false,"maxBaudRate":null,"isRouting":true,"isFrequentListening":false,"isListening":false,"status":"Asleep","interviewStage":"Complete","productLabel":"LC-13","productDescription":"Living Connect Z Thermostat","zwaveVersion":4,"deviceClass":{"basic":4,"generic":8,"specific":4},"hexId":"0x0002-0x0004-0x0005","_name":"climate30 (kontor)"}

Additional context

Logfile:

@AlCalzone
Copy link
Member

@robertsLando I think this one is for you

@AlCalzone AlCalzone transferred this issue from zwave-js/node-zwave-js Feb 1, 2021
@robertsLando
Copy link
Member

I see a climate discovered here:

 "climate_thermostat": {
      "type": "climate",
      "object_id": "thermostat",
      "values": [
        "49-0-Air temperature",
        "67-0-setpoint-1"
      ],
      "setpoint_topic": {
        "1": "67-0-setpoint-1"
      },
      "default_setpoint": "67-0-setpoint-1",
      "discovery_payload": {
        "min_temp": 4,
        "max_temp": 28,
        "mode_command_topic": false,
        "temp_step": 0.5,
        "current_temperature_topic": "49-0-Air temperature",
        "current_temperature_template": "{{ value_json.value }}",
        "temperature_state_template": "{{ value_json.value }}",
        "temperature_command_topic": "z2m/kontor/climate30/thermostat_setpoint/endpoint_0/setpoint/1/set",
        "temperature_state_topic": "z2m/kontor/climate30/thermostat_setpoint/endpoint_0/setpoint/1",
        "device": {
          "identifiers": [
            "zwavejs2mqtt_0xefa39b06_node16"
          ],
          "manufacturer": "Danfoss",
          "model": "Living Connect Z Thermostat (LC-13)",
          "name": "kontor-climate30",
          "sw_version": "1.1"
        },
        "name": "kontor-climate30_thermostat",
        "unique_id": "zwavejs2mqtt_0xefa39b06_Node16_thermostat"
      },
      "discoveryTopic": "climate/kontor-climate30/thermostat/config",
      "persistent": false,
      "ignoreDiscovery": false
    },

I think the problem is taht the mode command topic is set to false, I think this thermostat doesn't support multiple modes right?

@dkjsj
Copy link
Author

dkjsj commented Feb 1, 2021

I see a climate discovered here:

 "climate_thermostat": {
      "type": "climate",
      "object_id": "thermostat",
      "values": [
        "49-0-Air temperature",
        "67-0-setpoint-1"
      ],
      "setpoint_topic": {
        "1": "67-0-setpoint-1"
      },
      "default_setpoint": "67-0-setpoint-1",
      "discovery_payload": {
        "min_temp": 4,
        "max_temp": 28,
        "mode_command_topic": false,
        "temp_step": 0.5,
        "current_temperature_topic": "49-0-Air temperature",
        "current_temperature_template": "{{ value_json.value }}",
        "temperature_state_template": "{{ value_json.value }}",
        "temperature_command_topic": "z2m/kontor/climate30/thermostat_setpoint/endpoint_0/setpoint/1/set",
        "temperature_state_topic": "z2m/kontor/climate30/thermostat_setpoint/endpoint_0/setpoint/1",
        "device": {
          "identifiers": [
            "zwavejs2mqtt_0xefa39b06_node16"
          ],
          "manufacturer": "Danfoss",
          "model": "Living Connect Z Thermostat (LC-13)",
          "name": "kontor-climate30",
          "sw_version": "1.1"
        },
        "name": "kontor-climate30_thermostat",
        "unique_id": "zwavejs2mqtt_0xefa39b06_Node16_thermostat"
      },
      "discoveryTopic": "climate/kontor-climate30/thermostat/config",
      "persistent": false,
      "ignoreDiscovery": false
    },

I think the problem is taht the mode command topic is set to false, I think this thermostat doesn't support multiple modes right?

Yes, thats right. I'll try the new version. Thanks!

@FeatureExpert
Copy link

Still no climate entity for LCZ251.

'2-3-5': [DANFOSS_TRV_ZWAVE], // Danfoss Living Connect Z Thermostat 2.51 (LCZ251)

in hass/devices.js fixed problem for me.

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

Successfully merging a pull request may close this issue.

4 participants