Hallo liebe Leute,
ich habe seit gestern 15 der o.g. Thermostate, davon 10 bereits in Betrieb. Um erst mal eine Übersicht zu erhalten, habe ich mich in Anlehnung an das Beispiel aus http://www.fhemwiki.de/wiki/ReadingsGroup#Heizungsteuerung_f.C3.BCr_HM_Wand-_und_Heizk.C3.B6rperthermostate gehalten und natürlich an meine vorhandene Hardware angepasst.
In FHEM ist natürlich "attr global showInternalValues 1" gesetzt, so das ich die versteckten Register auch sehen kann; sollte aber beim Ansteuern keinen Unterschied machen.
Problem ist jetzt, das ich weder das zugewiesene Symbol und wenn Zuweisung entfernt on/off dargestellt bekomme. Ansonsten kommt alles an und ist auch steuerbar, wenn's steuerbar sein soll.
Was habe ich denn jetzt falsch gemacht?
define HKT readingsGroup <%sani_heating>,<Soll>,<Soll neu>,<Ist>,<Ventil / RH>,<Modus>,<Lock>,<Bat> \
HM6TH01_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH01,batteryLevel@HM6TH01 \
HM6TH02_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH02,batteryLevel@HM6TH02 \
HM6TH03_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH03,batteryLevel@HM6TH03 \
HM6TH04_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH04,batteryLevel@HM6TH04 \
HM6TH05_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH05,batteryLevel@HM6TH05 \
HM6TH06_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH06,batteryLevel@HM6TH06 \
HM6TH07_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH07,batteryLevel@HM6TH07 \
HM6TH08_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH08,batteryLevel@HM6TH08 \
HM6TH09_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH09,batteryLevel@HM6TH09 \
HM6TH10_4:desired-temp,<sollsetz>,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM6TH10,batteryLevel@HM6TH10
attr HKT room EG.Global
attr HKT alias EG Heizkörper - Thermostate
attr HKT cellStyle { "r:1"=>'style="font-weight:bold;;font-size:16px"',"r:2,c:0"=>'style="font-weight:bold"',"r:6,c:0" =>'style="font-weight:bold"',"r:9,c:0"=>'style="font-weight:bold"',"r:12,c:0"=>'style="font-weight:bold"'}
attr HKT commands {'HKT.sollsetz'=>'desired-temp:5.0,12.0,18.0,19.0,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0',"controlMode.manual"=>"set %DEVICE controlMode auto","controlMode.auto"=>"set %DEVICE controlMode manual","R-globalBtnLock.on"=>"set %DEVICE regSet globalBtnLock off","R-globalBtnLock.off"=>"set %DEVICE regSet globalBtnLock on"}
attr HKT mapping {HM6TH01_4=>"EG.WZ",HM6TH02_4=>"EG.EZ",HM6TH03_4=>"EG.KÜ",HM6TH04_4=>"EG.BÜ",HM6TH05_4=>"EG.GT",HM6TH06_4=>"EG.HF",HM6TH07_4=>"EG.C1",HM6TH08_4=>"EG.C2",HM6TH09_4=>"EB.BZ",HM6TH10_4=>"EB.SZ",'desired-temp' => }
attr HKT valueFormat {if($READING eq "ValvePosition" && $VALUE ne "0"){$VALUE = int($VALUE/10)*10}elsif($READING eq "batteryLevel"){if($VALUE>=3){$VALUE=100}elsif($VALUE>=2.7){$VALUE=75}elsif($VALUE>=2.5){$VALUE=50}elsif($VALUE>=2.2){$VALUE=25}else{$VALUE=0}}}
attr HKT valueIcon {'controlMode.manual'=>'sani_heating_manual@795CFF', 'controlMode.auto'=>'sani_heating_automatic@FFC13A', 'controlMode.boost'=>'sani_heating_boost@FB0C02', 'humidity'=>'humidity@6FD9FB', 'R-globalBtnLock.on'=>'secur_locked@F7301D', 'R-globalBtnLock.off'=>'secur_open@0CFB0C', 'ValvePosition.0'=>'sani_heating_level_0@002AE0', 'ValvePosition.10'=>'sani_heating_level_10@F8D53D', 'ValvePosition.20'=>'sani_heating_level_20@FF9341', 'ValvePosition.30'=>'sani_heating_level_30@F17F3F', 'ValvePosition.40'=>'sani_heating_level_40@E46C3C', 'ValvePosition.50'=>'sani_heating_level_50@DE3B3A', 'ValvePosition.60'=>'sani_heating_level_60@A30D2D', 'ValvePosition.70'=>'sani_heating_level_70@B40A23', 'ValvePosition.80'=>'sani_heating_level_80@C40619', 'ValvePosition.90'=>'sani_heating_level_90@D4030F', 'ValvePosition.100'=>'sani_heating_level_100@E50005', 'batteryLevel.100'=>'measure_battery_100@0CFB0C', 'batteryLevel.75'=>'measure_battery_75@42BC0A', 'batteryLevel.50'=>'measure_battery_50@F5FF10', 'batteryLevel.25'=>'measure_battery_25@FB5909', 'batteryLevel.0'=>'measure_battery_0@E50005', 'controlMode.set_boost'=>'hourglass', 'controlMode.set_auto'=>'hourglass', 'controlMode.set_manual'=>'hourglass', 'R-globalBtnLock.set_on'=>'hourglass', 'R-globalBtnLock.set_off'=>'hourglass'}
attr HKT valueStyle {if($READING eq "measured-temp"){my $t=$VALUE;;my $d=ReadingsVal($DEVICE,'desired-temp',0);;if($t-$d>=1){'style="color:rgb(251,63,11);;"'}elsif($t-$d<=-1){'style="color:rgb(79,58,251);;"'}else{'style="color:rgb(12,251,12);;"'}}}
attr HKT valueSuffix {"desired-temp"=>" °C", "measured-temp"=>" °C","ValvePosition"=>" (".ReadingsVal($DEVICE,$READING,0)." %)","humidity"=>" ".ReadingsVal($DEVICE,$READING,0)." % RH","batteryLevel"=>" (".ReadingsVal($DEVICE,$READING,0)." V)"}
Hallo,
diese ReadingGroup liest aus dem Channel 4 und aus dem Device.
Im Device setze das expert Attribute auf 1_allReg
Nebenbei, ich verwende R-btnLock und nicht R-globalBtnLock, so kann man lokal (am Gerät) entsperren und ändern und muss es nicht über FHEM machen. (das ist aber Geschmackssache)
LG
Ulf
... hey ... SUPER! Vielen Dank! Da wäre ich nie drauf gekommen ::) Klappt nun vorzüglich ;D
Zitat von: sumsum am 21 Oktober 2016, 13:19:01Nebenbei, ich verwende R-btnLock und nicht R-globalBtnLock, so kann man lokal (am Gerät) entsperren und ändern und muss es nicht über FHEM machen. (das ist aber Geschmackssache)
Vielen Dank auch für den Hinweis. Der Unterschied war mir nämlich nicht klar. Aber ich habe wohl instinktiv doch die korrekte Wahl getroffen; du kennst den Erfindungsreichtum meiner Tochter nicht ;)
Hallo sumsum,
danke für den Tipp:
ZitatIm Device setze das expert Attribute auf 1_allReg
Hatte bei meinem zweiten Thermostat genau das gleiche Problem.
Grüße,
Nik