Merge pull request #2352 from proddy/dev

small collection of changes
This commit is contained in:
Proddy
2025-01-16 22:29:53 +01:00
committed by GitHub
33 changed files with 826 additions and 1190 deletions

View File

@@ -30,6 +30,6 @@
"Makefile", "Makefile",
"**/*.ini", "**/*.ini",
"**/*.json", "**/*.json",
"src/modbus_entity_parameters.hpp" "src/core/modbus_entity_parameters.hpp"
] ]
} }

View File

@@ -3621,6 +3621,43 @@
| elgenheat | el. generation heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 48 | 2 | 1/10 | | elgenheat | el. generation heating | uint32 (>=0<=1677721) | kWh | false | DEVICE_DATA | 48 | 2 | 1/10 |
| elgendhw | el generation | uint32 (>=0<=1677721) | kWh | false | DHW | 11 | 2 | 1/10 | | elgendhw | el generation | uint32 (>=0<=1677721) | kWh | false | DHW | 11 | 2 | 1/10 |
## Devices of type *heatsource*
### AM200
| shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor |
|-|-|-|-|-|-|-|-|-|
| sysflowtemp | system flow temperature | int16 (>=-3199<=3199) | C | false | AHS | 0 | 1 | 1/10 |
| sysrettemp | system return temperature | int16 (>=-3199<=3199) | C | false | AHS | 1 | 1 | 1/10 |
| altflowtemp | alternative hs flow temperature | int16 (>=-3199<=3199) | C | false | AHS | 2 | 1 | 1/10 |
| altrettemp | alternative hs return temperature | int16 (>=-3199<=3199) | C | false | AHS | 3 | 1 | 1/10 |
| cyltoptemp | cylinder top temperature | int16 (>=-3199<=3199) | C | false | AHS | 4 | 1 | 1/10 |
| cylcentertemp | cylinder center temperature | int16 (>=-3199<=3199) | C | false | AHS | 5 | 1 | 1/10 |
| cylbottomtemp | cylinder bottom temperature | int16 (>=-3199<=3199) | C | false | AHS | 6 | 1 | 1/10 |
| fluegastemp | flue gas temperature | int16 (>=-3199<=3199) | C | false | AHS | 7 | 1 | 1/10 |
| valvebuffer | buffer valve | uint8 (>=0<=100) | % | false | AHS | 8 | 1 | 1 |
| valvereturn | return valve | uint8 (>=0<=100) | % | false | AHS | 9 | 1 | 1 |
| apumpmod | alternative hs pump modulation | uint8 (>=0<=100) | % | false | AHS | 10 | 1 | 1 |
| vr2config | vr2 configuration | enum [off\|bypass] | | true | AHS | 11 | 1 | 1 |
| ahsactivated | alternate heat source activation | boolean | | true | AHS | 12 | 1 | 1 |
| apumpconfig | primary pump config | boolean | | true | AHS | 13 | 1 | 1 |
| apumpsignal | output for pr1 pump | enum [off\|pwm\|pwm inverse] | | true | AHS | 14 | 1 | 1 |
| apumpmin | min output pump pr1 | uint8 (>=12<=50) | % | true | AHS | 15 | 1 | 1 |
| temprise | ahs return temp rise | boolean | | true | AHS | 16 | 1 | 1 |
| setreturntemp | set temp return | uint8 (>=40<=75) | C | true | AHS | 17 | 1 | 1 |
| mixruntime | mixer run time | uint16 (>=0<=600) | seconds | true | AHS | 18 | 1 | 1 |
| setflowtemp | set flow temperature | uint8 (>=40<=75) | C | true | AHS | 19 | 1 | 1 |
| bufbypass | buffer bypass config | enum [no\|mixer\|valve] | | true | AHS | 20 | 1 | 1 |
| bufmixruntime | bypass mixer run time | uint16 (>=0<=600) | seconds | true | AHS | 21 | 1 | 1 |
| bufconfig | dhw buffer config | enum [off\|monovalent\|bivalent] | | true | AHS | 22 | 1 | 1 |
| blockmode | config htg. blocking mode | enum [off\|auto\|blocking] | | true | AHS | 23 | 1 | 1 |
| blockterm | config of block terminal | enum [n_o\|n_c] | | true | AHS | 24 | 1 | 1 |
| blockhyst | hyst. for boiler block | int8 (>=0<=50) | C | true | AHS | 25 | 1 | 1 |
| releasewait | boiler release wait time | uint8 (>=0<=240) | minutes | true | AHS | 26 | 1 | 1 |
| burner | burner | boolean | | false | AHS | 27 | 1 | 1 |
| apump | alternative hs pump | boolean | | false | AHS | 28 | 1 | 1 |
| heatrequest | heat request | uint8 (>=0<=100) | % | false | AHS | 29 | 1 | 1 |
| blockremain | remaining blocktime | uint8 (>=0<=254) | minutes | false | AHS | 30 | 1 | 1 |
| blockremaindhw | remaining blocktime dhw | uint8 (>=0<=254) | minutes | false | AHS | 31 | 1 | 1 |
## Devices of type *mixer* ## Devices of type *mixer*
### HM210 ### HM210
| shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor | | shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor |
@@ -4025,8 +4062,8 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 | | program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 |
@@ -4043,8 +4080,8 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 | | program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 |
@@ -4074,40 +4111,40 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 56 | 1 | 1/2 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
| offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 | | offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 |
| holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 55 | 1 | 1/2 | | holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 57 | 1 | 1/2 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 |
| summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 | | summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 |
| holidaymode | holiday mode | boolean | | false | HC | 56 | 1 | 1 | | holidaymode | holiday mode | boolean | | false | HC | 58 | 1 | 1 |
| nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 | | nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 |
| nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 | | nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 |
| roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 | | roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 57 | 1 | 1 | | flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 59 | 1 | 1 |
| heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 | | heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 |
| reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 | | reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 |
| controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 | | controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 |
| control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 |
| holidays | holiday dates | string | | true | HC | 58 | 13 | 1 | | holidays | holiday dates | string | | true | HC | 60 | 13 | 1 |
| vacations | vacation dates | string | | true | HC | 71 | 13 | 1 | | vacations | vacation dates | string | | true | HC | 73 | 13 | 1 |
| program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 | | program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 |
| pause | pause time | uint8 (>=0<=99) | hours | true | HC | 84 | 1 | 1 | | pause | pause time | uint8 (>=0<=99) | hours | true | HC | 86 | 1 | 1 |
| party | party time | uint8 (>=0<=99) | hours | true | HC | 85 | 1 | 1 | | party | party time | uint8 (>=0<=99) | hours | true | HC | 87 | 1 | 1 |
| tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 | | tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 |
| noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 | | noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 |
| reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 | | reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 |
| vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 86 | 1 | 1 | | vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 88 | 1 | 1 |
| vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 87 | 1 | 1 | | vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 89 | 1 | 1 |
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 | | dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| switchtime1 | own1 program switchtime | string | | true | HC | 88 | 8 | 1 | | switchtime1 | own1 program switchtime | string | | true | HC | 90 | 8 | 1 |
| switchtime2 | own2 program switchtime | string | | true | HC | 96 | 8 | 1 | | switchtime2 | own2 program switchtime | string | | true | HC | 98 | 8 | 1 |
| mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 |
| circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 | | circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 |
| progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 | | progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 |
@@ -4140,40 +4177,40 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 56 | 1 | 1/2 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
| offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 | | offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 |
| holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 55 | 1 | 1/2 | | holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 57 | 1 | 1/2 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 |
| summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 | | summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 |
| holidaymode | holiday mode | boolean | | false | HC | 56 | 1 | 1 | | holidaymode | holiday mode | boolean | | false | HC | 58 | 1 | 1 |
| nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 | | nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 |
| nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 | | nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 |
| roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 | | roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 57 | 1 | 1 | | flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 59 | 1 | 1 |
| heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 | | heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 |
| reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 | | reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 |
| controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 | | controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 |
| control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 |
| holidays | holiday dates | string | | true | HC | 58 | 13 | 1 | | holidays | holiday dates | string | | true | HC | 60 | 13 | 1 |
| vacations | vacation dates | string | | true | HC | 71 | 13 | 1 | | vacations | vacation dates | string | | true | HC | 73 | 13 | 1 |
| program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 | | program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 |
| pause | pause time | uint8 (>=0<=99) | hours | true | HC | 84 | 1 | 1 | | pause | pause time | uint8 (>=0<=99) | hours | true | HC | 86 | 1 | 1 |
| party | party time | uint8 (>=0<=99) | hours | true | HC | 85 | 1 | 1 | | party | party time | uint8 (>=0<=99) | hours | true | HC | 87 | 1 | 1 |
| tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 | | tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 |
| noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 | | noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 |
| reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 | | reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 |
| vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 86 | 1 | 1 | | vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 88 | 1 | 1 |
| vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 87 | 1 | 1 | | vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 89 | 1 | 1 |
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 | | dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| switchtime1 | own1 program switchtime | string | | true | HC | 88 | 8 | 1 | | switchtime1 | own1 program switchtime | string | | true | HC | 90 | 8 | 1 |
| switchtime2 | own2 program switchtime | string | | true | HC | 96 | 8 | 1 | | switchtime2 | own2 program switchtime | string | | true | HC | 98 | 8 | 1 |
| mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 |
| circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 | | circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 |
| progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 | | progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 |
@@ -4216,7 +4253,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4224,10 +4261,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4255,7 +4292,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4263,10 +4300,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4294,7 +4331,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4302,10 +4339,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4333,7 +4370,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4341,10 +4378,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4372,7 +4409,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4380,10 +4417,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4411,7 +4448,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4419,10 +4456,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4450,7 +4487,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4458,10 +4495,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4489,7 +4526,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4497,10 +4534,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4528,7 +4565,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4536,10 +4573,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4567,7 +4604,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4575,10 +4612,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4606,7 +4643,7 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [nofrost\|eco\|heat] | | false | HC | 4 | 1 | 1 |
| heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 195 | 1 | 1/2 | | heattemp | heat temperature | uint8 (>=0<=127) | C | true | HC | 197 | 1 | 1/2 |
| ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 | | ecotemp | eco temperature | uint8 (>=0<=127) | C | true | HC | 5 | 1 | 1/2 |
| nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 | | nofrosttemp | nofrost temperature | int8 (>=-63<=63) | C | true | HC | 17 | 1 | 1/2 |
| control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|FB10\|FB100] | | true | HC | 40 | 1 | 1 |
@@ -4614,10 +4651,10 @@
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1/2 |
| roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 196 | 1 | 1 | | roomsensor | room sensor | enum [extern\|intern\|auto] | | true | HC | 198 | 1 | 1 |
| holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 56 | 1 | 1 | | holidaymode | holiday mode | enum [nofrost\|eco\|heat\|auto] | | true | HC | 58 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 197 | 1 | 1 | | heatup | heatup | enum [slow\|medium\|fast] | | true | HC | 199 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
@@ -4649,10 +4686,10 @@
| currtemp | current room temperature | int16 (>=-3199<=3199) | C | false | HC | 1 | 1 | 1/10 | | currtemp | current room temperature | int16 (>=-3199<=3199) | C | false | HC | 1 | 1 | 1/10 |
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|night\|day] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|night\|day] | | true | HC | 3 | 1 | 1 |
| daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| reducehours | duration for nighttemp | uint8 (>=0<=254) | hours | true | HC | 193 | 1 | 1 | | reducehours | duration for nighttemp | uint8 (>=0<=254) | hours | true | HC | 195 | 1 | 1 |
| reduceminutes | remaining time for nightmode | uint16 (>=0<=31999) | minutes | false | HC | 194 | 1 | 1 | | reduceminutes | remaining time for nightmode | uint16 (>=0<=31999) | minutes | false | HC | 196 | 1 | 1 |
| mode | operating mode | enum [on\|off\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [on\|off\|auto] | | true | DHW | 0 | 1 | 1 |
### Moduline 400 ### Moduline 400
@@ -4675,26 +4712,26 @@
| currtemp | current room temperature | int16 (>=-3199<=3199) | C | false | HC | 1 | 1 | 1/10 | | currtemp | current room temperature | int16 (>=-3199<=3199) | C | false | HC | 1 | 1 | 1/10 |
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [off\|manual\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [off\|manual\|auto] | | true | HC | 3 | 1 | 1 |
| pause | pause time | uint8 (>=0<=254) | hours | true | HC | 84 | 1 | 1 | | pause | pause time | uint8 (>=0<=254) | hours | true | HC | 86 | 1 | 1 |
| party | party time | uint8 (>=0<=254) | hours | true | HC | 85 | 1 | 1 | | party | party time | uint8 (>=0<=254) | hours | true | HC | 87 | 1 | 1 |
| vacations1 | vacation dates 1 | string | | true | HC | 116 | 11 | 1 | | vacations1 | vacation dates 1 | string | | true | HC | 118 | 11 | 1 |
| vacations2 | vacation dates 2 | string | | true | HC | 127 | 11 | 1 | | vacations2 | vacation dates 2 | string | | true | HC | 129 | 11 | 1 |
| vacations3 | vacation dates 3 | string | | true | HC | 138 | 11 | 1 | | vacations3 | vacation dates 3 | string | | true | HC | 140 | 11 | 1 |
| vacations4 | vacation dates 4 | string | | true | HC | 149 | 11 | 1 | | vacations4 | vacation dates 4 | string | | true | HC | 151 | 11 | 1 |
| vacations5 | vacation dates 5 | string | | true | HC | 160 | 11 | 1 | | vacations5 | vacation dates 5 | string | | true | HC | 162 | 11 | 1 |
| vacations6 | vacation dates 6 | string | | true | HC | 171 | 11 | 1 | | vacations6 | vacation dates 6 | string | | true | HC | 173 | 11 | 1 |
| vacations7 | vacation dates 7 | string | | true | HC | 182 | 11 | 1 | | vacations7 | vacation dates 7 | string | | true | HC | 184 | 11 | 1 |
| program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 | | program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 |
| switchtime1 | own1 program switchtime | string | | true | HC | 88 | 8 | 1 | | switchtime1 | own1 program switchtime | string | | true | HC | 90 | 8 | 1 |
| heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 | | heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 |
| controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 | | controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 |
| holidaytemp | holiday temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 | | holidaytemp | holiday temperature | uint8 (>=0<=127) | C | true | HC | 57 | 1 | 1/2 |
| nighttemp | night temperature T1 | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature T1 | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| daytemp2 | day temperature T2 | uint8 (>=0<=127) | C | true | HC | 105 | 1 | 1/2 | | daytemp2 | day temperature T2 | uint8 (>=0<=127) | C | true | HC | 107 | 1 | 1/2 |
| daytemp3 | day temperature T3 | uint8 (>=0<=127) | C | true | HC | 106 | 1 | 1/2 | | daytemp3 | day temperature T3 | uint8 (>=0<=127) | C | true | HC | 108 | 1 | 1/2 |
| daytemp4 | day temperature T4 | uint8 (>=0<=127) | C | true | HC | 107 | 1 | 1/2 | | daytemp4 | day temperature T4 | uint8 (>=0<=127) | C | true | HC | 109 | 1 | 1/2 |
| manualtemp | manual temperature | uint8 (>=0<=127) | C | true | HC | 6 | 1 | 1/2 | | manualtemp | manual temperature | uint8 (>=0<=127) | C | true | HC | 6 | 1 | 1/2 |
| offtemp | temperature when mode is off | uint8 (>=0<=127) | C | true | HC | 104 | 1 | 1/2 | | offtemp | temperature when mode is off | uint8 (>=0<=127) | C | true | HC | 106 | 1 | 1/2 |
| mode | operating mode | enum [on\|off\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [on\|off\|auto] | | true | DHW | 0 | 1 | 1 |
| whenmodeoff | when thermostat mode off | boolean | | true | DHW | 62 | 1 | 1 | | whenmodeoff | when thermostat mode off | boolean | | true | DHW | 62 | 1 | 1 |
| disinfecting | disinfecting | boolean | | true | DHW | 7 | 1 | 1 | | disinfecting | disinfecting | boolean | | true | DHW | 7 | 1 | 1 |
@@ -4713,8 +4750,8 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 | | program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 |
@@ -4735,10 +4772,10 @@
| currtemp | current room temperature | int16 (>=-3199<=3199) | C | false | HC | 1 | 1 | 1/10 | | currtemp | current room temperature | int16 (>=-3199<=3199) | C | false | HC | 1 | 1 | 1/10 |
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [nofrost\|night\|day] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [nofrost\|night\|day] | | true | HC | 3 | 1 | 1 |
| daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| reducehours | duration for nighttemp | uint8 (>=0<=254) | hours | true | HC | 193 | 1 | 1 | | reducehours | duration for nighttemp | uint8 (>=0<=254) | hours | true | HC | 195 | 1 | 1 |
| reduceminutes | remaining time for nightmode | uint16 (>=0<=31999) | minutes | false | HC | 194 | 1 | 1 | | reduceminutes | remaining time for nightmode | uint16 (>=0<=31999) | minutes | false | HC | 196 | 1 | 1 |
| mode | operating mode | enum [on\|off\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [on\|off\|auto] | | true | DHW | 0 | 1 | 1 |
| errorcode | error code | string | | false | DEVICE_DATA | 0 | 8 | 1 | | errorcode | error code | string | | false | DEVICE_DATA | 0 | 8 | 1 |
| lastcode | last error code | string | | false | DEVICE_DATA | 8 | 25 | 1 | | lastcode | last error code | string | | false | DEVICE_DATA | 8 | 25 | 1 |
@@ -4749,8 +4786,8 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 | | program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 |
@@ -4835,8 +4872,8 @@
| cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 | | cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 |
| switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 | | switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 |
| redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 | | redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 |
| solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | -1 | 1 | 1 | | solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | 53 | 1 | 1 |
| currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | -1 | 1 | 1/10 | | currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | 54 | 1 | 1/10 |
| mode | operating mode | enum [off\|normal\|comfort\|auto\|own prog] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|normal\|comfort\|auto\|own prog] | | true | DHW | 0 | 1 | 1 |
| settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 | | settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 |
| settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 | | settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 |
@@ -4936,8 +4973,8 @@
| cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 | | cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 |
| switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 | | switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 |
| redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 | | redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 |
| solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | -1 | 1 | 1 | | solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | 53 | 1 | 1 |
| currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | -1 | 1 | 1/10 | | currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | 54 | 1 | 1/10 |
| mode | operating mode | enum [off\|comfort\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|comfort\|auto] | | true | DHW | 0 | 1 | 1 |
| settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 | | settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 |
| settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 | | settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 |
@@ -4962,12 +4999,12 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [off\|manual\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [off\|manual\|auto] | | true | HC | 3 | 1 | 1 |
| manualtemp | manual temperature | uint8 (>=0<=127) | C | true | HC | 6 | 1 | 1/2 | | manualtemp | manual temperature | uint8 (>=0<=127) | C | true | HC | 6 | 1 | 1/2 |
| offtemp | temperature when mode is off | uint8 (>=0<=127) | C | true | HC | 104 | 1 | 1/2 | | offtemp | temperature when mode is off | uint8 (>=0<=127) | C | true | HC | 106 | 1 | 1/2 |
| daytemp2 | day temperature T2 | uint8 (>=0<=127) | C | true | HC | 105 | 1 | 1/2 | | daytemp2 | day temperature T2 | uint8 (>=0<=127) | C | true | HC | 107 | 1 | 1/2 |
| daytemp3 | day temperature T3 | uint8 (>=0<=127) | C | true | HC | 106 | 1 | 1/2 | | daytemp3 | day temperature T3 | uint8 (>=0<=127) | C | true | HC | 108 | 1 | 1/2 |
| daytemp4 | day temperature T4 | uint8 (>=0<=127) | C | true | HC | 107 | 1 | 1/2 | | daytemp4 | day temperature T4 | uint8 (>=0<=127) | C | true | HC | 109 | 1 | 1/2 |
| nighttemp | night temperature T1 | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature T1 | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| switchtime | program switchtime | string | | true | HC | 108 | 8 | 1 | | switchtime | program switchtime | string | | true | HC | 110 | 8 | 1 |
### RC200, CW100, CR120, CR50 ### RC200, CW100, CR120, CR50
| shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor | | shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor |
@@ -5045,8 +5082,8 @@
| cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 | | cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 |
| switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 | | switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 |
| redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 | | redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 |
| solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | -1 | 1 | 1 | | solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | 53 | 1 | 1 |
| currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | -1 | 1 | 1/10 | | currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | 54 | 1 | 1/10 |
| mode | operating mode | enum [off\|normal\|comfort\|auto\|own prog] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|normal\|comfort\|auto\|own prog] | | true | DHW | 0 | 1 | 1 |
| settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 | | settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 |
| settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 | | settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 |
@@ -5071,12 +5108,12 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [off\|manual\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [off\|manual\|auto] | | true | HC | 3 | 1 | 1 |
| manualtemp | manual temperature | uint8 (>=0<=127) | C | true | HC | 6 | 1 | 1/2 | | manualtemp | manual temperature | uint8 (>=0<=127) | C | true | HC | 6 | 1 | 1/2 |
| offtemp | temperature when mode is off | uint8 (>=0<=127) | C | true | HC | 104 | 1 | 1/2 | | offtemp | temperature when mode is off | uint8 (>=0<=127) | C | true | HC | 106 | 1 | 1/2 |
| daytemp2 | day temperature T2 | uint8 (>=0<=127) | C | true | HC | 105 | 1 | 1/2 | | daytemp2 | day temperature T2 | uint8 (>=0<=127) | C | true | HC | 107 | 1 | 1/2 |
| daytemp3 | day temperature T3 | uint8 (>=0<=127) | C | true | HC | 106 | 1 | 1/2 | | daytemp3 | day temperature T3 | uint8 (>=0<=127) | C | true | HC | 108 | 1 | 1/2 |
| daytemp4 | day temperature T4 | uint8 (>=0<=127) | C | true | HC | 107 | 1 | 1/2 | | daytemp4 | day temperature T4 | uint8 (>=0<=127) | C | true | HC | 109 | 1 | 1/2 |
| nighttemp | night temperature T1 | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature T1 | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| switchtime | program switchtime | string | | true | HC | 108 | 8 | 1 | | switchtime | program switchtime | string | | true | HC | 110 | 8 | 1 |
### RC25 ### RC25
| shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor | | shortname | fullname | type | uom | writeable | tag type | register offset | register count | scale factor |
@@ -5090,8 +5127,8 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=0<=127) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=0<=127) | C | true | HC | 56 | 1 | 1/2 |
| program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 | | program | program | enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors] | | true | HC | 25 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=0<=254) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=0<=254) | C | true | HC | 12 | 1 | 1 |
@@ -5178,8 +5215,8 @@
| cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 | | cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 |
| switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 | | switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 |
| redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 | | redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 |
| solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | -1 | 1 | 1 | | solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | 53 | 1 | 1 |
| currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | -1 | 1 | 1/10 | | currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | 54 | 1 | 1/10 |
| mode | operating mode | enum [off\|normal\|comfort\|auto\|own prog] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|normal\|comfort\|auto\|own prog] | | true | DHW | 0 | 1 | 1 |
| settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 | | settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 |
| settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 | | settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 |
@@ -5214,40 +5251,40 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 56 | 1 | 1/2 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
| offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 | | offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 |
| holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 55 | 1 | 1/2 | | holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 57 | 1 | 1/2 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 |
| summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 | | summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 |
| holidaymode | holiday mode | boolean | | false | HC | 56 | 1 | 1 | | holidaymode | holiday mode | boolean | | false | HC | 58 | 1 | 1 |
| nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 | | nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 |
| nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 | | nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 |
| roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 | | roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 57 | 1 | 1 | | flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 59 | 1 | 1 |
| heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 | | heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 |
| reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 | | reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 |
| controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 | | controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 |
| control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 |
| holidays | holiday dates | string | | true | HC | 58 | 13 | 1 | | holidays | holiday dates | string | | true | HC | 60 | 13 | 1 |
| vacations | vacation dates | string | | true | HC | 71 | 13 | 1 | | vacations | vacation dates | string | | true | HC | 73 | 13 | 1 |
| program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 | | program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 |
| pause | pause time | uint8 (>=0<=99) | hours | true | HC | 84 | 1 | 1 | | pause | pause time | uint8 (>=0<=99) | hours | true | HC | 86 | 1 | 1 |
| party | party time | uint8 (>=0<=99) | hours | true | HC | 85 | 1 | 1 | | party | party time | uint8 (>=0<=99) | hours | true | HC | 87 | 1 | 1 |
| tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 | | tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 |
| noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 | | noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 |
| reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 | | reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 |
| vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 86 | 1 | 1 | | vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 88 | 1 | 1 |
| vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 87 | 1 | 1 | | vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 89 | 1 | 1 |
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 | | dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| switchtime1 | own1 program switchtime | string | | true | HC | 88 | 8 | 1 | | switchtime1 | own1 program switchtime | string | | true | HC | 90 | 8 | 1 |
| switchtime2 | own2 program switchtime | string | | true | HC | 96 | 8 | 1 | | switchtime2 | own2 program switchtime | string | | true | HC | 98 | 8 | 1 |
| mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 |
| circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 | | circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 |
| progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 | | progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 |
@@ -5280,40 +5317,40 @@
| haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 | | haclimate | mqtt discovery current room temperature | enum [selTemp\|roomTemp] (>=5<=30) | | false | HC | 2 | 1 | 1 |
| mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 | | mode | operating mode | enum [night\|day\|auto] | | true | HC | 3 | 1 | 1 |
| modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 | | modetype | mode type | enum [night\|day] | | false | HC | 4 | 1 | 1 |
| daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 53 | 1 | 1/2 | | daytemp | day temperature | uint8 (>=10<=30) | C | true | HC | 55 | 1 | 1/2 |
| nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 54 | 1 | 1/2 | | nighttemp | night temperature | uint8 (>=10<=30) | C | true | HC | 56 | 1 | 1/2 |
| designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 | | designtemp | design temperature | uint8 (>=30<=90) | C | true | HC | 9 | 1 | 1 |
| offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 | | offsettemp | offset temperature | int8 (>=-5<=5) | C | true | HC | 10 | 1 | 1/2 |
| holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 55 | 1 | 1/2 | | holidaytemp | holiday temperature | uint8 (>=5<=30) | C | true | HC | 57 | 1 | 1/2 |
| targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 | | targetflowtemp | target flow temperature | uint8 (>=0<=254) | C | false | HC | 18 | 1 | 1 |
| summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 | | summertemp | summer temperature | uint8 (>=9<=25) | C | true | HC | 8 | 1 | 1 |
| summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 | | summermode | summer mode | enum [winter\|summer] | | false | HC | 22 | 1 | 1 |
| holidaymode | holiday mode | boolean | | false | HC | 56 | 1 | 1 | | holidaymode | holiday mode | boolean | | false | HC | 58 | 1 | 1 |
| nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 | | nofrosttemp | nofrost temperature | int8 (>=-20<=10) | C | true | HC | 17 | 1 | 1 |
| nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 | | nofrostmode | nofrost mode | enum [off\|outdoor\|room] | | true | HC | 16 | 1 | 1 |
| roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 | | roominfluence | room influence | uint8 (>=0<=10) | C | true | HC | 13 | 1 | 1 |
| minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 | | minflowtemp | min flow temperature | uint8 (>=5<=70) | C | true | HC | 11 | 1 | 1 |
| maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 | | maxflowtemp | max flow temperature | uint8 (>=30<=90) | C | true | HC | 12 | 1 | 1 |
| flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 57 | 1 | 1 | | flowtempoffset | flow temperature offset for mixer | uint8 (>=0<=20) | C | true | HC | 59 | 1 | 1 |
| heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 | | heatingtype | heating type | enum [off\|radiator\|convector\|floor] | | true | HC | 19 | 1 | 1 |
| reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 | | reducemode | reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 30 | 1 | 1 |
| controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 | | controlmode | control mode | enum [outdoor\|room] | | true | HC | 24 | 1 | 1 |
| control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 | | control | control device | enum [off\|RC20\|RC3x] | | true | HC | 40 | 1 | 1 |
| holidays | holiday dates | string | | true | HC | 58 | 13 | 1 | | holidays | holiday dates | string | | true | HC | 60 | 13 | 1 |
| vacations | vacation dates | string | | true | HC | 71 | 13 | 1 | | vacations | vacation dates | string | | true | HC | 73 | 13 | 1 |
| program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 | | program | program | enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2] | | true | HC | 25 | 1 | 1 |
| pause | pause time | uint8 (>=0<=99) | hours | true | HC | 84 | 1 | 1 | | pause | pause time | uint8 (>=0<=99) | hours | true | HC | 86 | 1 | 1 |
| party | party time | uint8 (>=0<=99) | hours | true | HC | 85 | 1 | 1 | | party | party time | uint8 (>=0<=99) | hours | true | HC | 87 | 1 | 1 |
| tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 | | tempautotemp | temporary set temperature automode | uint8 (>=0<=30) | C | true | HC | 26 | 1 | 1/2 |
| noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 | | noreducetemp | no reduce below temperature | int8 (>=-31<=10) | C | true | HC | 31 | 1 | 1 |
| reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 | | reducetemp | off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 32 | 1 | 1 |
| vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 86 | 1 | 1 | | vacreducetemp | vacations off/reduce switch temperature | int8 (>=-20<=10) | C | true | HC | 88 | 1 | 1 |
| vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 87 | 1 | 1 | | vacreducemode | vacations reduce mode | enum [nofrost\|reduce\|room\|outdoor] | | true | HC | 89 | 1 | 1 |
| remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 | | remotetemp | room temperature from remote | cmd [] (>=-1<=101) | C | true | HC | 41 | 1 | 1/10 |
| dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 | | dhwprio | dhw priority | boolean | | true | HC | 33 | 1 | 1 |
| switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 | | switchonoptimization | switch-on optimization | boolean | | true | HC | 29 | 1 | 1 |
| switchtime1 | own1 program switchtime | string | | true | HC | 88 | 8 | 1 | | switchtime1 | own1 program switchtime | string | | true | HC | 90 | 8 | 1 |
| switchtime2 | own2 program switchtime | string | | true | HC | 96 | 8 | 1 | | switchtime2 | own2 program switchtime | string | | true | HC | 98 | 8 | 1 |
| mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|on\|auto] | | true | DHW | 0 | 1 | 1 |
| circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 | | circmode | circulation pump mode | enum [off\|on\|auto] | | true | DHW | 3 | 1 | 1 |
| progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 | | progmode | program | enum [std prog\|own prog] | | true | DHW | 12 | 1 | 1 |
@@ -5427,8 +5464,8 @@
| cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 | | cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 |
| switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 | | switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 |
| redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 | | redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 |
| solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | -1 | 1 | 1 | | solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | 53 | 1 | 1 |
| currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | -1 | 1 | 1/10 | | currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | 54 | 1 | 1/10 |
| mode | operating mode | enum [normal\|comfort\|eco+] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [normal\|comfort\|eco+] | | true | DHW | 0 | 1 | 1 |
| settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 | | settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 |
| settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 | | settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 |
@@ -5520,8 +5557,8 @@
| cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 | | cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 |
| switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 | | switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 |
| redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 | | redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 |
| solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | -1 | 1 | 1 | | solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | 53 | 1 | 1 |
| currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | -1 | 1 | 1/10 | | currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | 54 | 1 | 1/10 |
| mode | operating mode | enum [off\|eco+\|eco\|comfort\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|eco+\|eco\|comfort\|auto] | | true | DHW | 0 | 1 | 1 |
| settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 | | settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 |
| settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 | | settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 |
@@ -5623,8 +5660,8 @@
| cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 | | cooloffdelay | cooling off delay | uint8 (>=1<=48) | hours | true | HC | 50 | 1 | 1 |
| switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 | | switchprogmode | switch program mode | enum [level\|absolute] | | true | HC | 51 | 1 | 1 |
| redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 | | redthreshold | reduction threshold | int8 (>=12<=22) | C | true | HC | 52 | 1 | 1/2 |
| solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | -1 | 1 | 1 | | solarinfl | solar influence | uint8 (>=-5<=4294967295) | C | true | HC | 53 | 1 | 1 |
| currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | -1 | 1 | 1/10 | | currsolarinfl | curent solar influence | uint8 (>=0<=25) | C | false | HC | 54 | 1 | 1/10 |
| mode | operating mode | enum [off\|eco+\|eco\|comfort\|auto] | | true | DHW | 0 | 1 | 1 | | mode | operating mode | enum [off\|eco+\|eco\|comfort\|auto] | | true | DHW | 0 | 1 | 1 |
| settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 | | settemp | set temperature | uint8 (>=0<=254) | C | true | DHW | 1 | 1 | 1 |
| settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 | | settemplow | set low temperature | uint8 (>=0<=254) | C | true | DHW | 2 | 1 | 1 |

