diff --git a/fhem/FHEM/10_CUL_HM.pm b/fhem/FHEM/10_CUL_HM.pm index 321f5ef35..a9d09d865 100755 --- a/fhem/FHEM/10_CUL_HM.pm +++ b/fhem/FHEM/10_CUL_HM.pm @@ -369,7 +369,7 @@ sub CUL_HM_updateConfig($){ # --- set default attributes if missing --- if ($hash->{helper}{role}{dev}){ if( $st ne "virtual"){ - $attr{$name}{expert} = AttrVal($name,"expert" ,"2_full"); + $attr{$name}{expert} = AttrVal($name,"expert" ,"2_raw"); $attr{$name}{autoReadReg}= AttrVal($name,"autoReadReg","4_reqStatus"); CUL_HM_hmInitMsg($hash); } @@ -1344,8 +1344,10 @@ sub CUL_HM_Parse($$) {######################################################### my $chn = $mI[1]; if( $mh{mTp} eq "70") { # weather event $chn = '01'; # fix definition - my ( $t, $h) = (hex($mI[0].$mI[1]), hex($mI[2]));# temp is 15 bit signed - $t = sprintf("%2.1f",($t & 0x3fff)/10*(($t & 0x4000)?-1:1)); + my ($t,$h) = (hex($mI[0].$mI[1]), hex($mI[2]));# temp is 15 bit signed + $t &= 0x7fff; + $t = -1 - ($t ^ 0x7FFF) if ($t & 0x4000); + $t /= 10; my $chnHash = $modules{CUL_HM}{defptr}{$mh{src}.$chn}; if ($chnHash){ push @evtEt,[$chnHash,1,"state:T: $t H: $h"]; @@ -9384,7 +9386,11 @@ sub CUL_HM_tempListTmpl(@) { ################################################## If expert is applied a device it is used for assotiated channels. It can be overruled if expert attibute is also applied to the channel device.
@@ -10660,6 +10666,11 @@ sub CUL_HM_tempListTmpl(@) { ################################################## 0_off: Standard. Zeigt die häufigst benutzten Paramter
1_on: Erweitert. Zeigt alle dekodierten Geräteparameter
2_full: Alles. Zeigt alle Parameter sowie Registerinformationen im Rohformat.
+ 2_raw: zeige roh Register.
+ 4_none:verstecke alle Register information.
+ 8_templ+default:zeige Templates und default Register.
+ 12_templOnly: Zeige nur templates (Empfohlen).
+ 251_anything: Zeige alle Register inforamtion.
Wird 'expert' auf ein Gerät angewendet so gilt dies auch für alle verknüpften Kanäle. Kann übergangen werden indem das Attribut ' expert' auch für den Gerätekanal gesetzt wird.
diff --git a/fhem/FHEM/HMConfig.pm b/fhem/FHEM/HMConfig.pm index 7a7d8f0a0..22247dac8 100644 --- a/fhem/FHEM/HMConfig.pm +++ b/fhem/FHEM/HMConfig.pm @@ -1997,7 +1997,7 @@ $culHmChanSets{"HM-CC-RD-O00"} = $culHmChanSets{"HM-LC-Bl1PBU-FM00"}; foreach (grep /^$md/,keys %culHmChanSets){ $culHmChanSets{$ds.substr($_,-2,2)} = $culHmChanSets{$_}; } - $culHmRegModel{$ds} = $culHmRegModel{$ds} if ($culHmRegModel{$ds}); + $culHmRegModel{$ds} = $culHmRegModel{$md} if ($culHmRegModel{$md}); foreach(grep /^$md/,keys %culHmRegChan){ $culHmRegChan{$ds.substr($_,-2,2)} = $culHmRegChan{$_}; }