Hallo,
ich habe die Readings Group aus
http://www.fhemwiki.de/wiki/ReadingsGroup#Heizungsteuerung_f.C3.BCr_HM_Wand-_und_Heizk.C3.B6rperthermostate
etwas angepasst.
##############################################
# Readings Group für Homematic-Thermostate #
##############################################
define Funkthermostate readingsGroup <%hc_wht_regler>,<Soll>,<Ist>,<Ventil>,<Modus>,<Lock>,<Batterie> \ HM_3XXX3_Clima:desired-temp,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM_3XXX3,batteryLevel@HM_3XXX3 \ <>,<>,<>,<>,<>,<>,<>,<> \ HM_3XXX3_Clima:desired-temp,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM_3XXX3,batteryLevel@HM_3XXX3 \ <>,<>,<>,<>,<>,<>,<>,<> \ HM_3XXX3_Clima:desired-temp,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM_3XXX3,batteryLevel@HM_3XXX3 \ <>,<>,<>,<>,<>,<>,<>,<> \ HM_3XXX3_Clima:desired-temp,measured-temp,ValvePosition,controlMode,R-globalBtnLock@HM_3XXX3,batteryLevel@HM_3XXX3
attr Funkthermostate commands {"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 Funkthermostate room Temperatur
attr Funkthermostate 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 Funkthermostate valueIcon {'controlMode.manual' => 'sani_heating_manual@795CFF','controlMode.auto' =>'sani_heating_automatic@FFC13A', 'controlMode.boost' => 'sani_heating_boost@FB0C02','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 Funkthermostate 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 Funkthermostate valueSuffix {"desired-temp"=>" °C", "measured-temp"=>" °C", "ValvePosition"=>" %", "batteryLevel"=>" Volt"}
Das ganze geht soweit, was nicht geht, ist dass ein Icon fehlt und zwar das
was die Temoeratur im Raum im Relation zur Solltemp angibt (zu kalt: blau, zu warm: rot, ok: grün).
Was ist in meinem Code falsch ?
Gruss
Ralf
hat sich erledigt - es läuft nun