Open matejsp opened 2 years ago
The nulls are weird but water heater should be under water_heater
domain. Search for water_heater
in entities
Yes I can see history on the water heater control, but I cannot add a graph pointing to the water temperature.
For example climate control has various sensors:
vs water heater that has only energy available:
I want to create entities card with header 'graph' but it is not working.
type: entities
entities:
- water_heater.domestic_toplotna_crpalka_voda
title: Toplotna crpalka - Voda
header:
type: graph
entity: water_heater.domestic_toplotna_crpalka_voda
But I can do it for climate control:
type: entities
entities:
- switch.climate_control
- select.operation_mode
- number.temperature_control
title: Toplotna crpalka
header:
type: graph
entity: sensor.indoor_temperature
detail: 2
hours_to_show: 168
getting:
Another thing is why not using thermostat widget for climate control? Should be better suitable for heat pump?
Btw. Great work! Love it!
The water tank is implemented as Water Heater Entity
You can extract temperature by creating template sensors.
Somewhere in your configuration.yaml
you can put this (just put the right entity names)
template:
- sensor:
- name: "Water Tank Target Temperature"
unit_of_measurement: °C
device_class: temperature
state: >
{{ state_attr('water_heater.domestic_hot_water_tank','temperature') }}
- name: "Water Tank Current Temperature"
unit_of_measurement: °C
device_class: temperature
state: >
{{ state_attr('water_heater.domestic_hot_water_tank','current_temperature') }}
And you should have sensors which you can plot how you want.
Now regarding the thermostat. At least my device does not provide such thing as "target temperature", I can only control "Leaving water temperature" therefore the default thermostat entity does not play very well, so I created separate entities. But, you can easily wrap it up to generic_thermostat
put somewhere in your configuration.yaml
climate:
- platform: generic_thermostat
name: My Heater
unique_id: daikin_climate_control
target_sensor: sensor.your_temperature_sensor
min_temp: 18
max_temp: 26
heater: switch.your_daiking_climate_control
target_temp: 20
cold_tolerance: 0.3
hot_tolerance: 0.3
ac_mode: false
initial_hvac_mode: "heat"
min_cycle_duration:
seconds: 5
BTW more details on how to control Hot water tank: change temperature / turn on/of you can find here
Tnx. I will create template sensors for now. Would like to have them by default (like it is done for Indoor and Outdoor Temperature though so it is easier to use :). Perhaps add those two samples to readme. They are really valuable to not search for correct one.
So you can only set leaving water temperature? Wierd :) perhaps that's why I cannot set target temperature. It would be nice to support multiple device types. Will investigate further.
Regarding the $NULL ... and target temperature ... If it helps. Read from websocket: /[0]/MNAE/1/UnitProfile/la /[0]/MNAE/2/UnitProfile/la /[0]/MNCSE-node/deviceInfo /[0]/MNCSE-node/firmware
UnitProfile 1:
{
"SyncStatus": "update",
"Sensor": [
"IndoorTemperature",
"OutdoorTemperature",
"LeavingWaterTemperatureCurrent"
],
"UnitStatus": [
"ErrorState",
"InstallerState",
"WarningState",
"EmergencyState",
"TargetTemperatureOverruledState"
],
"Operation": {
"Power": [
"on",
"standby"
],
"OperationMode": [
"heating",
"cooling",
"auto"
],
"TargetTemperature": {
"heating": {
"maxValue": 30.0,
"minValue": 12.0,
"stepValue": 0.5
},
"cooling": {
"maxValue": 35.0,
"minValue": 15.0,
"stepValue": 0.5
},
"auto": {
"maxValue": 35.0,
"minValue": 15.0,
"stepValue": 0.5
}
},
"RoomTemperatureHeating": {
"maxValue": 30.0,
"minValue": 12.0,
"stepValue": 0.5,
"settable": true
},
"RoomTemperatureCooling": {
"maxValue": 35.0,
"minValue": 15.0,
"stepValue": 0.5,
"settable": true
},
"RoomTemperatureAuto": {
"maxValue": 35.0,
"minValue": 15.0,
"stepValue": 0.5,
"settable": true
},
"LeavingWaterTemperatureOffsetHeating": {
"maxValue": 10,
"minValue": -10,
"stepValue": 1,
"settable": true
},
"LeavingWaterTemperatureCooling": {
"maxValue": 22,
"minValue": 18,
"stepValue": 1,
"settable": true
}
},
"Schedule": {
"Base": "action",
"defaultScheduleAvailable": "true",
"NameAdjustable": "false",
"List": {
"heating": [
{
"StartTime": {
"stepValue": 10.0,
"unit": "minutes"
},
"TargetTemperature": {
"heating": {
"maxValue": 30.0,
"minValue": 12.0,
"stepValue": 1
}
},
"Actions": [
"StartTime",
"TargetTemperature"
],
"maxActionsAllowed": 6
},
[
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
],
[
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
],
[
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
],
[]
],
"cooling": [
{
"StartTime": {
"stepValue": 10.0,
"unit": "minutes"
},
"TargetTemperature": {
"cooling": {
"maxValue": 35.0,
"minValue": 15.0,
"stepValue": 1
}
},
"Actions": [
"StartTime",
"TargetTemperature"
],
"maxActionsAllowed": 6
},
[
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday",
"sunday"
],
[]
]
}
},
"Consumption": {
"Electrical": {
"unit": "kWh",
"Heating": {
"Daily": {
"contentCount": 24,
"resolution": 2
},
"Weekly": {
"contentCount": 14,
"resolution": 1
},
"Monthly": {
"contentCount": 24,
"resolution": 1
}
},
"Cooling": {
"Daily": {
"contentCount": 24,
"resolution": 2
},
"Weekly": {
"contentCount": 14,
"resolution": 1
},
"Monthly": {
"contentCount": 24,
"resolution": 1
}
}
}
}
}
UnitProfile 2:
{
"SyncStatus": "reboot",
"Sensor": [
"TankTemperature"
],
"UnitStatus": [
"ErrorState",
"InstallerState",
"WeatherDependentState",
"WarningState",
"EmergencyState"
],
"Operation": {
"Power": [
"on",
"standby"
],
"OperationMode": [
"heating"
],
"TargetTemperature": {
"heating": {
"maxValue": 60.0,
"minValue": 30.0,
"stepValue": 0.5
}
},
"DomesticHotWaterTemperatureHeating": {
"maxValue": 60.0,
"minValue": 30.0,
"stepValue": 1.0,
"settable": true
},
"powerful": [
"0",
"1"
]
},
"Schedule": {},
"Consumption": {
"Electrical": {
"unit": "kWh",
"Heating": {
"Daily": {
"contentCount": 24,
"resolution": 2
},
"Weekly": {
"contentCount": 14,
"resolution": 1
},
"Monthly": {
"contentCount": 24,
"resolution": 1
}
}
}
}
}
Device info:
{
"rn": "deviceInfo",
"ri": "0081",
"pi": "007f",
"ty": 13,
"ct": "20000000T000000Z",
"lt": "20000000T000000Z",
"st": 0,
"mgd": 1007,
"dlb": "180800171",
"man": "Daikin",
"mod": "BRP069A62",
"dty": "HVAC controller",
"fwv": "1700390A",
"swv": "436CC160000",
"hwv": ""
}
Firmware:
{
"rn": "firmware",
"ri": "0080",
"pi": "007f",
"ty": 13,
"ct": "20000000T000000Z",
"lt": "20000000T000000Z",
"st": 0,
"mgd": 1001,
"vr": "1700390A",
"fwn": "",
"url": "",
"ud": false,
"uds": {
"sus": 1
}
}
The reason I don't have room temperature setting is probably because I have no thermostat attached to the heatpump. And honestly I don't need one. I control the water flow separately to each room and with HA I have virtual thermostats for every room.
As @matejsp points out, having DHWT sensors exposed by default would become very handy. Great integration BTW!
They is no sensor for water tank current temperature and set temperature. Unable to create a graph for it. But it is for indoor and outdoor temperature.
And there is some wierd $NULL inside ID.