View File

@@ -3438,8 +3438,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"UI800, BC400",thermostat,4,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1 "UI800, BC400",thermostat,4,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1
"UI800, BC400",thermostat,4,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1 "UI800, BC400",thermostat,4,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1
"UI800, BC400",thermostat,4,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1 "UI800, BC400",thermostat,4,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1
"UI800, BC400",thermostat,4,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,-1,1 "UI800, BC400",thermostat,4,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,53,1
"UI800, BC400",thermostat,4,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,-1,1 "UI800, BC400",thermostat,4,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,54,1
"UI800, BC400",thermostat,4,mode,operating mode,enum [off\|eco+\|eco\|comfort\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "UI800, BC400",thermostat,4,mode,operating mode,enum [off\|eco+\|eco\|comfort\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"UI800, BC400",thermostat,4,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1 "UI800, BC400",thermostat,4,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1
"UI800, BC400",thermostat,4,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1 "UI800, BC400",thermostat,4,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1
@@ -3469,8 +3469,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC10",thermostat,65,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC10",thermostat,65,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC10",thermostat,65,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC10",thermostat,65,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC10",thermostat,65,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "RC10",thermostat,65,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"RC10",thermostat,65,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "RC10",thermostat,65,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"RC10",thermostat,65,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC10",thermostat,65,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC10",thermostat,65,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "RC10",thermostat,65,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"RC10",thermostat,65,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "RC10",thermostat,65,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"RC10",thermostat,65,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "RC10",thermostat,65,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
@@ -3496,40 +3496,40 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC30",thermostat,67,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC30",thermostat,67,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC30",thermostat,67,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC30",thermostat,67,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC30",thermostat,67,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "RC30",thermostat,67,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"RC30",thermostat,67,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "RC30",thermostat,67,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"RC30",thermostat,67,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC30",thermostat,67,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC30",thermostat,67,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "RC30",thermostat,67,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
"RC30",thermostat,67,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1 "RC30",thermostat,67,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1
"RC30",thermostat,67,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,55,1 "RC30",thermostat,67,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,57,1
"RC30",thermostat,67,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "RC30",thermostat,67,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"RC30",thermostat,67,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1 "RC30",thermostat,67,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1
"RC30",thermostat,67,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1 "RC30",thermostat,67,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1
"RC30",thermostat,67,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,56,1 "RC30",thermostat,67,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,58,1
"RC30",thermostat,67,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1 "RC30",thermostat,67,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1
"RC30",thermostat,67,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1 "RC30",thermostat,67,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1
"RC30",thermostat,67,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1 "RC30",thermostat,67,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1
"RC30",thermostat,67,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "RC30",thermostat,67,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"RC30",thermostat,67,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "RC30",thermostat,67,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"RC30",thermostat,67,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,57,1 "RC30",thermostat,67,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,59,1
"RC30",thermostat,67,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1 "RC30",thermostat,67,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1
"RC30",thermostat,67,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1 "RC30",thermostat,67,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1
"RC30",thermostat,67,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1 "RC30",thermostat,67,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1
"RC30",thermostat,67,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "RC30",thermostat,67,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
"RC30",thermostat,67,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,58,13 "RC30",thermostat,67,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,60,13
"RC30",thermostat,67,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,71,13 "RC30",thermostat,67,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,73,13
"RC30",thermostat,67,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "RC30",thermostat,67,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"RC30",thermostat,67,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,84,1 "RC30",thermostat,67,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,86,1
"RC30",thermostat,67,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,85,1 "RC30",thermostat,67,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,87,1
"RC30",thermostat,67,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1 "RC30",thermostat,67,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1
"RC30",thermostat,67,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1 "RC30",thermostat,67,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1
"RC30",thermostat,67,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1 "RC30",thermostat,67,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1
"RC30",thermostat,67,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,86,1 "RC30",thermostat,67,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,88,1
"RC30",thermostat,67,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,87,1 "RC30",thermostat,67,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,89,1
"RC30",thermostat,67,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "RC30",thermostat,67,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"RC30",thermostat,67,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1 "RC30",thermostat,67,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1
"RC30",thermostat,67,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "RC30",thermostat,67,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"RC30",thermostat,67,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,88,8 "RC30",thermostat,67,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,90,8
"RC30",thermostat,67,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,96,8 "RC30",thermostat,67,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,98,8
"RC30",thermostat,67,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "RC30",thermostat,67,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"RC30",thermostat,67,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1 "RC30",thermostat,67,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1
"RC30",thermostat,67,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1 "RC30",thermostat,67,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1
@@ -3551,12 +3551,12 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC20, Moduline 300",thermostat,77,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC20, Moduline 300",thermostat,77,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC20, Moduline 300",thermostat,77,mode,operating mode,enum [off\|manual\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC20, Moduline 300",thermostat,77,mode,operating mode,enum [off\|manual\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC20, Moduline 300",thermostat,77,manualtemp,manual temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_manual_temperature,number.thermostat_hc1_manualtemp,6,1,1/2,6,1 "RC20, Moduline 300",thermostat,77,manualtemp,manual temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_manual_temperature,number.thermostat_hc1_manualtemp,6,1,1/2,6,1
"RC20, Moduline 300",thermostat,77,offtemp,temperature when mode is off,uint8 (>=0<=127),C,true,number.thermostat_hc1_temperature_when_mode_is_off,number.thermostat_hc1_offtemp,6,1,1/2,104,1 "RC20, Moduline 300",thermostat,77,offtemp,temperature when mode is off,uint8 (>=0<=127),C,true,number.thermostat_hc1_temperature_when_mode_is_off,number.thermostat_hc1_offtemp,6,1,1/2,106,1
"RC20, Moduline 300",thermostat,77,daytemp2,day temperature T2,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T2,number.thermostat_hc1_daytemp2,6,1,1/2,105,1 "RC20, Moduline 300",thermostat,77,daytemp2,day temperature T2,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T2,number.thermostat_hc1_daytemp2,6,1,1/2,107,1
"RC20, Moduline 300",thermostat,77,daytemp3,day temperature T3,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T3,number.thermostat_hc1_daytemp3,6,1,1/2,106,1 "RC20, Moduline 300",thermostat,77,daytemp3,day temperature T3,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T3,number.thermostat_hc1_daytemp3,6,1,1/2,108,1
"RC20, Moduline 300",thermostat,77,daytemp4,day temperature T4,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T4,number.thermostat_hc1_daytemp4,6,1,1/2,107,1 "RC20, Moduline 300",thermostat,77,daytemp4,day temperature T4,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T4,number.thermostat_hc1_daytemp4,6,1,1/2,109,1
"RC20, Moduline 300",thermostat,77,nighttemp,night temperature T1,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature_T1,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC20, Moduline 300",thermostat,77,nighttemp,night temperature T1,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature_T1,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC20, Moduline 300",thermostat,77,switchtime,program switchtime,string, ,true,sensor.thermostat_hc1_program_switchtime,sensor.thermostat_hc1_switchtime,6,1,1,108,8 "RC20, Moduline 300",thermostat,77,switchtime,program switchtime,string, ,true,sensor.thermostat_hc1_program_switchtime,sensor.thermostat_hc1_switchtime,6,1,1,110,8
"Moduline 400",thermostat,78,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8 "Moduline 400",thermostat,78,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8
"Moduline 400",thermostat,78,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25 "Moduline 400",thermostat,78,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25
"Moduline 400",thermostat,78,datetime,date/time,string, ,false,sensor.thermostat_date/time,sensor.thermostat_datetime,6,0,1,33,13 "Moduline 400",thermostat,78,datetime,date/time,string, ,false,sensor.thermostat_date/time,sensor.thermostat_datetime,6,0,1,33,13
@@ -3574,26 +3574,26 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"Moduline 400",thermostat,78,currtemp,current room temperature,int16 (>=-3199<=3199),C,false,sensor.thermostat_hc1_current_room_temperature,sensor.thermostat_hc1_currtemp,6,1,1/10,1,1 "Moduline 400",thermostat,78,currtemp,current room temperature,int16 (>=-3199<=3199),C,false,sensor.thermostat_hc1_current_room_temperature,sensor.thermostat_hc1_currtemp,6,1,1/10,1,1
"Moduline 400",thermostat,78,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "Moduline 400",thermostat,78,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"Moduline 400",thermostat,78,mode,operating mode,enum [off\|manual\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "Moduline 400",thermostat,78,mode,operating mode,enum [off\|manual\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"Moduline 400",thermostat,78,pause,pause time,uint8 (>=0<=254),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,84,1 "Moduline 400",thermostat,78,pause,pause time,uint8 (>=0<=254),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,86,1
"Moduline 400",thermostat,78,party,party time,uint8 (>=0<=254),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,85,1 "Moduline 400",thermostat,78,party,party time,uint8 (>=0<=254),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,87,1
"Moduline 400",thermostat,78,vacations1,vacation dates 1,string, ,true,sensor.thermostat_hc1_vacation_dates_1,sensor.thermostat_hc1_vacations1,6,1,1,116,11 "Moduline 400",thermostat,78,vacations1,vacation dates 1,string, ,true,sensor.thermostat_hc1_vacation_dates_1,sensor.thermostat_hc1_vacations1,6,1,1,118,11
"Moduline 400",thermostat,78,vacations2,vacation dates 2,string, ,true,sensor.thermostat_hc1_vacation_dates_2,sensor.thermostat_hc1_vacations2,6,1,1,127,11 "Moduline 400",thermostat,78,vacations2,vacation dates 2,string, ,true,sensor.thermostat_hc1_vacation_dates_2,sensor.thermostat_hc1_vacations2,6,1,1,129,11
"Moduline 400",thermostat,78,vacations3,vacation dates 3,string, ,true,sensor.thermostat_hc1_vacation_dates_3,sensor.thermostat_hc1_vacations3,6,1,1,138,11 "Moduline 400",thermostat,78,vacations3,vacation dates 3,string, ,true,sensor.thermostat_hc1_vacation_dates_3,sensor.thermostat_hc1_vacations3,6,1,1,140,11
"Moduline 400",thermostat,78,vacations4,vacation dates 4,string, ,true,sensor.thermostat_hc1_vacation_dates_4,sensor.thermostat_hc1_vacations4,6,1,1,149,11 "Moduline 400",thermostat,78,vacations4,vacation dates 4,string, ,true,sensor.thermostat_hc1_vacation_dates_4,sensor.thermostat_hc1_vacations4,6,1,1,151,11
"Moduline 400",thermostat,78,vacations5,vacation dates 5,string, ,true,sensor.thermostat_hc1_vacation_dates_5,sensor.thermostat_hc1_vacations5,6,1,1,160,11 "Moduline 400",thermostat,78,vacations5,vacation dates 5,string, ,true,sensor.thermostat_hc1_vacation_dates_5,sensor.thermostat_hc1_vacations5,6,1,1,162,11
"Moduline 400",thermostat,78,vacations6,vacation dates 6,string, ,true,sensor.thermostat_hc1_vacation_dates_6,sensor.thermostat_hc1_vacations6,6,1,1,171,11 "Moduline 400",thermostat,78,vacations6,vacation dates 6,string, ,true,sensor.thermostat_hc1_vacation_dates_6,sensor.thermostat_hc1_vacations6,6,1,1,173,11
"Moduline 400",thermostat,78,vacations7,vacation dates 7,string, ,true,sensor.thermostat_hc1_vacation_dates_7,sensor.thermostat_hc1_vacations7,6,1,1,182,11 "Moduline 400",thermostat,78,vacations7,vacation dates 7,string, ,true,sensor.thermostat_hc1_vacation_dates_7,sensor.thermostat_hc1_vacations7,6,1,1,184,11
"Moduline 400",thermostat,78,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "Moduline 400",thermostat,78,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"Moduline 400",thermostat,78,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,88,8 "Moduline 400",thermostat,78,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,90,8
"Moduline 400",thermostat,78,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1 "Moduline 400",thermostat,78,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1
"Moduline 400",thermostat,78,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1 "Moduline 400",thermostat,78,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1
"Moduline 400",thermostat,78,holidaytemp,holiday temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,55,1 "Moduline 400",thermostat,78,holidaytemp,holiday temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,57,1
"Moduline 400",thermostat,78,nighttemp,night temperature T1,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature_T1,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "Moduline 400",thermostat,78,nighttemp,night temperature T1,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature_T1,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"Moduline 400",thermostat,78,daytemp2,day temperature T2,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T2,number.thermostat_hc1_daytemp2,6,1,1/2,105,1 "Moduline 400",thermostat,78,daytemp2,day temperature T2,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T2,number.thermostat_hc1_daytemp2,6,1,1/2,107,1
"Moduline 400",thermostat,78,daytemp3,day temperature T3,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T3,number.thermostat_hc1_daytemp3,6,1,1/2,106,1 "Moduline 400",thermostat,78,daytemp3,day temperature T3,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T3,number.thermostat_hc1_daytemp3,6,1,1/2,108,1
"Moduline 400",thermostat,78,daytemp4,day temperature T4,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T4,number.thermostat_hc1_daytemp4,6,1,1/2,107,1 "Moduline 400",thermostat,78,daytemp4,day temperature T4,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T4,number.thermostat_hc1_daytemp4,6,1,1/2,109,1
"Moduline 400",thermostat,78,manualtemp,manual temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_manual_temperature,number.thermostat_hc1_manualtemp,6,1,1/2,6,1 "Moduline 400",thermostat,78,manualtemp,manual temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_manual_temperature,number.thermostat_hc1_manualtemp,6,1,1/2,6,1
"Moduline 400",thermostat,78,offtemp,temperature when mode is off,uint8 (>=0<=127),C,true,number.thermostat_hc1_temperature_when_mode_is_off,number.thermostat_hc1_offtemp,6,1,1/2,104,1 "Moduline 400",thermostat,78,offtemp,temperature when mode is off,uint8 (>=0<=127),C,true,number.thermostat_hc1_temperature_when_mode_is_off,number.thermostat_hc1_offtemp,6,1,1/2,106,1
"Moduline 400",thermostat,78,mode,operating mode,enum [on\|off\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "Moduline 400",thermostat,78,mode,operating mode,enum [on\|off\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"Moduline 400",thermostat,78,whenmodeoff,when thermostat mode off,boolean, ,true,switch.thermostat_dhw_when_thermostat_mode_off,switch.thermostat_dhw_whenmodeoff,6,9,1,62,1 "Moduline 400",thermostat,78,whenmodeoff,when thermostat mode off,boolean, ,true,switch.thermostat_dhw_when_thermostat_mode_off,switch.thermostat_dhw_whenmodeoff,6,9,1,62,1
"Moduline 400",thermostat,78,disinfecting,disinfecting,boolean, ,true,switch.thermostat_dhw_disinfecting,switch.thermostat_dhw_disinfecting,6,9,1,7,1 "Moduline 400",thermostat,78,disinfecting,disinfecting,boolean, ,true,switch.thermostat_dhw_disinfecting,switch.thermostat_dhw_disinfecting,6,9,1,7,1
@@ -3608,10 +3608,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC10, Moduline 100",thermostat,79,currtemp,current room temperature,int16 (>=-3199<=3199),C,false,sensor.thermostat_hc1_current_room_temperature,sensor.thermostat_hc1_currtemp,6,1,1/10,1,1 "RC10, Moduline 100",thermostat,79,currtemp,current room temperature,int16 (>=-3199<=3199),C,false,sensor.thermostat_hc1_current_room_temperature,sensor.thermostat_hc1_currtemp,6,1,1/10,1,1
"RC10, Moduline 100",thermostat,79,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC10, Moduline 100",thermostat,79,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC10, Moduline 100",thermostat,79,mode,operating mode,enum [nofrost\|night\|day], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC10, Moduline 100",thermostat,79,mode,operating mode,enum [nofrost\|night\|day], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC10, Moduline 100",thermostat,79,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "RC10, Moduline 100",thermostat,79,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"RC10, Moduline 100",thermostat,79,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC10, Moduline 100",thermostat,79,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC10, Moduline 100",thermostat,79,reducehours,duration for nighttemp,uint8 (>=0<=254),hours,true,number.thermostat_hc1_duration_for_nighttemp,number.thermostat_hc1_reducehours,6,1,1,193,1 "RC10, Moduline 100",thermostat,79,reducehours,duration for nighttemp,uint8 (>=0<=254),hours,true,number.thermostat_hc1_duration_for_nighttemp,number.thermostat_hc1_reducehours,6,1,1,195,1
"RC10, Moduline 100",thermostat,79,reduceminutes,remaining time for nightmode,uint16 (>=0<=31999),minutes,false,sensor.thermostat_hc1_remaining_time_for_nightmode,sensor.thermostat_hc1_reduceminutes,6,1,1,194,1 "RC10, Moduline 100",thermostat,79,reduceminutes,remaining time for nightmode,uint16 (>=0<=31999),minutes,false,sensor.thermostat_hc1_remaining_time_for_nightmode,sensor.thermostat_hc1_reduceminutes,6,1,1,196,1
"RC10, Moduline 100",thermostat,79,mode,operating mode,enum [on\|off\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "RC10, Moduline 100",thermostat,79,mode,operating mode,enum [on\|off\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"Moduline 200",thermostat,80,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8 "Moduline 200",thermostat,80,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8
"Moduline 200",thermostat,80,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25 "Moduline 200",thermostat,80,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25
@@ -3622,10 +3622,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"Moduline 200",thermostat,80,currtemp,current room temperature,int16 (>=-3199<=3199),C,false,sensor.thermostat_hc1_current_room_temperature,sensor.thermostat_hc1_currtemp,6,1,1/10,1,1 "Moduline 200",thermostat,80,currtemp,current room temperature,int16 (>=-3199<=3199),C,false,sensor.thermostat_hc1_current_room_temperature,sensor.thermostat_hc1_currtemp,6,1,1/10,1,1
"Moduline 200",thermostat,80,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "Moduline 200",thermostat,80,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"Moduline 200",thermostat,80,mode,operating mode,enum [nofrost\|night\|day], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "Moduline 200",thermostat,80,mode,operating mode,enum [nofrost\|night\|day], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"Moduline 200",thermostat,80,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "Moduline 200",thermostat,80,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"Moduline 200",thermostat,80,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "Moduline 200",thermostat,80,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"Moduline 200",thermostat,80,reducehours,duration for nighttemp,uint8 (>=0<=254),hours,true,number.thermostat_hc1_duration_for_nighttemp,number.thermostat_hc1_reducehours,6,1,1,193,1 "Moduline 200",thermostat,80,reducehours,duration for nighttemp,uint8 (>=0<=254),hours,true,number.thermostat_hc1_duration_for_nighttemp,number.thermostat_hc1_reducehours,6,1,1,195,1
"Moduline 200",thermostat,80,reduceminutes,remaining time for nightmode,uint16 (>=0<=31999),minutes,false,sensor.thermostat_hc1_remaining_time_for_nightmode,sensor.thermostat_hc1_reduceminutes,6,1,1,194,1 "Moduline 200",thermostat,80,reduceminutes,remaining time for nightmode,uint16 (>=0<=31999),minutes,false,sensor.thermostat_hc1_remaining_time_for_nightmode,sensor.thermostat_hc1_reduceminutes,6,1,1,196,1
"Moduline 200",thermostat,80,mode,operating mode,enum [on\|off\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "Moduline 200",thermostat,80,mode,operating mode,enum [on\|off\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"RC35",thermostat,86,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8 "RC35",thermostat,86,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8
"RC35",thermostat,86,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25 "RC35",thermostat,86,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25
@@ -3642,40 +3642,40 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC35",thermostat,86,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC35",thermostat,86,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC35",thermostat,86,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC35",thermostat,86,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC35",thermostat,86,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "RC35",thermostat,86,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"RC35",thermostat,86,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "RC35",thermostat,86,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"RC35",thermostat,86,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC35",thermostat,86,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC35",thermostat,86,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "RC35",thermostat,86,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
"RC35",thermostat,86,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1 "RC35",thermostat,86,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1
"RC35",thermostat,86,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,55,1 "RC35",thermostat,86,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,57,1
"RC35",thermostat,86,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "RC35",thermostat,86,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"RC35",thermostat,86,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1 "RC35",thermostat,86,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1
"RC35",thermostat,86,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1 "RC35",thermostat,86,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1
"RC35",thermostat,86,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,56,1 "RC35",thermostat,86,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,58,1
"RC35",thermostat,86,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1 "RC35",thermostat,86,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1
"RC35",thermostat,86,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1 "RC35",thermostat,86,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1
"RC35",thermostat,86,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1 "RC35",thermostat,86,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1
"RC35",thermostat,86,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "RC35",thermostat,86,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"RC35",thermostat,86,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "RC35",thermostat,86,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"RC35",thermostat,86,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,57,1 "RC35",thermostat,86,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,59,1
"RC35",thermostat,86,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1 "RC35",thermostat,86,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1
"RC35",thermostat,86,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1 "RC35",thermostat,86,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1
"RC35",thermostat,86,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1 "RC35",thermostat,86,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1
"RC35",thermostat,86,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "RC35",thermostat,86,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
"RC35",thermostat,86,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,58,13 "RC35",thermostat,86,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,60,13
"RC35",thermostat,86,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,71,13 "RC35",thermostat,86,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,73,13
"RC35",thermostat,86,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "RC35",thermostat,86,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"RC35",thermostat,86,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,84,1 "RC35",thermostat,86,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,86,1
"RC35",thermostat,86,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,85,1 "RC35",thermostat,86,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,87,1
"RC35",thermostat,86,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1 "RC35",thermostat,86,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1
"RC35",thermostat,86,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1 "RC35",thermostat,86,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1
"RC35",thermostat,86,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1 "RC35",thermostat,86,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1
"RC35",thermostat,86,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,86,1 "RC35",thermostat,86,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,88,1
"RC35",thermostat,86,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,87,1 "RC35",thermostat,86,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,89,1
"RC35",thermostat,86,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "RC35",thermostat,86,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"RC35",thermostat,86,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1 "RC35",thermostat,86,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1
"RC35",thermostat,86,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "RC35",thermostat,86,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"RC35",thermostat,86,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,88,8 "RC35",thermostat,86,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,90,8
"RC35",thermostat,86,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,96,8 "RC35",thermostat,86,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,98,8
"RC35",thermostat,86,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "RC35",thermostat,86,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"RC35",thermostat,86,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1 "RC35",thermostat,86,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1
"RC35",thermostat,86,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1 "RC35",thermostat,86,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1
@@ -3698,8 +3698,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC10, Moduline 100",thermostat,90,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC10, Moduline 100",thermostat,90,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC10, Moduline 100",thermostat,90,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC10, Moduline 100",thermostat,90,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC10, Moduline 100",thermostat,90,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "RC10, Moduline 100",thermostat,90,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"RC10, Moduline 100",thermostat,90,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "RC10, Moduline 100",thermostat,90,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"RC10, Moduline 100",thermostat,90,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC10, Moduline 100",thermostat,90,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC10, Moduline 100",thermostat,90,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "RC10, Moduline 100",thermostat,90,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"RC10, Moduline 100",thermostat,90,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "RC10, Moduline 100",thermostat,90,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"RC10, Moduline 100",thermostat,90,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "RC10, Moduline 100",thermostat,90,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
@@ -3715,12 +3715,12 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC20RF",thermostat,93,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC20RF",thermostat,93,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC20RF",thermostat,93,mode,operating mode,enum [off\|manual\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC20RF",thermostat,93,mode,operating mode,enum [off\|manual\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC20RF",thermostat,93,manualtemp,manual temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_manual_temperature,number.thermostat_hc1_manualtemp,6,1,1/2,6,1 "RC20RF",thermostat,93,manualtemp,manual temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_manual_temperature,number.thermostat_hc1_manualtemp,6,1,1/2,6,1
"RC20RF",thermostat,93,offtemp,temperature when mode is off,uint8 (>=0<=127),C,true,number.thermostat_hc1_temperature_when_mode_is_off,number.thermostat_hc1_offtemp,6,1,1/2,104,1 "RC20RF",thermostat,93,offtemp,temperature when mode is off,uint8 (>=0<=127),C,true,number.thermostat_hc1_temperature_when_mode_is_off,number.thermostat_hc1_offtemp,6,1,1/2,106,1
"RC20RF",thermostat,93,daytemp2,day temperature T2,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T2,number.thermostat_hc1_daytemp2,6,1,1/2,105,1 "RC20RF",thermostat,93,daytemp2,day temperature T2,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T2,number.thermostat_hc1_daytemp2,6,1,1/2,107,1
"RC20RF",thermostat,93,daytemp3,day temperature T3,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T3,number.thermostat_hc1_daytemp3,6,1,1/2,106,1 "RC20RF",thermostat,93,daytemp3,day temperature T3,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T3,number.thermostat_hc1_daytemp3,6,1,1/2,108,1
"RC20RF",thermostat,93,daytemp4,day temperature T4,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T4,number.thermostat_hc1_daytemp4,6,1,1/2,107,1 "RC20RF",thermostat,93,daytemp4,day temperature T4,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature_T4,number.thermostat_hc1_daytemp4,6,1,1/2,109,1
"RC20RF",thermostat,93,nighttemp,night temperature T1,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature_T1,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC20RF",thermostat,93,nighttemp,night temperature T1,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature_T1,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC20RF",thermostat,93,switchtime,program switchtime,string, ,true,sensor.thermostat_hc1_program_switchtime,sensor.thermostat_hc1_switchtime,6,1,1,108,8 "RC20RF",thermostat,93,switchtime,program switchtime,string, ,true,sensor.thermostat_hc1_program_switchtime,sensor.thermostat_hc1_switchtime,6,1,1,110,8
"RFM20 Remote",thermostat,94,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8 "RFM20 Remote",thermostat,94,errorcode,error code,string, ,false,sensor.thermostat_error_code,sensor.thermostat_errorcode,6,0,1,0,8
"RFM20 Remote",thermostat,94,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25 "RFM20 Remote",thermostat,94,lastcode,last error code,string, ,false,sensor.thermostat_last_error_code,sensor.thermostat_lastcode,6,0,1,8,25
"RFM20 Remote",thermostat,94,datetime,date/time,string, ,false,sensor.thermostat_date/time,sensor.thermostat_datetime,6,0,1,33,13 "RFM20 Remote",thermostat,94,datetime,date/time,string, ,false,sensor.thermostat_date/time,sensor.thermostat_datetime,6,0,1,33,13
@@ -3736,8 +3736,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC25",thermostat,151,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "RC25",thermostat,151,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"RC25",thermostat,151,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "RC25",thermostat,151,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"RC25",thermostat,151,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "RC25",thermostat,151,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"RC25",thermostat,151,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "RC25",thermostat,151,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"RC25",thermostat,151,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "RC25",thermostat,151,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"RC25",thermostat,151,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "RC25",thermostat,151,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"RC25",thermostat,151,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "RC25",thermostat,151,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"RC25",thermostat,151,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "RC25",thermostat,151,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
@@ -3818,8 +3818,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC200, CW100, CR120, CR50",thermostat,157,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1 "RC200, CW100, CR120, CR50",thermostat,157,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1
"RC200, CW100, CR120, CR50",thermostat,157,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1 "RC200, CW100, CR120, CR50",thermostat,157,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1
"RC200, CW100, CR120, CR50",thermostat,157,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1 "RC200, CW100, CR120, CR50",thermostat,157,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1
"RC200, CW100, CR120, CR50",thermostat,157,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,-1,1 "RC200, CW100, CR120, CR50",thermostat,157,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,53,1
"RC200, CW100, CR120, CR50",thermostat,157,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,-1,1 "RC200, CW100, CR120, CR50",thermostat,157,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,54,1
"RC200, CW100, CR120, CR50",thermostat,157,mode,operating mode,enum [off\|normal\|comfort\|auto\|own prog], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "RC200, CW100, CR120, CR50",thermostat,157,mode,operating mode,enum [off\|normal\|comfort\|auto\|own prog], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"RC200, CW100, CR120, CR50",thermostat,157,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1 "RC200, CW100, CR120, CR50",thermostat,157,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1
"RC200, CW100, CR120, CR50",thermostat,157,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1 "RC200, CW100, CR120, CR50",thermostat,157,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1
@@ -3907,8 +3907,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,-1,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,53,1
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,-1,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,54,1
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,mode,operating mode,enum [off\|normal\|comfort\|auto\|own prog], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,mode,operating mode,enum [off\|normal\|comfort\|auto\|own prog], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1
"RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1 "RC3*0, Moduline 3000/1010H, CW400, Sense II, HPC410",thermostat,158,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1
@@ -3994,8 +3994,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC100, CR10, Moduline 1000/1010",thermostat,165,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1
"RC100, CR10, Moduline 1000/1010",thermostat,165,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1
"RC100, CR10, Moduline 1000/1010",thermostat,165,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1
"RC100, CR10, Moduline 1000/1010",thermostat,165,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,-1,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,53,1
"RC100, CR10, Moduline 1000/1010",thermostat,165,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,-1,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,54,1
"RC100, CR10, Moduline 1000/1010",thermostat,165,mode,operating mode,enum [off\|normal\|comfort\|auto\|own prog], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,mode,operating mode,enum [off\|normal\|comfort\|auto\|own prog], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"RC100, CR10, Moduline 1000/1010",thermostat,165,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1
"RC100, CR10, Moduline 1000/1010",thermostat,165,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1 "RC100, CR10, Moduline 1000/1010",thermostat,165,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1
@@ -4084,8 +4084,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"Rego 2000/3000",thermostat,172,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1 "Rego 2000/3000",thermostat,172,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1
"Rego 2000/3000",thermostat,172,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1 "Rego 2000/3000",thermostat,172,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1
"Rego 2000/3000",thermostat,172,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1 "Rego 2000/3000",thermostat,172,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1
"Rego 2000/3000",thermostat,172,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,-1,1 "Rego 2000/3000",thermostat,172,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,53,1
"Rego 2000/3000",thermostat,172,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,-1,1 "Rego 2000/3000",thermostat,172,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,54,1
"Rego 2000/3000",thermostat,172,mode,operating mode,enum [normal\|comfort\|eco+], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "Rego 2000/3000",thermostat,172,mode,operating mode,enum [normal\|comfort\|eco+], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"Rego 2000/3000",thermostat,172,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1 "Rego 2000/3000",thermostat,172,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1
"Rego 2000/3000",thermostat,172,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1 "Rego 2000/3000",thermostat,172,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1
@@ -4200,8 +4200,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"Rego 3000, UI800, Logamatic BC400",thermostat,253,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1
"Rego 3000, UI800, Logamatic BC400",thermostat,253,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1
"Rego 3000, UI800, Logamatic BC400",thermostat,253,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1
"Rego 3000, UI800, Logamatic BC400",thermostat,253,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,-1,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,53,1
"Rego 3000, UI800, Logamatic BC400",thermostat,253,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,-1,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,54,1
"Rego 3000, UI800, Logamatic BC400",thermostat,253,mode,operating mode,enum [off\|eco+\|eco\|comfort\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,mode,operating mode,enum [off\|eco+\|eco\|comfort\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"Rego 3000, UI800, Logamatic BC400",thermostat,253,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1
"Rego 3000, UI800, Logamatic BC400",thermostat,253,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1 "Rego 3000, UI800, Logamatic BC400",thermostat,253,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1
@@ -4223,8 +4223,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"ES72, RC20",thermostat,66,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "ES72, RC20",thermostat,66,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"ES72, RC20",thermostat,66,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "ES72, RC20",thermostat,66,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"ES72, RC20",thermostat,66,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "ES72, RC20",thermostat,66,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"ES72, RC20",thermostat,66,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "ES72, RC20",thermostat,66,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"ES72, RC20",thermostat,66,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "ES72, RC20",thermostat,66,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"ES72, RC20",thermostat,66,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "ES72, RC20",thermostat,66,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"ES72, RC20",thermostat,66,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "ES72, RC20",thermostat,66,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"ES72, RC20",thermostat,66,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "ES72, RC20",thermostat,66,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
@@ -4250,40 +4250,40 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"ES73",thermostat,76,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "ES73",thermostat,76,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"ES73",thermostat,76,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "ES73",thermostat,76,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"ES73",thermostat,76,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "ES73",thermostat,76,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"ES73",thermostat,76,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "ES73",thermostat,76,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"ES73",thermostat,76,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "ES73",thermostat,76,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"ES73",thermostat,76,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "ES73",thermostat,76,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
"ES73",thermostat,76,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1 "ES73",thermostat,76,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1
"ES73",thermostat,76,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,55,1 "ES73",thermostat,76,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,57,1
"ES73",thermostat,76,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "ES73",thermostat,76,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"ES73",thermostat,76,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1 "ES73",thermostat,76,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1
"ES73",thermostat,76,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1 "ES73",thermostat,76,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1
"ES73",thermostat,76,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,56,1 "ES73",thermostat,76,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,58,1
"ES73",thermostat,76,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1 "ES73",thermostat,76,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1
"ES73",thermostat,76,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1 "ES73",thermostat,76,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1
"ES73",thermostat,76,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1 "ES73",thermostat,76,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1
"ES73",thermostat,76,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "ES73",thermostat,76,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"ES73",thermostat,76,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "ES73",thermostat,76,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"ES73",thermostat,76,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,57,1 "ES73",thermostat,76,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,59,1
"ES73",thermostat,76,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1 "ES73",thermostat,76,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1
"ES73",thermostat,76,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1 "ES73",thermostat,76,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1
"ES73",thermostat,76,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1 "ES73",thermostat,76,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1
"ES73",thermostat,76,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "ES73",thermostat,76,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
"ES73",thermostat,76,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,58,13 "ES73",thermostat,76,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,60,13
"ES73",thermostat,76,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,71,13 "ES73",thermostat,76,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,73,13
"ES73",thermostat,76,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "ES73",thermostat,76,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"ES73",thermostat,76,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,84,1 "ES73",thermostat,76,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,86,1
"ES73",thermostat,76,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,85,1 "ES73",thermostat,76,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,87,1
"ES73",thermostat,76,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1 "ES73",thermostat,76,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1
"ES73",thermostat,76,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1 "ES73",thermostat,76,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1
"ES73",thermostat,76,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1 "ES73",thermostat,76,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1
"ES73",thermostat,76,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,86,1 "ES73",thermostat,76,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,88,1
"ES73",thermostat,76,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,87,1 "ES73",thermostat,76,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,89,1
"ES73",thermostat,76,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "ES73",thermostat,76,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"ES73",thermostat,76,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1 "ES73",thermostat,76,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1
"ES73",thermostat,76,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "ES73",thermostat,76,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"ES73",thermostat,76,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,88,8 "ES73",thermostat,76,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,90,8
"ES73",thermostat,76,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,96,8 "ES73",thermostat,76,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,98,8
"ES73",thermostat,76,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "ES73",thermostat,76,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"ES73",thermostat,76,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1 "ES73",thermostat,76,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1
"ES73",thermostat,76,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1 "ES73",thermostat,76,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1
@@ -4306,8 +4306,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"ES72, RC20",thermostat,113,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "ES72, RC20",thermostat,113,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"ES72, RC20",thermostat,113,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "ES72, RC20",thermostat,113,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"ES72, RC20",thermostat,113,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "ES72, RC20",thermostat,113,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"ES72, RC20",thermostat,113,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "ES72, RC20",thermostat,113,daytemp,day temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"ES72, RC20",thermostat,113,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "ES72, RC20",thermostat,113,nighttemp,night temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"ES72, RC20",thermostat,113,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "ES72, RC20",thermostat,113,program,program,enum [family\|morning\|evening\|am\|pm\|midday\|singles\|seniors], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"ES72, RC20",thermostat,113,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "ES72, RC20",thermostat,113,minflowtemp,min flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"ES72, RC20",thermostat,113,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "ES72, RC20",thermostat,113,maxflowtemp,max flow temperature,uint8 (>=0<=254),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
@@ -4330,40 +4330,40 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"ES79",thermostat,156,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "ES79",thermostat,156,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"ES79",thermostat,156,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "ES79",thermostat,156,mode,operating mode,enum [night\|day\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"ES79",thermostat,156,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "ES79",thermostat,156,modetype,mode type,enum [night\|day], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"ES79",thermostat,156,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,53,1 "ES79",thermostat,156,daytemp,day temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_day_temperature,number.thermostat_hc1_daytemp,6,1,1/2,55,1
"ES79",thermostat,156,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,54,1 "ES79",thermostat,156,nighttemp,night temperature,uint8 (>=10<=30),C,true,number.thermostat_hc1_night_temperature,number.thermostat_hc1_nighttemp,6,1,1/2,56,1
"ES79",thermostat,156,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "ES79",thermostat,156,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
"ES79",thermostat,156,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1 "ES79",thermostat,156,offsettemp,offset temperature,int8 (>=-5<=5),C,true,number.thermostat_hc1_offset_temperature,number.thermostat_hc1_offsettemp,6,1,1/2,10,1
"ES79",thermostat,156,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,55,1 "ES79",thermostat,156,holidaytemp,holiday temperature,uint8 (>=5<=30),C,true,number.thermostat_hc1_holiday_temperature,number.thermostat_hc1_holidaytemp,6,1,1/2,57,1
"ES79",thermostat,156,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "ES79",thermostat,156,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"ES79",thermostat,156,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1 "ES79",thermostat,156,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1,8,1
"ES79",thermostat,156,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1 "ES79",thermostat,156,summermode,summer mode,enum [winter\|summer], ,false,sensor.thermostat_hc1_summer_mode,sensor.thermostat_hc1_summermode,6,1,1,22,1
"ES79",thermostat,156,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,56,1 "ES79",thermostat,156,holidaymode,holiday mode,boolean, ,false,binary_sensor.thermostat_hc1_holiday_mode,binary_sensor.thermostat_hc1_holidaymode,6,1,1,58,1
"ES79",thermostat,156,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1 "ES79",thermostat,156,nofrosttemp,nofrost temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1,17,1
"ES79",thermostat,156,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1 "ES79",thermostat,156,nofrostmode,nofrost mode,enum [off\|outdoor\|room], ,true,select.thermostat_hc1_nofrost_mode,select.thermostat_hc1_nofrostmode,6,1,1,16,1
"ES79",thermostat,156,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1 "ES79",thermostat,156,roominfluence,room influence,uint8 (>=0<=10),C,true,number.thermostat_hc1_room_influence,number.thermostat_hc1_roominfluence,6,1,1,13,1
"ES79",thermostat,156,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "ES79",thermostat,156,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"ES79",thermostat,156,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "ES79",thermostat,156,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"ES79",thermostat,156,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,57,1 "ES79",thermostat,156,flowtempoffset,flow temperature offset for mixer,uint8 (>=0<=20),C,true,number.thermostat_hc1_flow_temperature_offset_for_mixer,number.thermostat_hc1_flowtempoffset,6,1,1,59,1
"ES79",thermostat,156,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1 "ES79",thermostat,156,heatingtype,heating type,enum [off\|radiator\|convector\|floor], ,true,select.thermostat_hc1_heating_type,select.thermostat_hc1_heatingtype,6,1,1,19,1
"ES79",thermostat,156,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1 "ES79",thermostat,156,reducemode,reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_reduce_mode,select.thermostat_hc1_reducemode,6,1,1,30,1
"ES79",thermostat,156,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1 "ES79",thermostat,156,controlmode,control mode,enum [outdoor\|room], ,true,select.thermostat_hc1_control_mode,select.thermostat_hc1_controlmode,6,1,1,24,1
"ES79",thermostat,156,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "ES79",thermostat,156,control,control device,enum [off\|RC20\|RC3x], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
"ES79",thermostat,156,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,58,13 "ES79",thermostat,156,holidays,holiday dates,string, ,true,sensor.thermostat_hc1_holiday_dates,sensor.thermostat_hc1_holidays,6,1,1,60,13
"ES79",thermostat,156,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,71,13 "ES79",thermostat,156,vacations,vacation dates,string, ,true,sensor.thermostat_hc1_vacation_dates,sensor.thermostat_hc1_vacations,6,1,1,73,13
"ES79",thermostat,156,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1 "ES79",thermostat,156,program,program,enum [own 1\|family\|morning\|evening\|am\|pm\|midday\|singles\|seniors\|new\|own 2], ,true,select.thermostat_hc1_program,select.thermostat_hc1_program,6,1,1,25,1
"ES79",thermostat,156,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,84,1 "ES79",thermostat,156,pause,pause time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_pause_time,number.thermostat_hc1_pause,6,1,1,86,1
"ES79",thermostat,156,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,85,1 "ES79",thermostat,156,party,party time,uint8 (>=0<=99),hours,true,number.thermostat_hc1_party_time,number.thermostat_hc1_party,6,1,1,87,1
"ES79",thermostat,156,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1 "ES79",thermostat,156,tempautotemp,temporary set temperature automode,uint8 (>=0<=30),C,true,number.thermostat_hc1_temporary_set_temperature_automode,number.thermostat_hc1_tempautotemp,6,1,1/2,26,1
"ES79",thermostat,156,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1 "ES79",thermostat,156,noreducetemp,no reduce below temperature,int8 (>=-31<=10),C,true,number.thermostat_hc1_no_reduce_below_temperature,number.thermostat_hc1_noreducetemp,6,1,1,31,1
"ES79",thermostat,156,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1 "ES79",thermostat,156,reducetemp,off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_off/reduce_switch_temperature,number.thermostat_hc1_reducetemp,6,1,1,32,1
"ES79",thermostat,156,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,86,1 "ES79",thermostat,156,vacreducetemp,vacations off/reduce switch temperature,int8 (>=-20<=10),C,true,number.thermostat_hc1_vacations_off/reduce_switch_temperature,number.thermostat_hc1_vacreducetemp,6,1,1,88,1
"ES79",thermostat,156,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,87,1 "ES79",thermostat,156,vacreducemode,vacations reduce mode,enum [nofrost\|reduce\|room\|outdoor], ,true,select.thermostat_hc1_vacations_reduce_mode,select.thermostat_hc1_vacreducemode,6,1,1,89,1
"ES79",thermostat,156,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "ES79",thermostat,156,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"ES79",thermostat,156,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1 "ES79",thermostat,156,dhwprio,dhw priority,boolean, ,true,switch.thermostat_hc1_dhw_priority,switch.thermostat_hc1_dhwprio,6,1,1,33,1
"ES79",thermostat,156,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "ES79",thermostat,156,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"ES79",thermostat,156,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,88,8 "ES79",thermostat,156,switchtime1,own1 program switchtime,string, ,true,sensor.thermostat_hc1_own1_program_switchtime,sensor.thermostat_hc1_switchtime1,6,1,1,90,8
"ES79",thermostat,156,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,96,8 "ES79",thermostat,156,switchtime2,own2 program switchtime,string, ,true,sensor.thermostat_hc1_own2_program_switchtime,sensor.thermostat_hc1_switchtime2,6,1,1,98,8
"ES79",thermostat,156,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "ES79",thermostat,156,mode,operating mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"ES79",thermostat,156,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1 "ES79",thermostat,156,circmode,circulation pump mode,enum [off\|on\|auto], ,true,select.thermostat_dhw_circulation_pump_mode,select.thermostat_dhw_circmode,6,9,1,3,1
"ES79",thermostat,156,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1 "ES79",thermostat,156,progmode,program,enum [std prog\|own prog], ,true,select.thermostat_dhw_program,select.thermostat_dhw_progmode,6,9,1,12,1
@@ -4392,7 +4392,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW100",thermostat,105,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FW100",thermostat,105,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FW100",thermostat,105,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FW100",thermostat,105,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FW100",thermostat,105,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FW100",thermostat,105,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FW100",thermostat,105,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FW100",thermostat,105,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FW100",thermostat,105,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FW100",thermostat,105,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FW100",thermostat,105,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FW100",thermostat,105,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FW100",thermostat,105,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FW100",thermostat,105,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4400,10 +4400,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW100",thermostat,105,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FW100",thermostat,105,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FW100",thermostat,105,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FW100",thermostat,105,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FW100",thermostat,105,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FW100",thermostat,105,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FW100",thermostat,105,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FW100",thermostat,105,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FW100",thermostat,105,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FW100",thermostat,105,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FW100",thermostat,105,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FW100",thermostat,105,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FW100",thermostat,105,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FW100",thermostat,105,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FW100",thermostat,105,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FW100",thermostat,105,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FW100",thermostat,105,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FW100",thermostat,105,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FW100",thermostat,105,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FW100",thermostat,105,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4427,7 +4427,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW200",thermostat,106,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FW200",thermostat,106,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FW200",thermostat,106,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FW200",thermostat,106,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FW200",thermostat,106,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FW200",thermostat,106,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FW200",thermostat,106,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FW200",thermostat,106,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FW200",thermostat,106,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FW200",thermostat,106,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FW200",thermostat,106,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FW200",thermostat,106,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FW200",thermostat,106,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FW200",thermostat,106,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4435,10 +4435,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW200",thermostat,106,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FW200",thermostat,106,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FW200",thermostat,106,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FW200",thermostat,106,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FW200",thermostat,106,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FW200",thermostat,106,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FW200",thermostat,106,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FW200",thermostat,106,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FW200",thermostat,106,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FW200",thermostat,106,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FW200",thermostat,106,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FW200",thermostat,106,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FW200",thermostat,106,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FW200",thermostat,106,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FW200",thermostat,106,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FW200",thermostat,106,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FW200",thermostat,106,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FW200",thermostat,106,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FW200",thermostat,106,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FW200",thermostat,106,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4462,7 +4462,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR100",thermostat,107,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FR100",thermostat,107,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FR100",thermostat,107,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FR100",thermostat,107,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FR100",thermostat,107,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FR100",thermostat,107,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FR100",thermostat,107,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FR100",thermostat,107,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FR100",thermostat,107,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FR100",thermostat,107,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FR100",thermostat,107,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FR100",thermostat,107,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FR100",thermostat,107,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FR100",thermostat,107,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4470,10 +4470,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR100",thermostat,107,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FR100",thermostat,107,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FR100",thermostat,107,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FR100",thermostat,107,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FR100",thermostat,107,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FR100",thermostat,107,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FR100",thermostat,107,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FR100",thermostat,107,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FR100",thermostat,107,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FR100",thermostat,107,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FR100",thermostat,107,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FR100",thermostat,107,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FR100",thermostat,107,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FR100",thermostat,107,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FR100",thermostat,107,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FR100",thermostat,107,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FR100",thermostat,107,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FR100",thermostat,107,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FR100",thermostat,107,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FR100",thermostat,107,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4497,7 +4497,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR110",thermostat,108,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FR110",thermostat,108,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FR110",thermostat,108,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FR110",thermostat,108,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FR110",thermostat,108,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FR110",thermostat,108,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FR110",thermostat,108,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FR110",thermostat,108,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FR110",thermostat,108,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FR110",thermostat,108,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FR110",thermostat,108,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FR110",thermostat,108,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FR110",thermostat,108,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FR110",thermostat,108,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4505,10 +4505,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR110",thermostat,108,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FR110",thermostat,108,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FR110",thermostat,108,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FR110",thermostat,108,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FR110",thermostat,108,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FR110",thermostat,108,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FR110",thermostat,108,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FR110",thermostat,108,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FR110",thermostat,108,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FR110",thermostat,108,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FR110",thermostat,108,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FR110",thermostat,108,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FR110",thermostat,108,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FR110",thermostat,108,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FR110",thermostat,108,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FR110",thermostat,108,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FR110",thermostat,108,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FR110",thermostat,108,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FR110",thermostat,108,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FR110",thermostat,108,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4532,7 +4532,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FB10",thermostat,109,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FB10",thermostat,109,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FB10",thermostat,109,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FB10",thermostat,109,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FB10",thermostat,109,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FB10",thermostat,109,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FB10",thermostat,109,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FB10",thermostat,109,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FB10",thermostat,109,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FB10",thermostat,109,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FB10",thermostat,109,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FB10",thermostat,109,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FB10",thermostat,109,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FB10",thermostat,109,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4540,10 +4540,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FB10",thermostat,109,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FB10",thermostat,109,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FB10",thermostat,109,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FB10",thermostat,109,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FB10",thermostat,109,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FB10",thermostat,109,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FB10",thermostat,109,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FB10",thermostat,109,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FB10",thermostat,109,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FB10",thermostat,109,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FB10",thermostat,109,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FB10",thermostat,109,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FB10",thermostat,109,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FB10",thermostat,109,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FB10",thermostat,109,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FB10",thermostat,109,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FB10",thermostat,109,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FB10",thermostat,109,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FB10",thermostat,109,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FB10",thermostat,109,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4567,7 +4567,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FB100",thermostat,110,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FB100",thermostat,110,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FB100",thermostat,110,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FB100",thermostat,110,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FB100",thermostat,110,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FB100",thermostat,110,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FB100",thermostat,110,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FB100",thermostat,110,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FB100",thermostat,110,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FB100",thermostat,110,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FB100",thermostat,110,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FB100",thermostat,110,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FB100",thermostat,110,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FB100",thermostat,110,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4575,10 +4575,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FB100",thermostat,110,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FB100",thermostat,110,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FB100",thermostat,110,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FB100",thermostat,110,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FB100",thermostat,110,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FB100",thermostat,110,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FB100",thermostat,110,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FB100",thermostat,110,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FB100",thermostat,110,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FB100",thermostat,110,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FB100",thermostat,110,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FB100",thermostat,110,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FB100",thermostat,110,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FB100",thermostat,110,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FB100",thermostat,110,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FB100",thermostat,110,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FB100",thermostat,110,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FB100",thermostat,110,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FB100",thermostat,110,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FB100",thermostat,110,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4602,7 +4602,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR10",thermostat,111,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FR10",thermostat,111,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FR10",thermostat,111,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FR10",thermostat,111,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FR10",thermostat,111,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FR10",thermostat,111,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FR10",thermostat,111,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FR10",thermostat,111,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FR10",thermostat,111,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FR10",thermostat,111,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FR10",thermostat,111,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FR10",thermostat,111,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FR10",thermostat,111,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FR10",thermostat,111,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4610,10 +4610,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR10",thermostat,111,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FR10",thermostat,111,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FR10",thermostat,111,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FR10",thermostat,111,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FR10",thermostat,111,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FR10",thermostat,111,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FR10",thermostat,111,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FR10",thermostat,111,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FR10",thermostat,111,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FR10",thermostat,111,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FR10",thermostat,111,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FR10",thermostat,111,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FR10",thermostat,111,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FR10",thermostat,111,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FR10",thermostat,111,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FR10",thermostat,111,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FR10",thermostat,111,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FR10",thermostat,111,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FR10",thermostat,111,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FR10",thermostat,111,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4637,7 +4637,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW500",thermostat,116,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FW500",thermostat,116,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FW500",thermostat,116,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FW500",thermostat,116,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FW500",thermostat,116,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FW500",thermostat,116,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FW500",thermostat,116,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FW500",thermostat,116,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FW500",thermostat,116,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FW500",thermostat,116,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FW500",thermostat,116,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FW500",thermostat,116,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FW500",thermostat,116,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FW500",thermostat,116,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4645,10 +4645,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW500",thermostat,116,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FW500",thermostat,116,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FW500",thermostat,116,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FW500",thermostat,116,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FW500",thermostat,116,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FW500",thermostat,116,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FW500",thermostat,116,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FW500",thermostat,116,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FW500",thermostat,116,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FW500",thermostat,116,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FW500",thermostat,116,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FW500",thermostat,116,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FW500",thermostat,116,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FW500",thermostat,116,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FW500",thermostat,116,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FW500",thermostat,116,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FW500",thermostat,116,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FW500",thermostat,116,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FW500",thermostat,116,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FW500",thermostat,116,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4672,7 +4672,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR50",thermostat,147,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FR50",thermostat,147,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FR50",thermostat,147,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FR50",thermostat,147,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FR50",thermostat,147,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FR50",thermostat,147,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FR50",thermostat,147,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FR50",thermostat,147,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FR50",thermostat,147,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FR50",thermostat,147,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FR50",thermostat,147,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FR50",thermostat,147,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FR50",thermostat,147,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FR50",thermostat,147,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4680,10 +4680,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR50",thermostat,147,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FR50",thermostat,147,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FR50",thermostat,147,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FR50",thermostat,147,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FR50",thermostat,147,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FR50",thermostat,147,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FR50",thermostat,147,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FR50",thermostat,147,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FR50",thermostat,147,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FR50",thermostat,147,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FR50",thermostat,147,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FR50",thermostat,147,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FR50",thermostat,147,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FR50",thermostat,147,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FR50",thermostat,147,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FR50",thermostat,147,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FR50",thermostat,147,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FR50",thermostat,147,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FR50",thermostat,147,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FR50",thermostat,147,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4707,7 +4707,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR120",thermostat,191,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FR120",thermostat,191,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FR120",thermostat,191,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FR120",thermostat,191,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FR120",thermostat,191,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FR120",thermostat,191,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FR120",thermostat,191,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FR120",thermostat,191,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FR120",thermostat,191,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FR120",thermostat,191,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FR120",thermostat,191,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FR120",thermostat,191,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FR120",thermostat,191,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FR120",thermostat,191,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4715,10 +4715,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FR120",thermostat,191,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FR120",thermostat,191,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FR120",thermostat,191,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FR120",thermostat,191,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FR120",thermostat,191,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FR120",thermostat,191,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FR120",thermostat,191,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FR120",thermostat,191,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FR120",thermostat,191,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FR120",thermostat,191,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FR120",thermostat,191,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FR120",thermostat,191,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FR120",thermostat,191,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FR120",thermostat,191,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FR120",thermostat,191,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FR120",thermostat,191,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FR120",thermostat,191,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FR120",thermostat,191,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FR120",thermostat,191,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FR120",thermostat,191,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4742,7 +4742,7 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW120",thermostat,192,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1 "FW120",thermostat,192,haclimate,mqtt discovery current room temperature,enum [selTemp\|roomTemp] (>=5<=30), ,false,sensor.thermostat_hc1_mqtt_discovery_current_room_temperature,sensor.thermostat_hc1_haclimate,6,1,1,2,1
"FW120",thermostat,192,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1 "FW120",thermostat,192,mode,operating mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_operating_mode,select.thermostat_hc1_mode,6,1,1,3,1
"FW120",thermostat,192,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1 "FW120",thermostat,192,modetype,mode type,enum [nofrost\|eco\|heat], ,false,sensor.thermostat_hc1_mode_type,sensor.thermostat_hc1_modetype,6,1,1,4,1
"FW120",thermostat,192,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,195,1 "FW120",thermostat,192,heattemp,heat temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_heat_temperature,number.thermostat_hc1_heattemp,6,1,1/2,197,1
"FW120",thermostat,192,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1 "FW120",thermostat,192,ecotemp,eco temperature,uint8 (>=0<=127),C,true,number.thermostat_hc1_eco_temperature,number.thermostat_hc1_ecotemp,6,1,1/2,5,1
"FW120",thermostat,192,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1 "FW120",thermostat,192,nofrosttemp,nofrost temperature,int8 (>=-63<=63),C,true,number.thermostat_hc1_nofrost_temperature,number.thermostat_hc1_nofrosttemp,6,1,1/2,17,1
"FW120",thermostat,192,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1 "FW120",thermostat,192,control,control device,enum [off\|FB10\|FB100], ,true,select.thermostat_hc1_control_device,select.thermostat_hc1_control,6,1,1,40,1
@@ -4750,10 +4750,10 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"FW120",thermostat,192,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1 "FW120",thermostat,192,remotetemp,room temperature from remote,cmd [] (>=-1<=101),C,true,sensor.thermostat_hc1_room_temperature_from_remote,sensor.thermostat_hc1_remotetemp,6,1,1/10,41,1
"FW120",thermostat,192,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1 "FW120",thermostat,192,targetflowtemp,target flow temperature,uint8 (>=0<=254),C,false,sensor.thermostat_hc1_target_flow_temperature,sensor.thermostat_hc1_targetflowtemp,6,1,1,18,1
"FW120",thermostat,192,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1 "FW120",thermostat,192,summertemp,summer temperature,uint8 (>=9<=25),C,true,number.thermostat_hc1_summer_temperature,number.thermostat_hc1_summertemp,6,1,1/2,8,1
"FW120",thermostat,192,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,196,1 "FW120",thermostat,192,roomsensor,room sensor,enum [extern\|intern\|auto], ,true,select.thermostat_hc1_room_sensor,select.thermostat_hc1_roomsensor,6,1,1,198,1
"FW120",thermostat,192,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,56,1 "FW120",thermostat,192,holidaymode,holiday mode,enum [nofrost\|eco\|heat\|auto], ,true,select.thermostat_hc1_holiday_mode,select.thermostat_hc1_holidaymode,6,1,1,58,1
"FW120",thermostat,192,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1 "FW120",thermostat,192,switchonoptimization,switch-on optimization,boolean, ,true,switch.thermostat_hc1_switch-on_optimization,switch.thermostat_hc1_switchonoptimization,6,1,1,29,1
"FW120",thermostat,192,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,197,1 "FW120",thermostat,192,heatup,heatup,enum [slow\|medium\|fast], ,true,select.thermostat_hc1_heatup,select.thermostat_hc1_heatup,6,1,1,199,1
"FW120",thermostat,192,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1 "FW120",thermostat,192,minflowtemp,min flow temperature,uint8 (>=5<=70),C,true,number.thermostat_hc1_min_flow_temperature,number.thermostat_hc1_minflowtemp,6,1,1,11,1
"FW120",thermostat,192,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1 "FW120",thermostat,192,maxflowtemp,max flow temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_max_flow_temperature,number.thermostat_hc1_maxflowtemp,6,1,1,12,1
"FW120",thermostat,192,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1 "FW120",thermostat,192,designtemp,design temperature,uint8 (>=30<=90),C,true,number.thermostat_hc1_design_temperature,number.thermostat_hc1_designtemp,6,1,1,9,1
@@ -4853,8 +4853,8 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"RC120",thermostat,157,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1 "RC120",thermostat,157,cooloffdelay,cooling off delay,uint8 (>=1<=48),hours,true,number.thermostat_hc1_cooling_off_delay,number.thermostat_hc1_cooloffdelay,6,1,1,50,1
"RC120",thermostat,157,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1 "RC120",thermostat,157,switchprogmode,switch program mode,enum [level\|absolute], ,true,select.thermostat_hc1_switch_program_mode,select.thermostat_hc1_switchprogmode,6,1,1,51,1
"RC120",thermostat,157,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1 "RC120",thermostat,157,redthreshold,reduction threshold,int8 (>=12<=22),C,true,number.thermostat_hc1_reduction_threshold,number.thermostat_hc1_redthreshold,6,1,1/2,52,1
"RC120",thermostat,157,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,-1,1 "RC120",thermostat,157,solarinfl,solar influence,uint8 (>=-5<=4294967295),C,true,number.thermostat_hc1_solar_influence,number.thermostat_hc1_solarinfl,6,1,1,53,1
"RC120",thermostat,157,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,-1,1 "RC120",thermostat,157,currsolarinfl,curent solar influence,uint8 (>=0<=25),C,false,sensor.thermostat_hc1_curent_solar_influence,sensor.thermostat_hc1_currsolarinfl,6,1,1/10,54,1
"RC120",thermostat,157,mode,operating mode,enum [off\|comfort\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1 "RC120",thermostat,157,mode,operating mode,enum [off\|comfort\|auto], ,true,select.thermostat_dhw_operating_mode,select.thermostat_dhw_mode,6,9,1,0,1
"RC120",thermostat,157,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1 "RC120",thermostat,157,settemp,set temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_temperature,number.thermostat_dhw_settemp,6,9,1,1,1
"RC120",thermostat,157,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1 "RC120",thermostat,157,settemplow,set low temperature,uint8 (>=0<=254),C,true,number.thermostat_dhw_set_low_temperature,number.thermostat_dhw_settemplow,6,9,1,2,1
@@ -5253,6 +5253,38 @@ device name,device type,product id,shortname,fullname,type [options...] \| (min/
"T1RF",extension,220,mint,min temp.,uint8 (>=0<=254),C,true,number.extension_min_temp.,number.extension_mint,15,0,1,7,1 "T1RF",extension,220,mint,min temp.,uint8 (>=0<=254),C,true,number.extension_min_temp.,number.extension_mint,15,0,1,7,1
"T1RF",extension,220,maxt,max temp.,uint8 (>=0<=254),C,true,number.extension_max_temp.,number.extension_maxt,15,0,1,8,1 "T1RF",extension,220,maxt,max temp.,uint8 (>=0<=254),C,true,number.extension_max_temp.,number.extension_maxt,15,0,1,8,1
"T1RF",extension,220,mode,operating mode,uint8 (>=0<=254), ,false,sensor.extension_operating_mode,sensor.extension_mode,15,0,1,9,1 "T1RF",extension,220,mode,operating mode,uint8 (>=0<=254), ,false,sensor.extension_operating_mode,sensor.extension_mode,15,0,1,9,1
"AM200",heatsource,228,sysflowtemp,system flow temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_system_flow_temperature,sensor.heatsource_ahs1_sysflowtemp,17,19,1/10,0,1
"AM200",heatsource,228,sysrettemp,system return temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_system_return_temperature,sensor.heatsource_ahs1_sysrettemp,17,19,1/10,1,1
"AM200",heatsource,228,altflowtemp,alternative hs flow temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_alternative_hs_flow_temperature,sensor.heatsource_ahs1_altflowtemp,17,19,1/10,2,1
"AM200",heatsource,228,altrettemp,alternative hs return temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_alternative_hs_return_temperature,sensor.heatsource_ahs1_altrettemp,17,19,1/10,3,1
"AM200",heatsource,228,cyltoptemp,cylinder top temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_cylinder_top_temperature,sensor.heatsource_ahs1_cyltoptemp,17,19,1/10,4,1
"AM200",heatsource,228,cylcentertemp,cylinder center temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_cylinder_center_temperature,sensor.heatsource_ahs1_cylcentertemp,17,19,1/10,5,1
"AM200",heatsource,228,cylbottomtemp,cylinder bottom temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_cylinder_bottom_temperature,sensor.heatsource_ahs1_cylbottomtemp,17,19,1/10,6,1
"AM200",heatsource,228,fluegastemp,flue gas temperature,int16 (>=-3199<=3199),C,false,sensor.heatsource_ahs1_flue_gas_temperature,sensor.heatsource_ahs1_fluegastemp,17,19,1/10,7,1
"AM200",heatsource,228,valvebuffer,buffer valve,uint8 (>=0<=100),%,false,sensor.heatsource_ahs1_buffer_valve,sensor.heatsource_ahs1_valvebuffer,17,19,1,8,1
"AM200",heatsource,228,valvereturn,return valve,uint8 (>=0<=100),%,false,sensor.heatsource_ahs1_return_valve,sensor.heatsource_ahs1_valvereturn,17,19,1,9,1
"AM200",heatsource,228,apumpmod,alternative hs pump modulation,uint8 (>=0<=100),%,false,sensor.heatsource_ahs1_alternative_hs_pump_modulation,sensor.heatsource_ahs1_apumpmod,17,19,1,10,1
"AM200",heatsource,228,vr2config,vr2 configuration,enum [off\|bypass], ,true,select.heatsource_ahs1_vr2_configuration,select.heatsource_ahs1_vr2config,17,19,1,11,1
"AM200",heatsource,228,ahsactivated,alternate heat source activation,boolean, ,true,switch.heatsource_ahs1_alternate_heat_source_activation,switch.heatsource_ahs1_ahsactivated,17,19,1,12,1
"AM200",heatsource,228,apumpconfig,primary pump config,boolean, ,true,switch.heatsource_ahs1_primary_pump_config,switch.heatsource_ahs1_apumpconfig,17,19,1,13,1
"AM200",heatsource,228,apumpsignal,output for pr1 pump,enum [off\|pwm\|pwm inverse], ,true,select.heatsource_ahs1_output_for_pr1_pump,select.heatsource_ahs1_apumpsignal,17,19,1,14,1
"AM200",heatsource,228,apumpmin,min output pump pr1,uint8 (>=12<=50),%,true,number.heatsource_ahs1_min_output_pump_pr1,number.heatsource_ahs1_apumpmin,17,19,1,15,1
"AM200",heatsource,228,temprise,ahs return temp rise,boolean, ,true,switch.heatsource_ahs1_ahs_return_temp_rise,switch.heatsource_ahs1_temprise,17,19,1,16,1
"AM200",heatsource,228,setreturntemp,set temp return,uint8 (>=40<=75),C,true,number.heatsource_ahs1_set_temp_return,number.heatsource_ahs1_setreturntemp,17,19,1,17,1
"AM200",heatsource,228,mixruntime,mixer run time,uint16 (>=0<=600),seconds,true,number.heatsource_ahs1_mixer_run_time,number.heatsource_ahs1_mixruntime,17,19,1,18,1
"AM200",heatsource,228,setflowtemp,set flow temperature,uint8 (>=40<=75),C,true,number.heatsource_ahs1_set_flow_temperature,number.heatsource_ahs1_setflowtemp,17,19,1,19,1
"AM200",heatsource,228,bufbypass,buffer bypass config,enum [no\|mixer\|valve], ,true,select.heatsource_ahs1_buffer_bypass_config,select.heatsource_ahs1_bufbypass,17,19,1,20,1
"AM200",heatsource,228,bufmixruntime,bypass mixer run time,uint16 (>=0<=600),seconds,true,number.heatsource_ahs1_bypass_mixer_run_time,number.heatsource_ahs1_bufmixruntime,17,19,1,21,1
"AM200",heatsource,228,bufconfig,dhw buffer config,enum [off\|monovalent\|bivalent], ,true,select.heatsource_ahs1_dhw_buffer_config,select.heatsource_ahs1_bufconfig,17,19,1,22,1
"AM200",heatsource,228,blockmode,config htg. blocking mode,enum [off\|auto\|blocking], ,true,select.heatsource_ahs1_config_htg._blocking_mode,select.heatsource_ahs1_blockmode,17,19,1,23,1
"AM200",heatsource,228,blockterm,config of block terminal,enum [n_o\|n_c], ,true,select.heatsource_ahs1_config_of_block_terminal,select.heatsource_ahs1_blockterm,17,19,1,24,1
"AM200",heatsource,228,blockhyst,hyst. for boiler block,int8 (>=0<=50),C,true,number.heatsource_ahs1_hyst._for_boiler_block,number.heatsource_ahs1_blockhyst,17,19,1,25,1
"AM200",heatsource,228,releasewait,boiler release wait time,uint8 (>=0<=240),minutes,true,number.heatsource_ahs1_boiler_release_wait_time,number.heatsource_ahs1_releasewait,17,19,1,26,1
"AM200",heatsource,228,burner,burner,boolean, ,false,binary_sensor.heatsource_ahs1_burner,binary_sensor.heatsource_ahs1_burner,17,19,1,27,1
"AM200",heatsource,228,apump,alternative hs pump,boolean, ,false,binary_sensor.heatsource_ahs1_alternative_hs_pump,binary_sensor.heatsource_ahs1_apump,17,19,1,28,1
"AM200",heatsource,228,heatrequest,heat request,uint8 (>=0<=100),%,false,sensor.heatsource_ahs1_heat_request,sensor.heatsource_ahs1_heatrequest,17,19,1,29,1
"AM200",heatsource,228,blockremain,remaining blocktime,uint8 (>=0<=254),minutes,false,sensor.heatsource_ahs1_remaining_blocktime,sensor.heatsource_ahs1_blockremain,17,19,1,30,1
"AM200",heatsource,228,blockremaindhw,remaining blocktime dhw,uint8 (>=0<=254),minutes,false,sensor.heatsource_ahs1_remaining_blocktime_dhw,sensor.heatsource_ahs1_blockremaindhw,17,19,1,31,1
"Logavent HRV176",ventilation,231,outfresh,outdoor fresh air,int16 (>=-3199<=3199),C,false,sensor.ventilation_outdoor_fresh_air,sensor.ventilation_outfresh,18,0,1/10,0,1 "Logavent HRV176",ventilation,231,outfresh,outdoor fresh air,int16 (>=-3199<=3199),C,false,sensor.ventilation_outdoor_fresh_air,sensor.ventilation_outfresh,18,0,1/10,0,1
"Logavent HRV176",ventilation,231,infresh,indoor fresh air,int16 (>=-3199<=3199),C,false,sensor.ventilation_indoor_fresh_air,sensor.ventilation_infresh,18,0,1/10,1,1 "Logavent HRV176",ventilation,231,infresh,indoor fresh air,int16 (>=-3199<=3199),C,false,sensor.ventilation_indoor_fresh_air,sensor.ventilation_infresh,18,0,1/10,1,1
"Logavent HRV176",ventilation,231,outexhaust,outdoor exhaust air,int16 (>=-3199<=3199),C,false,sensor.ventilation_outdoor_exhaust_air,sensor.ventilation_outexhaust,18,0,1/10,2,1 "Logavent HRV176",ventilation,231,outexhaust,outdoor exhaust air,int16 (>=-3199<=3199),C,false,sensor.ventilation_outdoor_exhaust_air,sensor.ventilation_outexhaust,18,0,1/10,2,1
Can't render this file because it is too large.

View File

@@ -24,10 +24,10 @@
"@alova/adapter-xhr": "2.1.1", "@alova/adapter-xhr": "2.1.1",
"@emotion/react": "^11.14.0", "@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.0", "@emotion/styled": "^11.14.0",
"@mui/icons-material": "^6.3.1", "@mui/icons-material": "^6.4.0",
"@mui/material": "^6.3.1", "@mui/material": "^6.4.0",
"@table-library/react-table-library": "4.1.7", "@table-library/react-table-library": "4.1.7",
"alova": "3.2.7", "alova": "3.2.8",
"async-validator": "^4.2.5", "async-validator": "^4.2.5",
"jwt-decode": "^4.0.0", "jwt-decode": "^4.0.0",
"mime-types": "^2.1.35", "mime-types": "^2.1.35",
@@ -35,8 +35,8 @@
"react": "^19.0.0", "react": "^19.0.0",
"react-dom": "^19.0.0", "react-dom": "^19.0.0",
"react-icons": "^5.4.0", "react-icons": "^5.4.0",
"react-router": "^7.1.1", "react-router": "^7.1.2",
"react-toastify": "^11.0.2", "react-toastify": "^11.0.3",
"typesafe-i18n": "^5.26.2", "typesafe-i18n": "^5.26.2",
"typescript": "^5.7.3" "typescript": "^5.7.3"
}, },
@@ -47,17 +47,17 @@
"@preact/preset-vite": "^2.9.4", "@preact/preset-vite": "^2.9.4",
"@trivago/prettier-plugin-sort-imports": "^5.2.1", "@trivago/prettier-plugin-sort-imports": "^5.2.1",
"@types/formidable": "^3", "@types/formidable": "^3",
"@types/node": "^22.10.5", "@types/node": "^22.10.7",
"@types/react": "^19.0.5", "@types/react": "^19.0.7",
"@types/react-dom": "^19.0.3", "@types/react-dom": "^19.0.3",
"concurrently": "^9.1.2", "concurrently": "^9.1.2",
"eslint": "^9.18.0", "eslint": "^9.18.0",
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^10.0.1",
"formidable": "^3.5.2", "formidable": "^3.5.2",
"prettier": "^3.4.2", "prettier": "^3.4.2",
"rollup-plugin-visualizer": "^5.14.0", "rollup-plugin-visualizer": "^5.14.0",
"terser": "^5.37.0", "terser": "^5.37.0",
"typescript-eslint": "8.19.1", "typescript-eslint": "8.20.0",
"vite": "^6.0.7", "vite": "^6.0.7",
"vite-plugin-imagemin": "^0.6.1", "vite-plugin-imagemin": "^0.6.1",
"vite-tsconfig-paths": "^5.1.4" "vite-tsconfig-paths": "^5.1.4"

View File

@@ -4,28 +4,46 @@ import { Slide, ToastContainer } from 'react-toastify';
import AppRouting from 'AppRouting'; import AppRouting from 'AppRouting';
import CustomTheme from 'CustomTheme'; import CustomTheme from 'CustomTheme';
import TypesafeI18n from 'i18n/i18n-react'; import TypesafeI18n from 'i18n/i18n-react';
import { detectLocale } from 'i18n/i18n-util'; import type { Locales } from 'i18n/i18n-types';
import { loadLocaleAsync } from 'i18n/i18n-util.async'; import { loadLocaleAsync } from 'i18n/i18n-util.async';
import { localStorageDetector } from 'typesafe-i18n/detectors'; import { detectLocale, navigatorDetector } from 'typesafe-i18n/detectors';
const detectedLocale = detectLocale(localStorageDetector); const availableLocales = [
'de',
'en',
'it',
'fr',
'nl',
'no',
'pl',
'sk',
'sv',
'tr',
'cz'
];
const App = () => { const App = () => {
const [wasLoaded, setWasLoaded] = useState(false); const [wasLoaded, setWasLoaded] = useState(false);
const [locale, setLocale] = useState<Locales>('en');
useEffect(() => { useEffect(() => {
void loadLocaleAsync(detectedLocale).then(() => setWasLoaded(true)); // determine locale, take from session if set other default to browser language
const browserLocale = detectLocale('en', availableLocales, navigatorDetector);
const newLocale = (localStorage.getItem('lang') || browserLocale) as Locales;
localStorage.setItem('lang', newLocale);
setLocale(newLocale);
void loadLocaleAsync(newLocale).then(() => setWasLoaded(true));
}, []); }, []);
if (!wasLoaded) return null; if (!wasLoaded) return null;
return ( return (
<TypesafeI18n locale={detectedLocale}> <TypesafeI18n locale={locale}>
<CustomTheme> <CustomTheme>
<AppRouting /> <AppRouting />
<ToastContainer <ToastContainer
position="bottom-left" position="bottom-left"
autoClose={3000} autoClose={2000}
hideProgressBar={false} hideProgressBar={false}
newestOnTop={false} newestOnTop={false}
closeOnClick={true} closeOnClick={true}

View File

@@ -1,9 +1,9 @@
import { useContext, useEffect, useState } from 'react'; import { useContext, useEffect, useState } from 'react';
import { IconContext } from 'react-icons/lib'; import { IconContext } from 'react-icons/lib';
import { Link } from 'react-router';
import { toast } from 'react-toastify'; import { toast } from 'react-toastify';
import ChevronRightIcon from '@mui/icons-material/ChevronRight'; import ChevronRightIcon from '@mui/icons-material/ChevronRight';
import ConstructionIcon from '@mui/icons-material/Construction';
import EditIcon from '@mui/icons-material/Edit'; import EditIcon from '@mui/icons-material/Edit';
import ExpandMoreIcon from '@mui/icons-material/ExpandMore'; import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
import UnfoldLessIcon from '@mui/icons-material/UnfoldLess'; import UnfoldLessIcon from '@mui/icons-material/UnfoldLess';
@@ -22,7 +22,7 @@ import { Body, Cell, Row, Table } from '@table-library/react-table-library/table
import { useTheme } from '@table-library/react-table-library/theme'; import { useTheme } from '@table-library/react-table-library/theme';
import { CellTree, useTree } from '@table-library/react-table-library/tree'; import { CellTree, useTree } from '@table-library/react-table-library/tree';
import { useRequest } from 'alova/client'; import { useRequest } from 'alova/client';
import { FormLoader, SectionContent, useLayoutTitle } from 'components'; import { FormLoader, MessageBox, SectionContent, useLayoutTitle } from 'components';
import { AuthenticatedContext } from 'contexts/authentication'; import { AuthenticatedContext } from 'contexts/authentication';
import { useI18nContext } from 'i18n/i18n-react'; import { useI18nContext } from 'i18n/i18n-react';
import { useInterval, usePersistState } from 'utils'; import { useInterval, usePersistState } from 'utils';
@@ -224,6 +224,10 @@ const Dashboard = () => {
return <FormLoader onRetry={fetchDashboard} errorMessage={error?.message} />; return <FormLoader onRetry={fetchDashboard} errorMessage={error?.message} />;
} }
const hasFavEntities = data.filter(
(item: DashboardItem) => item.id <= 90
).length;
return ( return (
<> <>
<Box <Box
@@ -236,10 +240,7 @@ const Dashboard = () => {
<Grid container spacing={0} justifyContent="flex-start"> <Grid container spacing={0} justifyContent="flex-start">
<Grid size={11}> <Grid size={11}>
<Typography mb={2} variant="body1" color="warning"> <Typography mb={2} variant="body1" color="warning">
{LL.DASHBOARD_1()}&nbsp; {LL.DASHBOARD_1()}
<ConstructionIcon
sx={{ color: '#9e9e9e', fontSize: 20, verticalAlign: 'middle' }}
/>
</Typography> </Typography>
</Grid> </Grid>
@@ -262,27 +263,40 @@ const Dashboard = () => {
</Grid> </Grid>
</Box> </Box>
<Box {!loading && !hasFavEntities && (
padding={1} <MessageBox my={1} level="info">
justifyContent="center" <Typography>
flexDirection="column" {LL.NO_DATA_1()}&nbsp;
sx={{ <Link to="/customizations" style={{ color: 'white' }}>
borderRadius: 1, {LL.CUSTOMIZATIONS()}
border: '1px solid grey' </Link>
}} &nbsp;{LL.NO_DATA_2()}&nbsp;
> {LL.NO_DATA_3()}&nbsp;
<IconContext.Provider <Link to="/devices" style={{ color: 'white' }}>
value={{ {LL.DEVICES()}
color: 'lightblue', </Link>
size: '18', .
style: { verticalAlign: 'middle' } </Typography>
</MessageBox>
)}
{data.length > 0 && (
<Box
padding={1}
justifyContent="center"
flexDirection="column"
sx={{
borderRadius: 1,
border: '1px solid grey'
}} }}
> >
{!loading && data.length === 0 ? ( <IconContext.Provider
<Typography variant="subtitle2" color="secondary"> value={{
{LL.NO_DATA()} color: 'lightblue',
</Typography> size: '18',
) : ( style: { verticalAlign: 'middle' }
}}
>
<Table <Table
data={{ nodes: data }} data={{ nodes: data }}
theme={dashboard_theme} theme={dashboard_theme}
@@ -338,9 +352,9 @@ const Dashboard = () => {
</Body> </Body>
)} )}
</Table> </Table>
)} </IconContext.Provider>
</IconContext.Provider> </Box>
</Box> )}
</> </>
); );
}; };

View File

@@ -139,9 +139,12 @@ const SystemStatus = () => {
case NTPSyncStatus.NTP_INACTIVE: case NTPSyncStatus.NTP_INACTIVE:
return LL.INACTIVE(0); return LL.INACTIVE(0);
case NTPSyncStatus.NTP_ACTIVE: case NTPSyncStatus.NTP_ACTIVE:
return LL.ACTIVE() + (data.ntp_time !== undefined) return (
? ' (' + formatDateTime(data.ntp_time) + ')' LL.ACTIVE() +
: ''; (data.ntp_time !== undefined
? ' (' + formatDateTime(data.ntp_time) + ')'
: '')
);
default: default:
return LL.UNKNOWN(); return LL.UNKNOWN();
} }

View File

@@ -11,7 +11,7 @@ type MessageBoxLevel = 'warning' | 'success' | 'info' | 'error';
export interface MessageBoxProps extends BoxProps { export interface MessageBoxProps extends BoxProps {
level: MessageBoxLevel; level: MessageBoxLevel;
message: string; message?: string;
} }
const LEVEL_ICONS: { const LEVEL_ICONS: {
@@ -53,8 +53,8 @@ const MessageBox: FC<MessageBoxProps> = ({
{...rest} {...rest}
> >
<Icon /> <Icon />
<Typography sx={{ ml: 2, flexGrow: 1 }} variant="body1"> <Typography sx={{ ml: 2 }} variant="body1">
{message} {message ?? ''}
</Typography> </Typography>
{children} {children}
</Box> </Box>

View File

@@ -340,11 +340,13 @@ const cz: Translation = {
RESTARTING_POST: 'Příprava', RESTARTING_POST: 'Příprava',
AUTO_SCROLL: 'Automatické rolování', AUTO_SCROLL: 'Automatické rolování',
DASHBOARD: 'Dashboard', DASHBOARD: 'Dashboard',
NO_DATA: 'Žádná data nejsou k dispozici',
DASHBOARD_1: 'Přizpůsobte si dashboard označením EMS entit jako Oblíbené pomocí modulu Přizpůsobení',
DEVELOPER_MODE: 'Režim vývojáře', DEVELOPER_MODE: 'Režim vývojáře',
DUPLICATE: 'Duplicate', // TODO translate DUPLICATE: 'Duplikát',
UPGRADE: 'Upgrade' // TODO translate UPGRADE: 'Upgrade',
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default cz; export default cz;

View File

@@ -340,11 +340,13 @@ const de: Translation = {
RESTARTING_POST: 'Vorbereitung', RESTARTING_POST: 'Vorbereitung',
AUTO_SCROLL: 'Automatisches Scrollen', AUTO_SCROLL: 'Automatisches Scrollen',
DASHBOARD: 'Dashboard', DASHBOARD: 'Dashboard',
NO_DATA: 'Keine Daten verfügbar',
DASHBOARD_1: 'Passen Sie Ihr Dashboard an, indem Sie EMS-Entitäten mithilfe des Moduls „Anpassungen“ als Favorit markieren',
DEVELOPER_MODE: 'Entwicklermodus', DEVELOPER_MODE: 'Entwicklermodus',
DUPLICATE: 'Kopieren', DUPLICATE: 'Kopieren',
UPGRADE: 'Aktualisieren' UPGRADE: 'Aktualisieren',
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'Keine favorisierten EMS-Entitäten gefunden! Verwenden Sie das Modul',
NO_DATA_2: ', um sie zu markieren.',
NO_DATA_3: 'Um alle verfügbaren Entitäten anzuzeigen, gehen Sie zu'
}; };
export default de; export default de;

View File

@@ -340,11 +340,13 @@ const en: Translation = {
RESTARTING_POST: 'Preparing', RESTARTING_POST: 'Preparing',
AUTO_SCROLL: 'Auto Scroll', AUTO_SCROLL: 'Auto Scroll',
DASHBOARD: 'Dashboard', DASHBOARD: 'Dashboard',
NO_DATA: 'No data available', DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.',
DASHBOARD_1: 'Customize your dashboard by marking EMS entities as Favorite using the Customizations module',
DEVELOPER_MODE: 'Developer Mode', DEVELOPER_MODE: 'Developer Mode',
DUPLICATE: 'Duplicate', DUPLICATE: 'Duplicate',
UPGRADE: 'Upgrade' UPGRADE: 'Upgrade',
NO_DATA_1: 'No favourite EMS entities found! Use the',
NO_DATA_2: 'module to mark them.',
NO_DATA_3: 'To see all available entities go to'
}; };
export default en; export default en;

View File

@@ -340,11 +340,13 @@ const fr: Translation = {
RESTARTING_POST: 'Preparing', // TODO translate RESTARTING_POST: 'Preparing', // TODO translate
AUTO_SCROLL: 'Auto Scroll', // TODO translate AUTO_SCROLL: 'Auto Scroll', // TODO translate
DASHBOARD: 'Dashboard', // TODO translate DASHBOARD: 'Dashboard', // TODO translate
NO_DATA: 'No data available', // TODO translate
DASHBOARD_1: 'Customize your dashboard by marking EMS entities as Favorite using the Customizations module', // TODO translate
DEVELOPER_MODE: 'Developer Mode', // TODO translate DEVELOPER_MODE: 'Developer Mode', // TODO translate
DUPLICATE: 'Duplicate', // TODO translate DUPLICATE: 'Duplicate', // TODO translate
UPGRADE: 'Upgrade' // TODO translate UPGRADE: 'Upgrade', // TODO translate
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default fr; export default fr;

View File

@@ -340,11 +340,13 @@ const it: Translation = {
RESTARTING_POST: 'Preparing', // TODO translate RESTARTING_POST: 'Preparing', // TODO translate
AUTO_SCROLL: 'Auto Scroll', // TODO translate AUTO_SCROLL: 'Auto Scroll', // TODO translate
DASHBOARD: 'Dashboard', // TODO translate DASHBOARD: 'Dashboard', // TODO translate
NO_DATA: 'No data available', // TODO translate
DASHBOARD_1: 'Customize your dashboard by marking EMS entities as Favorite using the Customizations module', // TODO translate
DEVELOPER_MODE: 'Developer Mode', // TODO translate DEVELOPER_MODE: 'Developer Mode', // TODO translate
DUPLICATE: 'Duplicate', // TODO translate DUPLICATE: 'Duplicate', // TODO translate
UPGRADE: 'Upgrade' // TODO translate UPGRADE: 'Upgrade', // TODO translate
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default it; export default it;

View File

@@ -340,11 +340,13 @@ const nl: Translation = {
RESTARTING_POST: 'Voorbereiding', RESTARTING_POST: 'Voorbereiding',
AUTO_SCROLL: 'Automatisch Scrollen', AUTO_SCROLL: 'Automatisch Scrollen',
DASHBOARD: 'Dashboard', DASHBOARD: 'Dashboard',
NO_DATA: 'Geen data beschikbaar',
DASHBOARD_1: 'Pas uw dashboard aan door EMS-entiteiten als favoriet te markeren met behulp van de module Aanpassingen',
DEVELOPER_MODE: 'Ontwikkelaarsmodus', DEVELOPER_MODE: 'Ontwikkelaarsmodus',
DUPLICATE: 'Duplicaat', DUPLICATE: 'Duplicaat',
UPGRADE: 'Upgraden' UPGRADE: 'Upgraden',
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default nl; export default nl;

View File

@@ -340,11 +340,13 @@ const no: Translation = {
RESTARTING_POST: 'Preparing', // TODO translate RESTARTING_POST: 'Preparing', // TODO translate
AUTO_SCROLL: 'Auto Scroll', // TODO translate AUTO_SCROLL: 'Auto Scroll', // TODO translate
DASHBOARD: 'Dashboard', // TODO translate DASHBOARD: 'Dashboard', // TODO translate
NO_DATA: 'No data available', // TODO translate
DASHBOARD_1: 'Customize your dashboard by marking EMS entities as Favorite using the Customizations module', // TODO translate
DEVELOPER_MODE: 'Developer Mode', // TODO translate DEVELOPER_MODE: 'Developer Mode', // TODO translate
DUPLICATE: 'Duplicate', // TODO translate DUPLICATE: 'Duplicate', // TODO translate
UPGRADE: 'Upgrade' // TODO translate UPGRADE: 'Upgrade', // TODO translate
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default no; export default no;

View File

@@ -340,11 +340,13 @@ const pl: BaseTranslation = {
RESTARTING_POST: 'Preparing', // TODO translate RESTARTING_POST: 'Preparing', // TODO translate
AUTO_SCROLL: 'Auto Scroll', // TODO translate AUTO_SCROLL: 'Auto Scroll', // TODO translate
DASHBOARD: 'Dashboard', // TODO translate DASHBOARD: 'Dashboard', // TODO translate
NO_DATA: 'No data available', // TODO translate
DASHBOARD_1: 'Customize your dashboard by marking EMS entities as Favorite using the Customizations module', // TODO translate
DEVELOPER_MODE: 'Developer Mode', // TODO translate DEVELOPER_MODE: 'Developer Mode', // TODO translate
DUPLICATE: 'Duplicate', // TODO translate DUPLICATE: 'Duplicate', // TODO translate
UPGRADE: 'Upgrade' // TODO translate UPGRADE: 'Upgrade', // TODO translate
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default pl; export default pl;

View File

@@ -340,11 +340,13 @@ const sk: Translation = {
RESTARTING_POST: 'Príprava', RESTARTING_POST: 'Príprava',
AUTO_SCROLL: 'Automatické rolovanie', AUTO_SCROLL: 'Automatické rolovanie',
DASHBOARD: 'Panel', DASHBOARD: 'Panel',
NO_DATA: 'Nie sú k dispozícii žiadne údaje',
DASHBOARD_1: 'Prispôsobte si svoj informačný panel tak, že označíte entity EMS ako Obľúbené pomocou modulu Prispôsobenia',
DEVELOPER_MODE: 'Režim vývojára', DEVELOPER_MODE: 'Režim vývojára',
DUPLICATE: 'Duplicitné', DUPLICATE: 'Duplicitné',
UPGRADE: 'Inovovať' UPGRADE: 'Inovovať',
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default sk; export default sk;

View File

@@ -340,11 +340,13 @@ const sv: Translation = {
RESTARTING_POST: 'Förbereder', RESTARTING_POST: 'Förbereder',
AUTO_SCROLL: 'Autoskrolla', AUTO_SCROLL: 'Autoskrolla',
DASHBOARD: 'Kontrollpanel', DASHBOARD: 'Kontrollpanel',
NO_DATA: 'Ingen data tillgänglig',
DASHBOARD_1: 'Anpassa din kontrollpanel genom att markera EMS enheter som Favorit i modulen Anpassningar',
DEVELOPER_MODE: 'Utvecklarläge', DEVELOPER_MODE: 'Utvecklarläge',
DUPLICATE: 'Dublett', DUPLICATE: 'Dublett',
UPGRADE: 'Uppgradera' UPGRADE: 'Uppgradera',
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default sv; export default sv;

View File

@@ -340,11 +340,13 @@ const tr: Translation = {
RESTARTING_POST: 'Preparing', // TODO translate RESTARTING_POST: 'Preparing', // TODO translate
AUTO_SCROLL: 'Auto Scroll', // TODO translate AUTO_SCROLL: 'Auto Scroll', // TODO translate
DASHBOARD: 'Dashboard', // TODO translate DASHBOARD: 'Dashboard', // TODO translate
NO_DATA: 'No data available', // TODO translate
DASHBOARD_1: 'Customize your dashboard by marking EMS entities as Favorite using the Customizations module', // TODO translate
DEVELOPER_MODE: 'Developer Mode', // TODO translate DEVELOPER_MODE: 'Developer Mode', // TODO translate
DUPLICATE: 'Duplicate', // TODO translate DUPLICATE: 'Duplicate', // TODO translate
UPGRADE: 'Upgrade' // TODO translate UPGRADE: 'Upgrade', // TODO translate
DASHBOARD_1: 'All EMS entities that are active and marked as Favorite, plus all Custom Entities, Schedules and external Sensors data are displayed below.', // TODO translate
NO_DATA_1: 'No favourite EMS entities found. Use the', // TODO translate
NO_DATA_2: 'module to mark them.', // TODO translate
NO_DATA_3: 'To see all available entities go to' // TODO translate
}; };
export default tr; export default tr;

View File

@@ -783,38 +783,38 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@mui/core-downloads-tracker@npm:^6.3.1": "@mui/core-downloads-tracker@npm:^6.4.0":
version: 6.3.1 version: 6.4.0
resolution: "@mui/core-downloads-tracker@npm:6.3.1" resolution: "@mui/core-downloads-tracker@npm:6.4.0"
checksum: 10c0/a996ad8db6bd8c981c4e2e2d243526c838dd29f0bbe7dc5ab6933be357e41f748781d322b1decf79ae1c9abba24190162559d84deedcb7c8824a68754dddf216 checksum: 10c0/48112fb90df2fe58fdbc8ca9c8fac3487dc3aa0fbc31bd1e6b373f43f5bbb23d6fc673686b42cb46723e2d8c66ae914ecb9397c38e7d43a340ec6cbe07e1469d
languageName: node languageName: node
linkType: hard linkType: hard
"@mui/icons-material@npm:^6.3.1": "@mui/icons-material@npm:^6.4.0":
version: 6.3.1 version: 6.4.0
resolution: "@mui/icons-material@npm:6.3.1" resolution: "@mui/icons-material@npm:6.4.0"
dependencies: dependencies:
"@babel/runtime": "npm:^7.26.0" "@babel/runtime": "npm:^7.26.0"
peerDependencies: peerDependencies:
"@mui/material": ^6.3.1 "@mui/material": ^6.4.0
"@types/react": ^17.0.0 || ^18.0.0 || ^19.0.0 "@types/react": ^17.0.0 || ^18.0.0 || ^19.0.0
react: ^17.0.0 || ^18.0.0 || ^19.0.0 react: ^17.0.0 || ^18.0.0 || ^19.0.0
peerDependenciesMeta: peerDependenciesMeta:
"@types/react": "@types/react":
optional: true optional: true
checksum: 10c0/edaf71b7368c14cfbfed6f475ef96187871a010e972b9e7608d23cadae5ce52a3a6888b32453721dc1d86e2e7ad9c61aadde83ba5cd94363782bf83803d1ab36 checksum: 10c0/5e05dbb67e0f7e0c046d5665bebf41df487b31ce617987ac0e8da9c539221bad7e523bf77f0f0153b35aadb56f02146aded567e8032ba608696f70b708d505c0
languageName: node languageName: node
linkType: hard linkType: hard
"@mui/material@npm:^6.3.1": "@mui/material@npm:^6.4.0":
version: 6.3.1 version: 6.4.0
resolution: "@mui/material@npm:6.3.1" resolution: "@mui/material@npm:6.4.0"
dependencies: dependencies:
"@babel/runtime": "npm:^7.26.0" "@babel/runtime": "npm:^7.26.0"
"@mui/core-downloads-tracker": "npm:^6.3.1" "@mui/core-downloads-tracker": "npm:^6.4.0"
"@mui/system": "npm:^6.3.1" "@mui/system": "npm:^6.4.0"
"@mui/types": "npm:^7.2.21" "@mui/types": "npm:^7.2.21"
"@mui/utils": "npm:^6.3.1" "@mui/utils": "npm:^6.4.0"
"@popperjs/core": "npm:^2.11.8" "@popperjs/core": "npm:^2.11.8"
"@types/react-transition-group": "npm:^4.4.12" "@types/react-transition-group": "npm:^4.4.12"
clsx: "npm:^2.1.1" clsx: "npm:^2.1.1"
@@ -825,7 +825,7 @@ __metadata:
peerDependencies: peerDependencies:
"@emotion/react": ^11.5.0 "@emotion/react": ^11.5.0
"@emotion/styled": ^11.3.0 "@emotion/styled": ^11.3.0
"@mui/material-pigment-css": ^6.3.1 "@mui/material-pigment-css": ^6.4.0
"@types/react": ^17.0.0 || ^18.0.0 || ^19.0.0 "@types/react": ^17.0.0 || ^18.0.0 || ^19.0.0
react: ^17.0.0 || ^18.0.0 || ^19.0.0 react: ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0
@@ -838,16 +838,16 @@ __metadata:
optional: true optional: true
"@types/react": "@types/react":
optional: true optional: true
checksum: 10c0/7fb91acd9bc021dde78e70d495a2abd69d0e2df35e526e0730e060c3177bb10cc3058ee27c72b5ec9bc7622d9c2ef99831b89f511f6700bc3717f979e2cb0152 checksum: 10c0/5bd9757b578827d841934725a7145ae1d295cbc979fec4fb1a099c439ae0db1a67ace47b2a94f289ac5289d16b0167ebba9a4e98b0499840555b60fb5b549923
languageName: node languageName: node
linkType: hard linkType: hard
"@mui/private-theming@npm:^6.3.1": "@mui/private-theming@npm:^6.4.0":
version: 6.3.1 version: 6.4.0
resolution: "@mui/private-theming@npm:6.3.1" resolution: "@mui/private-theming@npm:6.4.0"
dependencies: dependencies:
"@babel/runtime": "npm:^7.26.0" "@babel/runtime": "npm:^7.26.0"
"@mui/utils": "npm:^6.3.1" "@mui/utils": "npm:^6.4.0"
prop-types: "npm:^15.8.1" prop-types: "npm:^15.8.1"
peerDependencies: peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0 || ^19.0.0 "@types/react": ^17.0.0 || ^18.0.0 || ^19.0.0
@@ -855,13 +855,13 @@ __metadata:
peerDependenciesMeta: peerDependenciesMeta:
"@types/react": "@types/react":
optional: true optional: true
checksum: 10c0/aafaca0d7e5fd4d83c2cade28b7de554c0d848595f8f23f26c8f7daf3fc664053c9c81342d44d24e0a04a4813b58d6f0c1d135ae2775380acda91468a21f9684 checksum: 10c0/3e89ff9e6baf85b1bdb0ed55e1ef50dadd95991ed498928e1764c1255fa174c0d134a46beebb1e4faabc22820b404923911c2bf6e9692fd269a77522c356eb6c
languageName: node languageName: node
linkType: hard linkType: hard
"@mui/styled-engine@npm:^6.3.1": "@mui/styled-engine@npm:^6.4.0":
version: 6.3.1 version: 6.4.0
resolution: "@mui/styled-engine@npm:6.3.1" resolution: "@mui/styled-engine@npm:6.4.0"
dependencies: dependencies:
"@babel/runtime": "npm:^7.26.0" "@babel/runtime": "npm:^7.26.0"
"@emotion/cache": "npm:^11.13.5" "@emotion/cache": "npm:^11.13.5"
@@ -878,19 +878,19 @@ __metadata:
optional: true optional: true
"@emotion/styled": "@emotion/styled":
optional: true optional: true
checksum: 10c0/81bbf8f2016b1c7debbbaab1a44ebaf8e494e8c9d32d2201b28f8c653a082177f6570fef779bf835bad1a9120af219a64b1d7a9a8a569c9c07045f00affe6b87 checksum: 10c0/bff35147ca9ef586679b53786d840e98837f0c1e5bf10a3510d4b2b68c340ae4ab69befe94b69ef25f6846bada5b3c355d25fa3a179d1598499e28c51f28d5d2
languageName: node languageName: node
linkType: hard linkType: hard
"@mui/system@npm:^6.3.1": "@mui/system@npm:^6.4.0":
version: 6.3.1 version: 6.4.0
resolution: "@mui/system@npm:6.3.1" resolution: "@mui/system@npm:6.4.0"
dependencies: dependencies:
"@babel/runtime": "npm:^7.26.0" "@babel/runtime": "npm:^7.26.0"
"@mui/private-theming": "npm:^6.3.1" "@mui/private-theming": "npm:^6.4.0"
"@mui/styled-engine": "npm:^6.3.1" "@mui/styled-engine": "npm:^6.4.0"
"@mui/types": "npm:^7.2.21" "@mui/types": "npm:^7.2.21"
"@mui/utils": "npm:^6.3.1" "@mui/utils": "npm:^6.4.0"
clsx: "npm:^2.1.1" clsx: "npm:^2.1.1"
csstype: "npm:^3.1.3" csstype: "npm:^3.1.3"
prop-types: "npm:^15.8.1" prop-types: "npm:^15.8.1"
@@ -906,7 +906,7 @@ __metadata:
optional: true optional: true
"@types/react": "@types/react":
optional: true optional: true
checksum: 10c0/49613b001f7e60c7ed70f3e2ee3ffc4f3a2719509e4f9ec18faf73a354597b8d894d0ee8861bf3a5b5db763efca36bcfb75989505c88e009c1627b114bac88ef checksum: 10c0/5e8d82674693d747b947ce4e5c1a11fff148c5242b2af898d80575e780f0abd3857f234a47b1cec16ca02334ecc7450f0afb5e311ddee9e9cf342e5bf3c7c1fc
languageName: node languageName: node
linkType: hard linkType: hard
@@ -922,9 +922,9 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@mui/utils@npm:^6.3.1": "@mui/utils@npm:^6.4.0":
version: 6.3.1 version: 6.4.0
resolution: "@mui/utils@npm:6.3.1" resolution: "@mui/utils@npm:6.4.0"
dependencies: dependencies:
"@babel/runtime": "npm:^7.26.0" "@babel/runtime": "npm:^7.26.0"
"@mui/types": "npm:^7.2.21" "@mui/types": "npm:^7.2.21"
@@ -938,7 +938,7 @@ __metadata:
peerDependenciesMeta: peerDependenciesMeta:
"@types/react": "@types/react":
optional: true optional: true
checksum: 10c0/b111bca7ad065b1028714d55a8df90267c47a72ffb2bfad7a1709cef0d5d9036b463855d431b3606967c9351c7ee23f1dee02457b2f3ed02513744f0173eb00c checksum: 10c0/c72ab7685affb577f1b48a5f5be02d11254cddf858cc35d61e0483434249cc064f2d145e9e72be60c344f31ccc7d6e61c59a256413b7e68077e883c0ffc8882e
languageName: node languageName: node
linkType: hard linkType: hard
@@ -1403,12 +1403,12 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/node@npm:*, @types/node@npm:^22.10.5": "@types/node@npm:*, @types/node@npm:^22.10.7":
version: 22.10.5 version: 22.10.7
resolution: "@types/node@npm:22.10.5" resolution: "@types/node@npm:22.10.7"
dependencies: dependencies:
undici-types: "npm:~6.20.0" undici-types: "npm:~6.20.0"
checksum: 10c0/6a0e7d1fe6a86ef6ee19c3c6af4c15542e61aea2f4cee655b6252efb356795f1f228bc8299921e82924e80ff8eca29b74d9dd0dd5cc1a90983f892f740b480df checksum: 10c0/c941b4689dfc4044b64a5f601306cbcb0c7210be853ba378a5dd44137898c45accedd796ee002ad9407024cac7ecaf5049304951cb1d80ce3d7cebbbae56f20e
languageName: node languageName: node
linkType: hard linkType: hard
@@ -1444,12 +1444,12 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@types/react@npm:^19.0.5": "@types/react@npm:^19.0.7":
version: 19.0.5 version: 19.0.7
resolution: "@types/react@npm:19.0.5" resolution: "@types/react@npm:19.0.7"
dependencies: dependencies:
csstype: "npm:^3.0.2" csstype: "npm:^3.0.2"
checksum: 10c0/6f3a25c826e8b274cf26b25ef7bd4a97aaa4d7b30a0ea529bf252c6f0387d74f44940dea55cfcac75829bee53cd4c82fdb41653b978954a08036d2812a0ae6d6 checksum: 10c0/818e546fa03a2a65ac2652fc472891ac96684211e8967bc25e1da6a8a09e2301ad972b1b038d128f8b4cbbd7691f6f57fee274db568169e9b6b01556abbb5bee
languageName: node languageName: node
linkType: hard linkType: hard
@@ -1471,15 +1471,15 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/eslint-plugin@npm:8.19.1": "@typescript-eslint/eslint-plugin@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/eslint-plugin@npm:8.19.1" resolution: "@typescript-eslint/eslint-plugin@npm:8.20.0"
dependencies: dependencies:
"@eslint-community/regexpp": "npm:^4.10.0" "@eslint-community/regexpp": "npm:^4.10.0"
"@typescript-eslint/scope-manager": "npm:8.19.1" "@typescript-eslint/scope-manager": "npm:8.20.0"
"@typescript-eslint/type-utils": "npm:8.19.1" "@typescript-eslint/type-utils": "npm:8.20.0"
"@typescript-eslint/utils": "npm:8.19.1" "@typescript-eslint/utils": "npm:8.20.0"
"@typescript-eslint/visitor-keys": "npm:8.19.1" "@typescript-eslint/visitor-keys": "npm:8.20.0"
graphemer: "npm:^1.4.0" graphemer: "npm:^1.4.0"
ignore: "npm:^5.3.1" ignore: "npm:^5.3.1"
natural-compare: "npm:^1.4.0" natural-compare: "npm:^1.4.0"
@@ -1488,64 +1488,64 @@ __metadata:
"@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.8.0" typescript: ">=4.8.4 <5.8.0"
checksum: 10c0/993784b04533b13c3f3919c793cfc3a369fa61692e1a2d72de6fba27df247c275d852cdcbc4e393c310b73fce8d34d210a9b632b66f4d761a1a3b4781f8fa93f checksum: 10c0/c68d0dc5419db93c38eea8adecac19e27f8b023d015a944ffded112d584e87fa7fe512070a6a1085899cab2e12e1c8db276e10412b74bf639ca6b04052bbfedc
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/parser@npm:8.19.1": "@typescript-eslint/parser@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/parser@npm:8.19.1" resolution: "@typescript-eslint/parser@npm:8.20.0"
dependencies: dependencies:
"@typescript-eslint/scope-manager": "npm:8.19.1" "@typescript-eslint/scope-manager": "npm:8.20.0"
"@typescript-eslint/types": "npm:8.19.1" "@typescript-eslint/types": "npm:8.20.0"
"@typescript-eslint/typescript-estree": "npm:8.19.1" "@typescript-eslint/typescript-estree": "npm:8.20.0"
"@typescript-eslint/visitor-keys": "npm:8.19.1" "@typescript-eslint/visitor-keys": "npm:8.20.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.8.0" typescript: ">=4.8.4 <5.8.0"
checksum: 10c0/1afbd2d0a25f439943bdc94637417429574eb3889a2a1ce24bd425721713aca213808a975bb518a6616171783bc04fa973167f05fc6a96cfd88c1d1666077ad4 checksum: 10c0/fff4a86be27f603ad8d6f7dd9758c46b04a254828f0c6d8a34869c1cf30b5828b60a1dc088f72680a7b65cc5fc696848df4605de19e59a18467306d7ca56c11d
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/scope-manager@npm:8.19.1": "@typescript-eslint/scope-manager@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/scope-manager@npm:8.19.1" resolution: "@typescript-eslint/scope-manager@npm:8.20.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:8.19.1" "@typescript-eslint/types": "npm:8.20.0"
"@typescript-eslint/visitor-keys": "npm:8.19.1" "@typescript-eslint/visitor-keys": "npm:8.20.0"
checksum: 10c0/7dca0c28ad27a0c7e26499e0f584f98efdcf34087f46aadc661b36c310484b90655e83818bafd249b5a28c7094a69c54d553f6cd403869bf134f95a9148733f5 checksum: 10c0/a8074768d06c863169294116624a45c19377ff0b8635ad5fa4ae673b43cf704d1b9b79384ceef0ff0abb78b107d345cd90fe5572354daf6ad773fe462ee71e6a
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/type-utils@npm:8.19.1": "@typescript-eslint/type-utils@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/type-utils@npm:8.19.1" resolution: "@typescript-eslint/type-utils@npm:8.20.0"
dependencies: dependencies:
"@typescript-eslint/typescript-estree": "npm:8.19.1" "@typescript-eslint/typescript-estree": "npm:8.20.0"
"@typescript-eslint/utils": "npm:8.19.1" "@typescript-eslint/utils": "npm:8.20.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
ts-api-utils: "npm:^2.0.0" ts-api-utils: "npm:^2.0.0"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.8.0" typescript: ">=4.8.4 <5.8.0"
checksum: 10c0/757592b515beec58c079c605aa648ba94d985ae48ba40460034e849c7bc2b603b1da6113e59688e284608c9d5ccaa27adf0a14fb032cb1782200c6acae51ddd2 checksum: 10c0/7d46143f26ec606b71d20f0f5535b16abba2ba7a5a2daecd2584ddb61d1284dd8404f34265cc1fdfd541068b24b0211f7ad94801c94e4c60869d9f26bf3c0b9b
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/types@npm:8.19.1": "@typescript-eslint/types@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/types@npm:8.19.1" resolution: "@typescript-eslint/types@npm:8.20.0"
checksum: 10c0/e907bf096d5ed7a812a1e537a98dd881ab5d2d47e072225bfffaa218c1433115a148b27a15744db8374b46dac721617c6d13a1da255fdeb369cf193416533f6e checksum: 10c0/21292d4ca089897015d2bf5ab99909a7b362902f63f4ba10696676823b50d00c7b4cd093b4b43fba01d12bc3feca3852d2c28528c06d8e45446b7477887dbee7
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/typescript-estree@npm:8.19.1": "@typescript-eslint/typescript-estree@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/typescript-estree@npm:8.19.1" resolution: "@typescript-eslint/typescript-estree@npm:8.20.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:8.19.1" "@typescript-eslint/types": "npm:8.20.0"
"@typescript-eslint/visitor-keys": "npm:8.19.1" "@typescript-eslint/visitor-keys": "npm:8.20.0"
debug: "npm:^4.3.4" debug: "npm:^4.3.4"
fast-glob: "npm:^3.3.2" fast-glob: "npm:^3.3.2"
is-glob: "npm:^4.0.3" is-glob: "npm:^4.0.3"
@@ -1554,32 +1554,32 @@ __metadata:
ts-api-utils: "npm:^2.0.0" ts-api-utils: "npm:^2.0.0"
peerDependencies: peerDependencies:
typescript: ">=4.8.4 <5.8.0" typescript: ">=4.8.4 <5.8.0"
checksum: 10c0/549d9d565a58a25fc8397a555506f2e8d29a740f5b6ed9105479e22de5aab89d9d535959034a8e9d4115adb435de09ee6987d28e8922052eea577842ddce1a7a checksum: 10c0/54a2c1da7d1c5f7e865b941e8a3c98eb4b5f56ed8741664a84065173bde9602cdb8866b0984b26816d6af885c1528311c11e7286e869ed424483b74366514cbd
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/utils@npm:8.19.1": "@typescript-eslint/utils@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/utils@npm:8.19.1" resolution: "@typescript-eslint/utils@npm:8.20.0"
dependencies: dependencies:
"@eslint-community/eslint-utils": "npm:^4.4.0" "@eslint-community/eslint-utils": "npm:^4.4.0"
"@typescript-eslint/scope-manager": "npm:8.19.1" "@typescript-eslint/scope-manager": "npm:8.20.0"
"@typescript-eslint/types": "npm:8.19.1" "@typescript-eslint/types": "npm:8.20.0"
"@typescript-eslint/typescript-estree": "npm:8.19.1" "@typescript-eslint/typescript-estree": "npm:8.20.0"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.8.0" typescript: ">=4.8.4 <5.8.0"
checksum: 10c0/f7d2fe9a2bd8cb3ae6fafe5e465882a6784b2acf81d43d194c579381b92651c2ffc0fca69d2a35eee119f539622752a0e9ec063aaec7576d5d2bfe68b441980d checksum: 10c0/dd36c3b22a2adde1e1462aed0c8b4720f61859b4ebb0c3ef935a786a6b1cb0ec21eb0689f5a8debe8db26d97ebb979bab68d6f8fe7b0098e6200a485cfe2991b
languageName: node languageName: node
linkType: hard linkType: hard
"@typescript-eslint/visitor-keys@npm:8.19.1": "@typescript-eslint/visitor-keys@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "@typescript-eslint/visitor-keys@npm:8.19.1" resolution: "@typescript-eslint/visitor-keys@npm:8.20.0"
dependencies: dependencies:
"@typescript-eslint/types": "npm:8.19.1" "@typescript-eslint/types": "npm:8.20.0"
eslint-visitor-keys: "npm:^4.2.0" eslint-visitor-keys: "npm:^4.2.0"
checksum: 10c0/117537450a099f51f3f0d39186f248ae370bdc1b7f6975dbdbffcfc89e6e1aa47c1870db790d4f778a48f2c1f6cd9c269b63867c12afaa424367c63dabee8fd0 checksum: 10c0/e95d8b2685e8beb6637bf2e9d06e4177a400d3a2b142ba749944690f969ee3186b750082fd9bf34ada82acf1c5dd5970201dfd97619029c8ecca85fb4b50dbd8
languageName: node languageName: node
linkType: hard linkType: hard
@@ -1592,21 +1592,21 @@ __metadata:
"@emotion/react": "npm:^11.14.0" "@emotion/react": "npm:^11.14.0"
"@emotion/styled": "npm:^11.14.0" "@emotion/styled": "npm:^11.14.0"
"@eslint/js": "npm:^9.18.0" "@eslint/js": "npm:^9.18.0"
"@mui/icons-material": "npm:^6.3.1" "@mui/icons-material": "npm:^6.4.0"
"@mui/material": "npm:^6.3.1" "@mui/material": "npm:^6.4.0"
"@preact/compat": "npm:^18.3.1" "@preact/compat": "npm:^18.3.1"
"@preact/preset-vite": "npm:^2.9.4" "@preact/preset-vite": "npm:^2.9.4"
"@table-library/react-table-library": "npm:4.1.7" "@table-library/react-table-library": "npm:4.1.7"
"@trivago/prettier-plugin-sort-imports": "npm:^5.2.1" "@trivago/prettier-plugin-sort-imports": "npm:^5.2.1"
"@types/formidable": "npm:^3" "@types/formidable": "npm:^3"
"@types/node": "npm:^22.10.5" "@types/node": "npm:^22.10.7"
"@types/react": "npm:^19.0.5" "@types/react": "npm:^19.0.7"
"@types/react-dom": "npm:^19.0.3" "@types/react-dom": "npm:^19.0.3"
alova: "npm:3.2.7" alova: "npm:3.2.8"
async-validator: "npm:^4.2.5" async-validator: "npm:^4.2.5"
concurrently: "npm:^9.1.2" concurrently: "npm:^9.1.2"
eslint: "npm:^9.18.0" eslint: "npm:^9.18.0"
eslint-config-prettier: "npm:^9.1.0" eslint-config-prettier: "npm:^10.0.1"
formidable: "npm:^3.5.2" formidable: "npm:^3.5.2"
jwt-decode: "npm:^4.0.0" jwt-decode: "npm:^4.0.0"
mime-types: "npm:^2.1.35" mime-types: "npm:^2.1.35"
@@ -1615,13 +1615,13 @@ __metadata:
react: "npm:^19.0.0" react: "npm:^19.0.0"
react-dom: "npm:^19.0.0" react-dom: "npm:^19.0.0"
react-icons: "npm:^5.4.0" react-icons: "npm:^5.4.0"
react-router: "npm:^7.1.1" react-router: "npm:^7.1.2"
react-toastify: "npm:^11.0.2" react-toastify: "npm:^11.0.3"
rollup-plugin-visualizer: "npm:^5.14.0" rollup-plugin-visualizer: "npm:^5.14.0"
terser: "npm:^5.37.0" terser: "npm:^5.37.0"
typesafe-i18n: "npm:^5.26.2" typesafe-i18n: "npm:^5.26.2"
typescript: "npm:^5.7.3" typescript: "npm:^5.7.3"
typescript-eslint: "npm:8.19.1" typescript-eslint: "npm:8.20.0"
vite: "npm:^6.0.7" vite: "npm:^6.0.7"
vite-plugin-imagemin: "npm:^0.6.1" vite-plugin-imagemin: "npm:^0.6.1"
vite-tsconfig-paths: "npm:^5.1.4" vite-tsconfig-paths: "npm:^5.1.4"
@@ -1672,13 +1672,13 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"alova@npm:3.2.7": "alova@npm:3.2.8":
version: 3.2.7 version: 3.2.8
resolution: "alova@npm:3.2.7" resolution: "alova@npm:3.2.8"
dependencies: dependencies:
"@alova/shared": "npm:1.1.2" "@alova/shared": "npm:1.1.2"
rate-limiter-flexible: "npm:^5.0.3" rate-limiter-flexible: "npm:^5.0.3"
checksum: 10c0/5d0c3bec48ba27950014b7eb65c71f110562641f98489978276fdc352742954781e3b5fec759ea8c343e050371cabb8ea508db92d1287b7e0b5388e661b7a46c checksum: 10c0/fed04a06700d1c1a20a73b2f3d4e944fb813384cb85b1fe73e43f6451deef9e9e995610c9f46c99c1f02de2eb17c0a8746519c4bf0e61ffcd974dde3ad093be1
languageName: node languageName: node
linkType: hard linkType: hard
@@ -2619,9 +2619,9 @@ __metadata:
linkType: hard linkType: hard
"electron-to-chromium@npm:^1.5.73": "electron-to-chromium@npm:^1.5.73":
version: 1.5.80 version: 1.5.83
resolution: "electron-to-chromium@npm:1.5.80" resolution: "electron-to-chromium@npm:1.5.83"
checksum: 10c0/6aaf1891e1b05251efac6f4a63c0ddccf567f0f76506cf0cb284f11413762423fddd7786558066f74c3a95e2a533dad7a97bebe38779b46b7a799d8dd20cea53 checksum: 10c0/12380962d057c4679add1047cdddb18b909904614272da0527e505a3859eaffde2022dd0688ce7f230582de96405c3d33b667680614475cdafd3f629caa2fee1
languageName: node languageName: node
linkType: hard linkType: hard
@@ -3015,14 +3015,14 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"eslint-config-prettier@npm:^9.1.0": "eslint-config-prettier@npm:^10.0.1":
version: 9.1.0 version: 10.0.1
resolution: "eslint-config-prettier@npm:9.1.0" resolution: "eslint-config-prettier@npm:10.0.1"
peerDependencies: peerDependencies:
eslint: ">=7.0.0" eslint: ">=7.0.0"
bin: bin:
eslint-config-prettier: bin/cli.js eslint-config-prettier: build/bin/cli.js
checksum: 10c0/6d332694b36bc9ac6fdb18d3ca2f6ac42afa2ad61f0493e89226950a7091e38981b66bac2b47ba39d15b73fff2cd32c78b850a9cf9eed9ca9a96bfb2f3a2f10d checksum: 10c0/e2434931669d211663c0493f2c1640a670a02ba4503a68f056a7eda133f383acbbb983a4a7bd0ad6cb3b2bc4d5731c3be8b32fe28e35087a76fea45f7061ae70
languageName: node languageName: node
linkType: hard linkType: hard
@@ -4910,7 +4910,7 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"nanoid@npm:^3.3.7": "nanoid@npm:^3.3.8":
version: 3.3.8 version: 3.3.8
resolution: "nanoid@npm:3.3.8" resolution: "nanoid@npm:3.3.8"
bin: bin:
@@ -5435,13 +5435,13 @@ __metadata:
linkType: hard linkType: hard
"postcss@npm:^8.4.49": "postcss@npm:^8.4.49":
version: 8.4.49 version: 8.5.1
resolution: "postcss@npm:8.4.49" resolution: "postcss@npm:8.5.1"
dependencies: dependencies:
nanoid: "npm:^3.3.7" nanoid: "npm:^3.3.8"
picocolors: "npm:^1.1.1" picocolors: "npm:^1.1.1"
source-map-js: "npm:^1.2.1" source-map-js: "npm:^1.2.1"
checksum: 10c0/f1b3f17aaf36d136f59ec373459f18129908235e65dbdc3aee5eef8eba0756106f52de5ec4682e29a2eab53eb25170e7e871b3e4b52a8f1de3d344a514306be3 checksum: 10c0/c4d90c59c98e8a0c102b77d3f4cac190f883b42d63dc60e2f3ed840f16197c0c8e25a4327d2e9a847b45a985612317dc0534178feeebd0a1cf3eb0eecf75cae4
languageName: node languageName: node
linkType: hard linkType: hard
@@ -5567,9 +5567,9 @@ __metadata:
linkType: hard linkType: hard
"rate-limiter-flexible@npm:^5.0.3": "rate-limiter-flexible@npm:^5.0.3":
version: 5.0.4 version: 5.0.5
resolution: "rate-limiter-flexible@npm:5.0.4" resolution: "rate-limiter-flexible@npm:5.0.5"
checksum: 10c0/5047df2b8fbfa7cf5eefb4242cc78091a7866d79f20d34bbc473e0d8fdf2a7f5d8d0ac87c5c4cec365bb91252cf4d7b6b8cc2756112c292c8ef26e3648950711 checksum: 10c0/ae7cba6a46a2133bfbd310d3f83c65b3b732deab84e0c79b4fda78cd1d6578f69111bb37f09401ea45334eb75b8e40637ab0a8a9fd3efbb0b54084d6cd3b4ead
languageName: node languageName: node
linkType: hard linkType: hard
@@ -5607,9 +5607,9 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"react-router@npm:^7.1.1": "react-router@npm:^7.1.2":
version: 7.1.1 version: 7.1.2
resolution: "react-router@npm:7.1.1" resolution: "react-router@npm:7.1.2"
dependencies: dependencies:
"@types/cookie": "npm:^0.6.0" "@types/cookie": "npm:^0.6.0"
cookie: "npm:^1.0.1" cookie: "npm:^1.0.1"
@@ -5621,19 +5621,19 @@ __metadata:
peerDependenciesMeta: peerDependenciesMeta:
react-dom: react-dom:
optional: true optional: true
checksum: 10c0/39f4859670f286eb2eac29e5830c1f730405701fca0808e5db853ec05e54e55a848c764e10ffd14a7b9b3b2154a0d6449656d7f208b9b3e4b2af780e07bf57a8 checksum: 10c0/f2ef57c8c95cfee0c0689cbcb9a28ebbc5a554831b9e8f9d0295f4c6ac0960a448e16b828dd75168b4e8da228068c99d88248be3418467d6a76ab4ea02bf0d71
languageName: node languageName: node
linkType: hard linkType: hard
"react-toastify@npm:^11.0.2": "react-toastify@npm:^11.0.3":
version: 11.0.2 version: 11.0.3
resolution: "react-toastify@npm:11.0.2" resolution: "react-toastify@npm:11.0.3"
dependencies: dependencies:
clsx: "npm:^2.1.1" clsx: "npm:^2.1.1"
peerDependencies: peerDependencies:
react: ^18 || ^19 react: ^18 || ^19
react-dom: ^18 || ^19 react-dom: ^18 || ^19
checksum: 10c0/e1ba01846782d47d0bf9cec7e2b4804f9af30e50a203786523f16db33691c1491f2382832e7ec4b69c583d3634ea0e3efb383da00ca9076bcf4bdd906a54a85f checksum: 10c0/23b989c6080bc5bf0eb0c1f7ed17bd53d067d9beb33baf93c520119cd69cf75c9f2d1ee524dfe6c8a2a5d326029772b576de00e018b379d03a0e37630b83adea
languageName: node languageName: node
linkType: hard linkType: hard
@@ -6219,9 +6219,9 @@ __metadata:
linkType: hard linkType: hard
"spdx-license-ids@npm:^3.0.0": "spdx-license-ids@npm:^3.0.0":
version: 3.0.20 version: 3.0.21
resolution: "spdx-license-ids@npm:3.0.20" resolution: "spdx-license-ids@npm:3.0.21"
checksum: 10c0/bdff7534fad6ef59be49becda1edc3fb7f5b3d6f296a715516ab9d972b8ad59af2c34b2003e01db8970d4c673d185ff696ba74c6b61d3bf327e2b3eac22c297c checksum: 10c0/ecb24c698d8496aa9efe23e0b1f751f8a7a89faedcdfcbfabae772b546c2db46ccde8f3bc447a238eb86bbcd4f73fea88720ef3b8394f7896381bec3d7736411
languageName: node languageName: node
linkType: hard linkType: hard
@@ -6641,17 +6641,17 @@ __metadata:
languageName: node languageName: node
linkType: hard linkType: hard
"typescript-eslint@npm:8.19.1": "typescript-eslint@npm:8.20.0":
version: 8.19.1 version: 8.20.0
resolution: "typescript-eslint@npm:8.19.1" resolution: "typescript-eslint@npm:8.20.0"
dependencies: dependencies:
"@typescript-eslint/eslint-plugin": "npm:8.19.1" "@typescript-eslint/eslint-plugin": "npm:8.20.0"
"@typescript-eslint/parser": "npm:8.19.1" "@typescript-eslint/parser": "npm:8.20.0"
"@typescript-eslint/utils": "npm:8.19.1" "@typescript-eslint/utils": "npm:8.20.0"
peerDependencies: peerDependencies:
eslint: ^8.57.0 || ^9.0.0 eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <5.8.0" typescript: ">=4.8.4 <5.8.0"
checksum: 10c0/59cdb590a0b38bfca1634c421c1acd2d1bfc8a7325af8fb1332421103dd98d454d349d4f82175088cf06216c1540dc1a73d1dca44cff16dd1d08f969feeb0c0b checksum: 10c0/049e0fa000657232c0fe26a062ef6a9cd16c5a58c814a74ac45971554c8b6bc67355821a66229f9537e819939a2ab065e7fcba9a70cd95c8283630dc58ac0144
languageName: node languageName: node
linkType: hard linkType: hard

View File

@@ -2450,7 +2450,7 @@ class VariantData {
return; return;
var->removeMember(key, resources); var->removeMember(key, resources);
} }
void reset() { // TODO: remove void reset() {
type_ = VariantType::Null; type_ = VariantType::Null;
} }
void setBoolean(bool value) { void setBoolean(bool value) {
@@ -4313,7 +4313,7 @@ template <typename T, typename Enable = void>
struct Comparer; struct Comparer;
template <typename T> template <typename T>
struct Comparer<T, enable_if_t<IsString<T>::value>> : ComparerBase { struct Comparer<T, enable_if_t<IsString<T>::value>> : ComparerBase {
T rhs; // TODO: store adapted string? T rhs;
explicit Comparer(T value) : rhs(value) {} explicit Comparer(T value) : rhs(value) {}
CompareResult visit(JsonString lhs) { CompareResult visit(JsonString lhs) {
int i = stringCompare(adaptString(rhs), adaptString(lhs)); int i = stringCompare(adaptString(rhs), adaptString(lhs));
@@ -5377,7 +5377,7 @@ class StringBuilder {
append(*s++); append(*s++);
} }
void append(const char* s, size_t n) { void append(const char* s, size_t n) {
while (n-- > 0) // TODO: memcpy while (n-- > 0)
append(*s++); append(*s++);
} }
void append(char c) { void append(char c) {

View File

@@ -157,7 +157,7 @@ switch (version_test as number) {
// set the version // set the version
system_status.emsesp_version = THIS_VERSION; system_status.emsesp_version = THIS_VERSION;
const emulate_esp = "ESP32S3"; const emulate_esp = 'ESP32S3';
// const emulate_esp = 'ESP32'; // const emulate_esp = 'ESP32';
switch (emulate_esp as string) { switch (emulate_esp as string) {
@@ -4507,7 +4507,7 @@ router
let fake = false; let fake = false;
// fake = true; // for testing fake = true; // for testing, shows a subset of data
if (!fake) { if (!fake) {
// pick EMS devices from coredata // pick EMS devices from coredata
@@ -4603,35 +4603,34 @@ router
// for testing only // for testing only
// add the custom entity data // add the custom entity data
// dashboard_object = {
// id: DeviceTypeUniqueID.CUSTOM_UID, // unique ID for custom entities
// t: DeviceType.CUSTOM,
// nodes: getDashboardEntityData(99)
// };
// // only add to dashboard if we have values
// if ((dashboard_object.nodes ?? []).length > 0) {
// dashboard_data.push(dashboard_object);
// }
let scheduler_data = emsesp_schedule.schedule.filter((item) => item.name);
let scheduler_data2 = scheduler_data.map((item, index) => ({
id: DeviceTypeUniqueID.SCHEDULER_UID * 100 + index,
dv: {
id: '00' + item.name,
v: item.active ? 'on' : 'off',
c: item.name,
l: ['off', 'on']
}
}));
dashboard_object = { dashboard_object = {
id: DeviceTypeUniqueID.SCHEDULER_UID, id: DeviceTypeUniqueID.CUSTOM_UID, // unique ID for custom entities
t: DeviceType.SCHEDULER, t: DeviceType.CUSTOM,
nodes: scheduler_data2 nodes: getDashboardEntityData(DeviceTypeUniqueID.CUSTOM_UID)
}; };
// only add to dashboard if we have values
if ((dashboard_object.nodes ?? []).length > 0) { if ((dashboard_object.nodes ?? []).length > 0) {
dashboard_data.push(dashboard_object); dashboard_data.push(dashboard_object);
} }
// add the scheduler data
// let scheduler_data = emsesp_schedule.schedule.filter((item) => item.name);
// let scheduler_data2 = scheduler_data.map((item, index) => ({
// id: DeviceTypeUniqueID.SCHEDULER_UID * 100 + index,
// dv: {
// id: '00' + item.name,
// v: item.active ? 'on' : 'off',
// c: item.name,
// l: ['off', 'on']
// }
// }));
// dashboard_object = {
// id: DeviceTypeUniqueID.SCHEDULER_UID,
// t: DeviceType.SCHEDULER,
// nodes: scheduler_data2
// };
// if ((dashboard_object.nodes ?? []).length > 0) {
// dashboard_data.push(dashboard_object);
// }
} }
// console.log('dashboard_data: ', dashboard_data); // console.log('dashboard_data: ', dashboard_data);

View File

@@ -5,7 +5,7 @@
# Run as `sh scripts/generate_csv_and_headers.sh` from the root of the repository. # Run as `sh scripts/generate_csv_and_headers.sh` from the root of the repository.
# create a dummy modbus_entity_parameters.hpp so the first pass compiles # create a dummy modbus_entity_parameters.hpp so the first pass compiles
cat >./src/modbus_entity_parameters.hpp <<EOL cat >./src/core/modbus_entity_parameters.hpp <<EOL
#include "modbus.h" #include "modbus.h"
#include "emsdevice.h" #include "emsdevice.h"
@@ -38,9 +38,9 @@ make -s ARGS=-DEMSESP_STANDALONE
# Generate Modbus entity parameters # Generate Modbus entity parameters
# One to build the modbus_entity_parameters.hpp header file # One to build the modbus_entity_parameters.hpp header file
# And then run entity_dump test again to create the dump_entities.csv file with the correct modbus counts # And then run entity_dump test again to create the dump_entities.csv file with the correct modbus counts
rm -f ./src/modbus_entity_parameters.hpp rm -f ./src/core/modbus_entity_parameters.hpp
echo "test entity_dump" | ./emsesp | python3 ./scripts/strip_csv.py | python3 ./scripts/update_modbus_registers.py >./src/modbus_entity_parameters.hpp echo "test entity_dump" | ./emsesp | python3 ./scripts/strip_csv.py | python3 ./scripts/update_modbus_registers.py >./src/core/modbus_entity_parameters.hpp
ls -al ./src/modbus_entity_parameters.hpp ls -al ./src/core/modbus_entity_parameters.hpp
# dump_entities.csv # dump_entities.csv
make -s ARGS=-DEMSESP_STANDALONE make -s ARGS=-DEMSESP_STANDALONE

View File

@@ -67,7 +67,7 @@ def on_upload(source, target, env):
'Host': host_ip, 'Host': host_ip,
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0',
'Accept': '*/*', 'Accept': '*/*',
'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', 'Accept-Language': 'en-US',
'Accept-Encoding': 'gzip, deflate', 'Accept-Encoding': 'gzip, deflate',
'Referer': f'{emsesp_url}', 'Referer': f'{emsesp_url}',
'Content-Type': 'application/json', 'Content-Type': 'application/json',
@@ -118,7 +118,7 @@ def on_upload(source, target, env):
'Host': host_ip, 'Host': host_ip,
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0',
'Accept': '*/*', 'Accept': '*/*',
'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', 'Accept-Language': 'en-US',
'Accept-Encoding': 'gzip, deflate', 'Accept-Encoding': 'gzip, deflate',
'Referer': f'{emsesp_url}', 'Referer': f'{emsesp_url}',
'Connection': 'keep-alive', 'Connection': 'keep-alive',
@@ -146,7 +146,7 @@ def on_upload(source, target, env):
'Host': host_ip, 'Host': host_ip,
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0',
'Accept': '*/*', 'Accept': '*/*',
'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', 'Accept-Language': 'en-US',
'Accept-Encoding': 'gzip, deflate', 'Accept-Encoding': 'gzip, deflate',
'Referer': f'{emsesp_url}', 'Referer': f'{emsesp_url}',
'Content-Type': 'application/json', 'Content-Type': 'application/json',

View File

@@ -41,7 +41,7 @@ def upload(file, ip, username, password):
'Host': host_ip, 'Host': host_ip,
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0',
'Accept': '*/*', 'Accept': '*/*',
'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', 'Accept-Language': 'en-US',
'Accept-Encoding': 'gzip, deflate', 'Accept-Encoding': 'gzip, deflate',
'Referer': f'{emsesp_url}', 'Referer': f'{emsesp_url}',
'Content-Type': 'application/json', 'Content-Type': 'application/json',
@@ -90,7 +90,7 @@ def upload(file, ip, username, password):
'Host': host_ip, 'Host': host_ip,
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0',
'Accept': '*/*', 'Accept': '*/*',
'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', 'Accept-Language': 'en-US',
'Accept-Encoding': 'gzip, deflate', 'Accept-Encoding': 'gzip, deflate',
'Referer': f'{emsesp_url}', 'Referer': f'{emsesp_url}',
'Connection': 'keep-alive', 'Connection': 'keep-alive',
@@ -116,7 +116,7 @@ def upload(file, ip, username, password):
'Host': host_ip, 'Host': host_ip,
'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0',
'Accept': '*/*', 'Accept': '*/*',
'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', 'Accept-Language': 'en-US',
'Accept-Encoding': 'gzip, deflate', 'Accept-Encoding': 'gzip, deflate',
'Referer': f'{emsesp_url}', 'Referer': f'{emsesp_url}',
'Content-Type': 'application/json', 'Content-Type': 'application/json',

View File

@@ -343,36 +343,38 @@ const std::initializer_list<Modbus::EntityModbusInfo> Modbus::modbus_register_ma
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(cooloffdelay), 50, 1), // cooloffdelay REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(cooloffdelay), 50, 1), // cooloffdelay
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchProgMode), 51, 1), // switchprogmode REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchProgMode), 51, 1), // switchprogmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(redthreshold), 52, 1), // redthreshold REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(redthreshold), 52, 1), // redthreshold
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daytemp), 53, 1), // daytemp REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(solarinfl), 53, 1), // solarinfl
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(nighttemp2), 54, 1), // nighttemp REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(currsolarinfl), 54, 1), // currsolarinfl
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidaytemp), 55, 1), // holidaytemp REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daytemp), 55, 1), // daytemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidaymode), 56, 1), // holidaymode REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(nighttemp2), 56, 1), // nighttemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(flowtempoffset), 57, 1), // flowtempoffset REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidaytemp), 57, 1), // holidaytemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidays), 58, 13), // holidays REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidaymode), 58, 1), // holidaymode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations), 71, 13), // vacations REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(flowtempoffset), 59, 1), // flowtempoffset
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(pause), 84, 1), // pause REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidays), 60, 13), // holidays
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(party), 85, 1), // party REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations), 73, 13), // vacations
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacreducetemp), 86, 1), // vacreducetemp REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(pause), 86, 1), // pause
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacreducemode), 87, 1), // vacreducemode REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(party), 87, 1), // party
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime1), 88, 8), // switchtime1 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacreducetemp), 88, 1), // vacreducetemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime2), 96, 8), // switchtime2 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacreducemode), 89, 1), // vacreducemode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(offtemp), 104, 1), // offtemp REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime1), 90, 8), // switchtime1
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daylowtemp), 105, 1), // daytemp2 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime2), 98, 8), // switchtime2
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daymidtemp), 106, 1), // daytemp3 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(offtemp), 106, 1), // offtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(dayhightemp), 107, 1), // daytemp4 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daylowtemp), 107, 1), // daytemp2
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime), 108, 8), // switchtime REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daymidtemp), 108, 1), // daytemp3
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations1), 116, 11), // vacations1 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(dayhightemp), 109, 1), // daytemp4
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations2), 127, 11), // vacations2 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime), 110, 8), // switchtime
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations3), 138, 11), // vacations3 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations1), 118, 11), // vacations1
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations4), 149, 11), // vacations4 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations2), 129, 11), // vacations2
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations5), 160, 11), // vacations5 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations3), 140, 11), // vacations3
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations6), 171, 11), // vacations6 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations4), 151, 11), // vacations4
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations7), 182, 11), // vacations7 REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations5), 162, 11), // vacations5
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reducehours), 193, 1), // reducehours REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations6), 173, 11), // vacations6
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reduceminutes), 194, 1), // reduceminutes REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations7), 184, 11), // vacations7
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heattemp), 195, 1), // heattemp REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reducehours), 195, 1), // reducehours
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(roomsensor), 196, 1), // roomsensor REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reduceminutes), 196, 1), // reduceminutes
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heatup), 197, 1), // heatup REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heattemp), 197, 1), // heattemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(roomsensor), 198, 1), // roomsensor
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heatup), 199, 1), // heatup
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(mode), 0, 1), // mode REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(mode), 0, 1), // mode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwSetTemp), 1, 1), // settemp REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwSetTemp), 1, 1), // settemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwSetTempLow), 2, 1), // settemplow REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwSetTempLow), 2, 1), // settemplow
@@ -529,6 +531,38 @@ const std::initializer_list<Modbus::EntityModbusInfo> Modbus::modbus_register_ma
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(minT), 7, 1), // mint REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(minT), 7, 1), // mint
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(maxT), 8, 1), // maxt REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(maxT), 8, 1), // maxt
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(mode), 9, 1), // mode REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(mode), 9, 1), // mode
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(sysFlowTemp), 0, 1), // sysflowtemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(sysRetTemp), 1, 1), // sysrettemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aFlowTemp), 2, 1), // altflowtemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aRetTemp), 3, 1), // altrettemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(cylTopTemp), 4, 1), // cyltoptemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aCylCenterTemp), 5, 1), // cylcentertemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(cylBottomTemp), 6, 1), // cylbottomtemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(flueGasTemp), 7, 1), // fluegastemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(valveBuffer), 8, 1), // valvebuffer
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(valveReturn), 9, 1), // valvereturn
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aPumpMod), 10, 1), // apumpmod
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(vr2Config), 11, 1), // vr2config
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(ahsActivated), 12, 1), // ahsactivated
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aPumpConfig), 13, 1), // apumpconfig
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aPumpSignal), 14, 1), // apumpsignal
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aPumpMin), 15, 1), // apumpmin
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(tempRise), 16, 1), // temprise
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(setReturnTemp), 17, 1), // setreturntemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(mixRuntime), 18, 1), // mixruntime
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(setFlowTemp), 19, 1), // setflowtemp
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(bufBypass), 20, 1), // bufbypass
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(bufMixRuntime), 21, 1), // bufmixruntime
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(bufConfig), 22, 1), // bufconfig
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(blockMode), 23, 1), // blockmode
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(blockTerm), 24, 1), // blockterm
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(blockHyst), 25, 1), // blockhyst
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(releaseWait), 26, 1), // releasewait
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(burner), 27, 1), // burner
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(aPump), 28, 1), // apump
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(heatRequest), 29, 1), // heatrequest
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(blockRemain), 30, 1), // blockremain
REGISTER_MAPPING(dt::HEATSOURCE, TAG_TYPE_AHS, FL_(blockRemainWw), 31, 1), // blockremaindhw
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(outFresh), 0, 1), // outfresh REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(outFresh), 0, 1), // outfresh
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(inFresh), 1, 1), // infresh REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(inFresh), 1, 1), // infresh
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(outEx), 2, 1), // outexhaust REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(outEx), 2, 1), // outexhaust

View File

@@ -114,6 +114,12 @@ class Mqtt {
return mqttClient_ ? mqttClient_->connected() : false; return mqttClient_ ? mqttClient_->connected() : false;
} }
static void disconnect() {
if (mqttClient_) {
mqttClient_->disconnect();
};
}
static MqttClient * client() { static MqttClient * client() {
return mqttClient_; return mqttClient_;
} }

View File

@@ -303,6 +303,7 @@ void System::system_restart(const char * partitionname) {
store_nvs_values(); // save any NVS values store_nvs_values(); // save any NVS values
Shell::loop_all(); // flush log to output Shell::loop_all(); // flush log to output
Mqtt::disconnect(); // gracefully disconnect MQTT, needed for QOS1
delay(1000); // wait 1 second delay(1000); // wait 1 second
ESP.restart(); ESP.restart();
#else #else

View File

@@ -2750,6 +2750,11 @@ bool Boiler::set_ww_circulation_pump(const char * value, const int8_t id) {
write_command(EMS_TYPE_UBAParameterWW, 6, v ? 0xFF : 0x00, EMS_TYPE_UBAParameterWW); write_command(EMS_TYPE_UBAParameterWW, 6, v ? 0xFF : 0x00, EMS_TYPE_UBAParameterWW);
} }
#ifdef EMSESP_TEST
// set wwCircPump_ , for test "api4" in test.cpp
wwCircPump_ = v ? EMS_VALUE_BOOL_ON : EMS_VALUE_BOOL_OFF;
#endif
return true; return true;
} }

View File

@@ -1,578 +0,0 @@
#include "modbus.h"
#include "emsdevice.h"
/*
* This file is auto-generated. Do not modify.
*/
// clang-format off
namespace emsesp {
using dt = EMSdevice::DeviceType;
#define REGISTER_MAPPING(device_type, device_value_tag_type, long_name, modbus_register_offset, modbus_register_count) \
{ device_type, device_value_tag_type, long_name[0], modbus_register_offset, modbus_register_count }
// IMPORTANT: This list MUST be ordered by keys "device_type", "device_value_tag_type" and "modbus_register_offset" in this order.
const std::initializer_list<Modbus::EntityModbusInfo> Modbus::modbus_register_mappings = {
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(reset), 0, 1), // reset
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(forceHeatingOff), 1, 1), // heatingoff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatingActive), 2, 1), // heatingactive
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(tapwaterActive), 3, 1), // tapwateractive
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(selFlowTemp), 4, 1), // selflowtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatingPumpMod), 5, 1), // heatingpumpmod
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(outdoorTemp), 6, 1), // outdoortemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(curFlowTemp), 7, 1), // curflowtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(retTemp), 8, 1), // rettemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(switchTemp), 9, 1), // switchtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(sysPress), 10, 1), // syspress
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(boilTemp), 11, 1), // boiltemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(headertemp), 12, 1), // headertemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatingActivated), 13, 1), // heatingactivated
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatingTemp), 14, 1), // heatingtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatingPump), 15, 1), // heatingpump
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pumpModMax), 16, 1), // pumpmodmax
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pumpModMin), 17, 1), // pumpmodmin
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pumpMode), 18, 1), // pumpmode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pumpCharacter), 19, 1), // pumpcharacter
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pumpDelay), 20, 1), // pumpdelay
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pumpOnTemp), 21, 1), // pumpontemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(selBurnPow), 22, 1), // selburnpow
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(curBurnPow), 23, 1), // curburnpow
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burnStarts), 24, 2), // burnstarts
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burnWorkMin), 26, 2), // burnworkmin
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burn2WorkMin), 28, 2), // burn2workmin
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatWorkMin), 30, 2), // heatworkmin
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatStarts), 32, 2), // heatstarts
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(UBAuptime), 34, 2), // ubauptime
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(lastCode), 36, 28), // lastcode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(serviceCode), 64, 2), // servicecode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(serviceCodeNumber), 66, 1), // servicecodenumber
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(maintenanceMessage), 67, 2), // maintenancemessage
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(maintenanceType), 69, 1), // maintenance
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(maintenanceTime), 70, 1), // maintenancetime
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(maintenanceDate), 71, 6), // maintenancedate
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(emergencyOps), 77, 1), // emergencyops
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(emergencyTemp), 78, 1), // emergencytemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgTotal), 79, 2), // nrgtotal
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgHeat), 81, 2), // nrgheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgCool), 83, 2), // nrgcool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(meterTotal), 85, 2), // metertotal
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(meterComp), 87, 2), // metercomp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(meterEHeat), 89, 2), // metereheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(meterHeat), 91, 2), // meterheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(meterCool), 93, 2), // metercool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(upTimeTotal), 95, 2), // uptimetotal
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(upTimeControl), 97, 2), // uptimecontrol
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(upTimeCompHeating), 99, 2), // uptimecompheating
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(upTimeCompCooling), 101, 2), // uptimecompcooling
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(upTimeCompPool), 103, 2), // uptimecomppool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(totalCompStarts), 105, 2), // totalcompstarts
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatingStarts), 107, 2), // heatingstarts
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(coolingStarts), 109, 2), // coolingstarts
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(poolStarts), 111, 2), // poolstarts
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgConsTotal), 113, 2), // nrgconstotal
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgConsCompTotal), 115, 2), // nrgconscomptotal
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgConsCompHeating), 117, 2), // nrgconscompheating
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgConsCompCooling), 119, 2), // nrgconscompcooling
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgConsCompPool), 121, 2), // nrgconscomppool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxElecHeatNrgConsTotal), 123, 2), // auxelecheatnrgconstotal
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxElecHeatNrgConsHeating), 125, 2), // auxelecheatnrgconsheating
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxElecHeatNrgConsPool), 127, 2), // auxelecheatnrgconspool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgSuppTotal), 129, 2), // nrgsupptotal
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgSuppHeating), 131, 2), // nrgsuppheating
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgSuppCooling), 133, 2), // nrgsuppcooling
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgSuppPool), 135, 2), // nrgsupppool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpPower), 137, 1), // hppower
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpMaxPower), 138, 1), // hpmaxpower
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pvMaxComp), 139, 1), // pvmaxcomp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(powerReduction), 140, 1), // powerreduction
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpSetDiffPress), 141, 1), // hpsetdiffpress
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpCompOn), 142, 1), // hpcompon
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpActivity), 143, 1), // hpactivity
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpBrinePumpSpd), 144, 1), // hpbrinepumpspd
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpSwitchValve), 145, 1), // hpswitchvalve
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpCompSpd), 146, 1), // hpcompspd
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpCircSpd), 147, 1), // hpcircspd
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpBrineIn), 148, 1), // hpbrinein
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpBrineOut), 149, 1), // hpbrineout
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTc0), 150, 1), // hptc0
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTc1), 151, 1), // hptc1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTc3), 152, 1), // hptc3
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTr1), 153, 1), // hptr1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTr3), 154, 1), // hptr3
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTr4), 155, 1), // hptr4
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTr5), 156, 1), // hptr5
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTr6), 157, 1), // hptr6
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTr7), 158, 1), // hptr7
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTl2), 159, 1), // hptl2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpPl1), 160, 1), // hppl1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpPh1), 161, 1), // hpph1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTa4), 162, 1), // hpta4
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpTw1), 163, 1), // hptw1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(poolSetTemp), 164, 1), // poolsettemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hp4wayValve), 165, 1), // hp4way
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpInput1), 166, 1), // hpin1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpIn1Opt), 167, 8), // hpin1opt
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpInput2), 175, 1), // hpin2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpIn2Opt), 176, 8), // hpin2opt
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpInput3), 184, 1), // hpin3
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpIn3Opt), 185, 8), // hpin3opt
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpInput4), 193, 1), // hpin4
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpIn4Opt), 194, 8), // hpin4opt
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(maxHeatComp), 202, 1), // maxheatcomp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(maxHeatHeat), 203, 1), // maxheatheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(manDefrost), 204, 1), // mandefrost
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pvCooling), 205, 1), // pvcooling
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxHeaterOnly), 206, 1), // auxheateronly
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxHeaterOff), 207, 1), // auxheateroff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxHeaterStatus), 208, 1), // auxheaterstatus
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxHeaterLevel), 209, 1), // auxheaterlevel
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxHeaterDelay), 210, 1), // auxheaterdelay
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxMaxLimit), 211, 1), // auxmaxlimit
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxLimitStart), 212, 1), // auxlimitstart
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxHeatMode), 213, 1), // auxheatrmode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpHystHeat), 214, 1), // hphystheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpHystCool), 215, 1), // hphystcool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpHystPool), 216, 1), // hphystpool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(silentMode), 217, 1), // silentmode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(silentFrom), 218, 1), // silentfrom
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(silentTo), 219, 1), // silentto
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(minTempSilent), 220, 1), // mintempsilent
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(tempParMode), 221, 1), // tempparmode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(auxHeatMixValve), 222, 1), // auxheatmix
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(tempDiffHeat), 223, 1), // tempdiffheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(tempDiffCool), 224, 1), // tempdiffcool
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(vp_cooling), 225, 1), // vpcooling
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatCable), 226, 1), // heatcable
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(VC0valve), 227, 1), // vc0valve
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(primePump), 228, 1), // primepump
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(primePumpMod), 229, 1), // primepumpmod
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hp3wayValve), 230, 1), // hp3way
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(elHeatStep1), 231, 1), // elheatstep1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(elHeatStep2), 232, 1), // elheatstep2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(elHeatStep3), 233, 1), // elheatstep3
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpEA0), 234, 1), // hpea0
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpPumpMode), 235, 1), // hppumpmode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpFan), 236, 1), // fan
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpShutdown), 237, 1), // shutdown
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpCurrPower), 238, 1), // hpcurrpower
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(hpPowerLimit), 239, 1), // hppowerlimit
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pc0Flow), 240, 1), // pc0flow
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pc1Flow), 241, 1), // pc1flow
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pc1On), 242, 1), // pc1on
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(pc1Rate), 243, 1), // pc1rate
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(exhaustTemp), 244, 1), // exhausttemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burnGas), 245, 1), // burngas
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burnGas2), 246, 1), // burngas2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(flameCurr), 247, 1), // flamecurr
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(fanWork), 248, 1), // fanwork
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(ignWork), 249, 1), // ignwork
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(oilPreHeat), 250, 1), // oilpreheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burnMinPower), 251, 1), // burnminpower
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burnMaxPower), 252, 1), // burnmaxpower
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(burnMinPeriod), 253, 1), // burnminperiod
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(absBurnPow), 254, 1), // absburnpow
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatblock), 255, 1), // heatblock
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(boilHystOn), 256, 1), // boilhyston
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(boilHystOff), 257, 1), // boilhystoff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(boil2HystOn), 258, 1), // boil2hyston
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(boil2HystOff), 259, 1), // boil2hystoff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(curveOn), 260, 1), // curveon
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(curveBase), 261, 1), // curvebase
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(curveEnd), 262, 1), // curveend
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(summertemp), 263, 1), // summertemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nofrostmode), 264, 1), // nofrostmode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nofrosttemp), 265, 1), // nofrosttemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(gasMeterHeat), 266, 2), // gasmeterheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nrgHeat2), 268, 2), // nrgheat2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(nomPower), 270, 1), // nompower
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(netFlowTemp), 271, 1), // netflowtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatValve), 272, 1), // heatvalve
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(keepWarmTemp), 273, 1), // keepwarmtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(setReturnTemp), 274, 1), // setreturntemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DEVICE_DATA, FL_(heatingOn), 275, 1), // heating
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(nrgWw), 0, 2), // nrg
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(meterWw), 2, 2), // meter
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(upTimeCompWw), 4, 2), // uptimecomp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwStartsHp), 6, 2), // startshp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(nrgConsCompWw), 8, 2), // nrgconscomp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(auxElecHeatNrgConsWw), 10, 2), // auxelecheatnrgcons
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(nrgSuppWw), 12, 2), // nrgsupp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(maxHeatDhw), 14, 1), // maxheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwAlternatingOper), 15, 1), // alternatingop
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwAltOpPrioHeat), 16, 1), // altopprioheat
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwAltOpPrioWw), 17, 1), // altopprio
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwComfOffTemp), 18, 1), // comfoff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwEcoOffTemp), 19, 1), // ecooff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwEcoPlusOffTemp), 20, 1), // ecoplusoff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwComfDiffTemp), 21, 1), // comfdiff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwEcoDiffTemp), 22, 1), // ecodiff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwEcoPlusDiffTemp), 23, 1), // ecoplusdiff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwComfStopTemp), 24, 1), // comfstop
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwEcoStopTemp), 25, 1), // ecostop
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwEcoPlusStopTemp), 26, 1), // ecoplusstop
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(hpCircPumpWw), 27, 1), // hpcircpump
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwtapactivated), 28, 1), // tapactivated
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwSetTemp), 29, 1), // settemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(selRoomTemp), 30, 1), // seltemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwSelTempLow), 31, 1), // seltemplow
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwSelTempEco), 32, 1), // tempecoplus
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwSelTempOff), 33, 1), // seltempoff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwSelTempSingle), 34, 1), // seltempsingle
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwSolarTemp), 35, 1), // solartemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwType), 36, 1), // type
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwComfort), 37, 1), // comfort
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwComfort1), 38, 1), // comfort1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(flowtempoffset), 39, 1), // flowtempoffset
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwChargeOptimization), 40, 1), // chargeoptimization
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwMaxPower), 41, 1), // maxpower
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwMaxTemp), 42, 1), // maxtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwCircPump), 43, 1), // circpump
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwChargeType), 44, 1), // chargetype
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwHystOn), 45, 1), // hyston
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwHystOff), 46, 1), // hystoff
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwDisinfectionTemp), 47, 1), // disinfectiontemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwCircMode), 48, 1), // circmode
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwCirc), 49, 1), // circ
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwCurTemp), 50, 1), // curtemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwCurTemp2), 51, 1), // curtemp2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwCurFlow), 52, 1), // curflow
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwStorageTemp1), 53, 1), // storagetemp1
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwStorageTemp2), 54, 1), // storagetemp2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(activated), 55, 1), // activated
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwOneTime), 56, 1), // onetime
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwDisinfecting), 57, 1), // disinfecting
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwCharging), 58, 1), // charging
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwRecharging), 59, 1), // recharging
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwTempOK), 60, 1), // tempok
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwActive), 61, 1), // active
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(ww3wayValve), 62, 1), // 3wayvalve
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwMixerTemp), 63, 1), // mixertemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(cylMiddleTemp), 64, 1), // cylmiddletemp
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwStarts), 65, 2), // starts
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwWorkM), 67, 2), // workm
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(gasMeterWw), 69, 2), // gasmeter
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(nrgWw2), 71, 2), // nrg2
REGISTER_MAPPING(dt::BOILER, TAG_TYPE_DHW, FL_(wwValve), 73, 1), // dhwvalve
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(errorCode), 0, 8), // errorcode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(lastCode), 8, 25), // lastcode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(dateTime), 33, 13), // datetime
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(ibaCalIntTemperature), 46, 1), // intoffset
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(floordrystatus), 47, 1), // floordry
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(dampedoutdoortemp), 48, 1), // dampedoutdoortemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(floordrytemp), 49, 1), // floordrytemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(ibaBuildingType), 50, 1), // building
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(ibaMinExtTemperature), 51, 1), // minexttemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(damping), 52, 1), // damping
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(hasSolar), 53, 1), // solar
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(hybridStrategy), 54, 1), // hybridstrategy
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(switchOverTemp), 55, 1), // switchovertemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(energyCostRatio), 56, 1), // energycostratio
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(fossileFactor), 57, 1), // fossilefactor
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(electricFactor), 58, 1), // electricfactor
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(delayBoiler), 59, 1), // delayboiler
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(tempDiffBoiler), 60, 1), // tempdiffboiler
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(pvEnableWw), 61, 1), // pvenabledhw
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(pvRaiseHeat), 62, 1), // pvraiseheat
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(pvLowerCool), 63, 1), // pvlowercool
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(absent), 64, 1), // absent
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(ibaMainDisplay), 65, 1), // display
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(ibaLanguage), 66, 1), // language
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(ibaClockOffset), 67, 1), // clockoffset
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(tempsensor1), 68, 1), // inttemp1
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(tempsensor2), 69, 1), // inttemp2
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(autodst), 70, 1), // autodst
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(backlight), 71, 1), // backlight
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(brightness), 72, 1), // brightness
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(mixingvalves), 73, 1), // mixingvalves
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(heatingPID), 74, 1), // heatingpid
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(preheating), 75, 1), // preheating
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DEVICE_DATA, FL_(vacations), 76, 13), // vacations
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(selRoomTemp), 0, 1), // seltemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(roomTemp), 1, 1), // currtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(haclimate), 2, 1), // haclimate
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(mode), 3, 1), // mode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(modetype), 4, 1), // modetype
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(ecotemp), 5, 1), // ecotemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(manualtemp), 6, 1), // manualtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(comforttemp), 7, 1), // comforttemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(summertemp), 8, 1), // summertemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(designtemp), 9, 1), // designtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(offsettemp), 10, 1), // offsettemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(minflowtemp), 11, 1), // minflowtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(maxflowtemp), 12, 1), // maxflowtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(roominfluence), 13, 1), // roominfluence
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(roominfl_factor), 14, 1), // roominflfactor
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(curroominfl), 15, 1), // curroominfl
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(nofrostmode), 16, 1), // nofrostmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(nofrosttemp), 17, 1), // nofrosttemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(targetflowtemp), 18, 1), // targetflowtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heatingtype), 19, 1), // heatingtype
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(summersetmode), 20, 1), // summersetmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(hpoperatingmode), 21, 1), // hpoperatingmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(summermode), 22, 1), // summermode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(hpoperatingstate), 23, 1), // hpoperatingstate
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(controlmode), 24, 1), // controlmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(program), 25, 1), // program
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(tempautotemp), 26, 1), // tempautotemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(remoteseltemp), 27, 1), // remoteseltemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(fastheatup), 28, 1), // fastheatup
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchonoptimization), 29, 1), // switchonoptimization
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reducemode), 30, 1), // reducemode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(noreducetemp), 31, 1), // noreducetemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reducetemp), 32, 1), // reducetemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(wwprio), 33, 1), // dhwprio
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(hpcooling), 34, 1), // hpcooling
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(coolingOn), 35, 1), // coolingon
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(hpmode), 36, 1), // hpmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(dewoffset), 37, 1), // dewoffset
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(roomtempdiff), 38, 1), // roomtempdiff
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(hpminflowtemp), 39, 1), // hpminflowtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(control), 40, 1), // control
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(remotetemp), 41, 1), // remotetemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(remotehum), 42, 1), // remotehum
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heatondelay), 43, 1), // heatondelay
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heatoffdelay), 44, 1), // heatoffdelay
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(instantstart), 45, 1), // instantstart
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(boost), 46, 1), // boost
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(boosttime), 47, 1), // boosttime
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(coolstart), 48, 1), // coolstart
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(coolondelay), 49, 1), // coolondelay
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(cooloffdelay), 50, 1), // cooloffdelay
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchProgMode), 51, 1), // switchprogmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(redthreshold), 52, 1), // redthreshold
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daytemp), 53, 1), // daytemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(nighttemp2), 54, 1), // nighttemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidaytemp), 55, 1), // holidaytemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidaymode), 56, 1), // holidaymode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(flowtempoffset), 57, 1), // flowtempoffset
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(holidays), 58, 13), // holidays
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations), 71, 13), // vacations
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(pause), 84, 1), // pause
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(party), 85, 1), // party
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacreducetemp), 86, 1), // vacreducetemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacreducemode), 87, 1), // vacreducemode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime1), 88, 8), // switchtime1
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime2), 96, 8), // switchtime2
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(offtemp), 104, 1), // offtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daylowtemp), 105, 1), // daytemp2
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(daymidtemp), 106, 1), // daytemp3
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(dayhightemp), 107, 1), // daytemp4
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(switchtime), 108, 8), // switchtime
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations1), 116, 11), // vacations1
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations2), 127, 11), // vacations2
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations3), 138, 11), // vacations3
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations4), 149, 11), // vacations4
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations5), 160, 11), // vacations5
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations6), 171, 11), // vacations6
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(vacations7), 182, 11), // vacations7
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reducehours), 193, 1), // reducehours
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(reduceminutes), 194, 1), // reduceminutes
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heattemp), 195, 1), // heattemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(roomsensor), 196, 1), // roomsensor
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(heatup), 197, 1), // heatup
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(solarinfl), 198, 1), // solarinfl
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_HC, FL_(currsolarinfl), 199, 1), // currsolarinfl
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(mode), 0, 1), // mode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwSetTemp), 1, 1), // settemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwSetTempLow), 2, 1), // settemplow
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwCircMode), 3, 1), // circmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwChargeDuration), 4, 1), // chargeduration
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwCharge), 5, 1), // charge
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwExtra), 6, 1), // extra
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwDisinfecting), 7, 1), // disinfecting
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwDisinfectDay), 8, 1), // disinfectday
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwDisinfectTime), 9, 1), // disinfecttime
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwDailyHeating), 10, 1), // dailyheating
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwDailyHeatTime), 11, 1), // dailyheattime
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwProgMode), 12, 1), // progmode
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwCircProg), 13, 1), // circprog
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwDisinfectHour), 14, 1), // disinfecthour
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwMaxTemp), 15, 1), // maxtemp
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwOneTimeKey), 16, 1), // onetimekey
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwswitchtime), 17, 11), // switchtimeWW
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwcircswitchtime), 28, 8), // circswitchtime
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(holidays), 36, 13), // holidays
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(vacations), 49, 13), // vacations
REGISTER_MAPPING(dt::THERMOSTAT, TAG_TYPE_DHW, FL_(wwWhenModeOff), 62, 1), // whenmodeoff
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(flowTempHc), 0, 1), // flowtemphc
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(valveStatus), 1, 1), // valvestatus
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(flowSetTemp), 2, 1), // flowsettemp
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(wwPumpStatus), 3, 1), // pumpstatus
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(activated), 4, 1), // activated
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(mixerSetTime), 5, 1), // valvesettime
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(flowTempVf), 6, 1), // flowtempvf
REGISTER_MAPPING(dt::MIXER, TAG_TYPE_HC, FL_(flowtempoffset), 7, 1), // flowtempoffset
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collectorTemp), 0, 1), // collectortemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cylBottomTemp), 1, 1), // cylbottomtemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPump), 2, 1), // solarpump
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(pumpWorkTime), 3, 2), // pumpworktime
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cylMaxTemp), 5, 1), // cylmaxtemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collectorShutdown), 6, 1), // collectorshutdown
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cylHeated), 7, 1), // cylheated
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPumpMod), 8, 1), // solarpumpmod
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(pumpMinMod), 9, 1), // pumpminmod
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPumpTurnonDiff), 10, 1), // turnondiff
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPumpTurnoffDiff), 11, 1), // turnoffdiff
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPower), 12, 1), // solarpower
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(energyLastHour), 13, 2), // energylasthour
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(maxFlow), 15, 1), // maxflow
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarIsEnabled), 16, 1), // solarenabled
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cylMiddleTemp), 17, 1), // cylmiddletemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(retHeatAssist), 18, 1), // retheatassist
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(m1Valve), 19, 1), // heatassistvalve
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collector2Temp), 20, 1), // collector2temp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(m1Power), 21, 1), // heatassistpower
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPump2), 22, 1), // solarpump2
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPump2Mod), 23, 1), // solarpump2mod
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cyl2BottomTemp), 24, 1), // cyl2bottomtemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cyl3BottomTemp), 25, 1), // cyl3bottomtemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cylTopTemp), 26, 1), // cyltoptemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(heatExchangerTemp), 27, 1), // heatexchangertemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cylPumpMod), 28, 1), // cylpumpmod
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(valveStatus), 29, 1), // valvestatus
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(vs1Status), 30, 1), // vs1status
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(vs3Status), 31, 1), // vs3status
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(transferPump), 32, 1), // transferpump
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(transferPumpMod), 33, 1), // transferpumpmod
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collectorMaxTemp), 34, 1), // collectormaxtemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collectorMinTemp), 35, 1), // collectormintemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(energyToday), 36, 2), // energytoday
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(energyTotal), 38, 2), // energytotal
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(pump2WorkTime), 40, 2), // pump2worktime
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(m1WorkTime), 42, 2), // m1worktime
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(heatTransferSystem), 44, 1), // heattransfersystem
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(externalCyl), 45, 1), // externalcyl
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(thermalDisinfect), 46, 1), // thermaldisinfect
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(heatMetering), 47, 1), // heatmetering
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(activated), 48, 1), // activated
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPumpMode), 49, 1), // solarpumpmode
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPumpKick), 50, 1), // solarpumpkick
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(plainWaterMode), 51, 1), // plainwatermode
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(doubleMatchFlow), 52, 1), // doublematchflow
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(pump2MinMod), 53, 1), // pump2minmod
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPump2TurnonDiff), 54, 1), // turnondiff2
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPump2TurnoffDiff), 55, 1), // turnoffdiff2
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(solarPump2Kick), 56, 1), // pump2kick
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(climateZone), 57, 1), // climatezone
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collector1Area), 58, 1), // collector1area
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collector1Type), 59, 1), // collector1type
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collector2Area), 60, 1), // collector2area
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(collector2Type), 61, 1), // collector2type
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(cylPriority), 62, 1), // cylpriority
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(heatCntFlowTemp), 63, 1), // heatcntflowtemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(heatCntRetTemp), 64, 1), // heatcntrettemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(heatCnt), 65, 1), // heatcnt
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(swapFlowTemp), 66, 1), // swapflowtemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DEVICE_DATA, FL_(swapRetTemp), 67, 1), // swaprettemp
REGISTER_MAPPING(dt::SOLAR, TAG_TYPE_DHW, FL_(wwMinTemp), 0, 1), // mintemp
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(airHumidity), 0, 1), // airhumidity
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(dewTemperature), 1, 1), // dewtemperature
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(curFlowTemp), 2, 1), // curflowtemp
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(retTemp), 3, 1), // rettemp
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(sysRetTemp), 4, 1), // sysrettemp
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpTa4), 5, 1), // hpta4
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpTr1), 6, 1), // hptr1
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpTr3), 7, 1), // hptr3
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpTr4), 8, 1), // hptr4
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpTr5), 9, 1), // hptr5
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpTr6), 10, 1), // hptr6
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpTl2), 11, 1), // hptl2
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpPl1), 12, 1), // hppl1
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpPh1), 13, 1), // hpph1
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(heatingPumpMod), 14, 1), // heatingpumpmod
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hpCompSpd), 15, 1), // hpcompspd
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(hybridStrategy), 16, 1), // hybridstrategy
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(lowNoiseMode), 17, 1), // lownoisemode
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(lowNoiseStart), 18, 1), // lownoisestart
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(lowNoiseStop), 19, 1), // lownoisestop
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(energyPriceGas), 20, 1), // energypricegas
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(energyPriceEl), 21, 1), // energypriceel
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(energyPricePV), 22, 1), // energyfeedpv
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(switchOverTemp), 23, 1), // switchovertemp
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(airPurgeMode), 24, 1), // airpurgemode
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(heatPumpOutput), 25, 1), // heatpumpoutput
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(coolingCircuit), 26, 1), // coolingcircuit
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(compStartMod), 27, 1), // compstartmod
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(heatDrainPan), 28, 1), // heatdrainpan
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(heatCable), 29, 1), // heatcable
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(nrgTotal), 30, 2), // nrgtotal
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(nrgHeat), 32, 2), // nrgheat
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(meterTotal), 34, 2), // metertotal
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(meterComp), 36, 2), // metercomp
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(meterEHeat), 38, 2), // metereheat
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(meterHeat), 40, 2), // meterheat
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(heatingStarts), 42, 2), // heatingstarts
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(fuelHeat), 44, 2), // fuelheat
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(elHeat), 46, 2), // elheat
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DEVICE_DATA, FL_(elGenHeat), 48, 2), // elgenheat
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(hybridDHW), 0, 1), // hybriddhw
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(nrgWw), 1, 2), // nrg
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(meterWw), 3, 2), // meter
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(wwStartsHp), 5, 2), // startshp
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(fuelDhw), 7, 2), // fueldhw
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(elDhw), 9, 2), // eldhw
REGISTER_MAPPING(dt::HEATPUMP, TAG_TYPE_DHW, FL_(elGenDhw), 11, 2), // elgendhw
REGISTER_MAPPING(dt::SWITCH, TAG_TYPE_DEVICE_DATA, FL_(activated), 0, 1), // activated
REGISTER_MAPPING(dt::SWITCH, TAG_TYPE_DEVICE_DATA, FL_(flowTempHc), 1, 1), // flowtemphc
REGISTER_MAPPING(dt::SWITCH, TAG_TYPE_DEVICE_DATA, FL_(status), 2, 1), // status
REGISTER_MAPPING(dt::CONTROLLER, TAG_TYPE_DEVICE_DATA, FL_(dateTime), 0, 13), // datetime
REGISTER_MAPPING(dt::ALERT, TAG_TYPE_DEVICE_DATA, FL_(setFlowTemp), 0, 1), // setflowtemp
REGISTER_MAPPING(dt::ALERT, TAG_TYPE_DEVICE_DATA, FL_(setBurnPow), 1, 1), // setburnpow
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(flowTempVf), 0, 1), // flowtempvf
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(input), 1, 1), // input
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(outPower), 2, 1), // outpow
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(setPower), 3, 1), // setpower
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(setPoint), 4, 1), // setpoint
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(minV), 5, 1), // minv
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(maxV), 6, 1), // maxv
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(minT), 7, 1), // mint
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(maxT), 8, 1), // maxt
REGISTER_MAPPING(dt::EXTENSION, TAG_TYPE_DEVICE_DATA, FL_(mode), 9, 1), // mode
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(outFresh), 0, 1), // outfresh
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(inFresh), 1, 1), // infresh
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(outEx), 2, 1), // outexhaust
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(inEx), 3, 1), // inexhaust
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(ventInSpeed), 4, 1), // ventinspeed
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(ventOutSpeed), 5, 1), // ventoutspeed
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(ventMode), 6, 1), // ventmode
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(airquality), 7, 1), // airquality
REGISTER_MAPPING(dt::VENTILATION, TAG_TYPE_DEVICE_DATA, FL_(airHumidity), 8, 1), // airhumidity
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(selRoomTemp), 0, 1), // seltemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwTemp), 1, 1), // temp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwCurTemp2), 2, 1), // curtemp2
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(hydrTemp), 3, 1), // hydrTemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwPump), 4, 1), // pump
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(flowtempoffset), 5, 1), // flowtempoffset
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwHystOn), 6, 1), // hyston
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwHystOff), 7, 1), // hystoff
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwDisinfectionTemp), 8, 1), // disinfectiontemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwCirc), 9, 1), // circ
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwCircMode), 10, 1), // circmode
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwTempStatus), 11, 1), // tempstatus
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwMaxTemp), 12, 1), // maxtemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwDiffTemp), 13, 1), // difftemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwRedTemp), 14, 1), // redtemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwRequiredTemp), 15, 1), // requiredtemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwStorageTemp1), 16, 1), // storagetemp1
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwColdTemp), 17, 1), // coldtemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwTemp5), 18, 1), // temp5
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(retTemp), 19, 1), // rettemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwHotTemp), 20, 1), // hottemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwDailyTemp), 21, 1), // dailytemp
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwCircTc), 22, 1), // circtc
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwKeepWarm), 23, 1), // keepwarm
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwStatus2), 24, 1), // status2
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwPumpMod), 25, 1), // pumpmod
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(wwFlow), 26, 1), // flow
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(valveReturn), 27, 1), // valvereturn
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(deltaTRet), 28, 1), // deltatret
REGISTER_MAPPING(dt::WATER, TAG_TYPE_DHW, FL_(errorDisp), 29, 1), // errordisp
};
} // namespace emsesp
// clang-format off

View File

@@ -960,6 +960,48 @@ void Test::run_test(uuid::console::Shell & shell, const std::string & cmd, const
ok = true; ok = true;
} }
if (command == "api4") {
shell.printfln("Testing API writing values...");
EMSESP::system_.bool_format(BOOL_FORMAT_ONOFF_STR);
// EMSESP::system_.bool_format(BOOL_FORMAT_ONOFF_STR_CAP);
// load devices
test("boiler");
test("thermostat");
ok = true;
AsyncWebServerRequest request;
JsonDocument doc;
JsonVariant json;
request.method(HTTP_POST);
shell.invoke_command("call boiler circpump/value"); // initial state is off
// call boiler circpump on
char data1[] = "{\"device\":\"boiler\", \"cmd\":\"circpump\",\"value\":\"on\"}";
deserializeJson(doc, data1);
request.url("/api");
EMSESP::webAPIService.webAPIService(&request, doc.as<JsonVariant>());
shell.invoke_command("call boiler circpump/value");
// switch to german
EMSESP::system_.locale("de");
// call boiler circpump off, but using value in DE
char data2[] = "{\"device\":\"boiler\", \"cmd\":\"circpump\",\"value\":\"aus\"}";
deserializeJson(doc, data2);
request.url("/api");
EMSESP::webAPIService.webAPIService(&request, doc.as<JsonVariant>());
shell.invoke_command("call boiler circpump/value");
// call boiler circpump on, but using value in DE
char data3[] = "{\"device\":\"boiler\", \"cmd\":\"circpump\",\"value\":\"an\"}";
deserializeJson(doc, data3);
request.url("/api");
EMSESP::webAPIService.webAPIService(&request, doc.as<JsonVariant>());
shell.invoke_command("call boiler circpump/value");
}
if (command == "api3") { if (command == "api3") {
shell.printfln("Testing API getting values from system"); shell.printfln("Testing API getting values from system");
EMSESP::system_.bool_format(BOOL_FORMAT_TRUEFALSE); // BOOL_FORMAT_TRUEFALSE_STR EMSESP::system_.bool_format(BOOL_FORMAT_TRUEFALSE); // BOOL_FORMAT_TRUEFALSE_STR
@@ -1016,10 +1058,10 @@ void Test::run_test(uuid::console::Shell & shell, const std::string & cmd, const
// request.url("/api"); // request.url("/api");
// EMSESP::webAPIService.webAPIService(&request, doc.as<JsonVariant>()); // EMSESP::webAPIService.webAPIService(&request, doc.as<JsonVariant>());
char data2[] = "{\"action\":\"getCustomSupport\", \"param\":\"hello\"}"; // char data2[] = "{\"action\":\"getCustomSupport\", \"param\":\"hello\"}";
deserializeJson(doc, data2); // deserializeJson(doc, data2);
request.url("/rest/action"); // request.url("/rest/action");
EMSESP::webStatusService.action(&request, doc.as<JsonVariant>()); // EMSESP::webStatusService.action(&request, doc.as<JsonVariant>());
// char data3[] = "{\"action\":\"export\", \"param\":\"schedule\"}"; // char data3[] = "{\"action\":\"export\", \"param\":\"schedule\"}";
// deserializeJson(doc, data3); // deserializeJson(doc, data3);

View File

@@ -42,6 +42,7 @@ namespace emsesp {
// #define EMSESP_DEBUG_DEFAULT "render" // #define EMSESP_DEBUG_DEFAULT "render"
// #define EMSESP_DEBUG_DEFAULT "api" // #define EMSESP_DEBUG_DEFAULT "api"
// #define EMSESP_DEBUG_DEFAULT "api3" // #define EMSESP_DEBUG_DEFAULT "api3"
#define EMSESP_DEBUG_DEFAULT "api4"
// #define EMSESP_DEBUG_DEFAULT "crash" // #define EMSESP_DEBUG_DEFAULT "crash"
// #define EMSESP_DEBUG_DEFAULT "dv" // #define EMSESP_DEBUG_DEFAULT "dv"
// #define EMSESP_DEBUG_DEFAULT "lastcode" // #define EMSESP_DEBUG_DEFAULT "lastcode"

View File

@@ -1 +1 @@
#define EMSESP_APP_VERSION "3.7.2-dev.10" #define EMSESP_APP_VERSION "3.7.2-dev.11"