From 40452517337753665e3f47c6031e69ed0d57a76d Mon Sep 17 00:00:00 2001
From: martinp876 <>
Date: Tue, 16 Apr 2019 18:05:37 +0000
Subject: [PATCH] CUL_HM:capitalize model information - some were missing
git-svn-id: https://svn.fhem.de/fhem/trunk@19199 2b470e98-0d58-463d-a4d8-8e2adae1ed80
---
fhem/FHEM/10_CUL_HM.pm | 82 +++++++++++++++++++++---------------------
1 file changed, 41 insertions(+), 41 deletions(-)
diff --git a/fhem/FHEM/10_CUL_HM.pm b/fhem/FHEM/10_CUL_HM.pm
index 373077140..bdf93ebcb 100755
--- a/fhem/FHEM/10_CUL_HM.pm
+++ b/fhem/FHEM/10_CUL_HM.pm
@@ -329,14 +329,14 @@ sub CUL_HM_updateConfig($){##########################
elsif ($md =~ m/^(HM-CC-VD|ROTO_ZEL-STG-RM-FSA)/){
$hash->{helper}{oldDes} = "0";
}
- elsif ($md =~ m/^(HM-Dis-WM55)/){
+ elsif ($md =~ m/^(HM-DIS-WM55)/){
foreach my $t ("s","l"){
if(!defined $hash->{helper}{dispi}{$t}{"l1"}{d}){# setup if one is missing
$hash->{helper}{dispi}{$t}{"l$_"}{d}=1 foreach (1,2,3,4,5,6);
}
}
}
- elsif ($md =~ m/^(HM-Dis-EP-WM55)/){
+ elsif ($md =~ m/^(HM-DIS-EP-WM55)/){
CUL_HM_UpdtReadSingle($hash,"state","-",0) if(InternalVal($name,"chanNo",0)>3);
}
elsif ($md =~ m/^(CCU-FHEM)/){
@@ -1125,12 +1125,12 @@ sub CUL_HM_setupHMLAN(@){#################################
my %lvlStr = ( md =>{ "HM-SEC-WDS" =>{"00"=>"dry" ,"64"=>"damp" ,"C8"=>"wet" }
,"HM-SEC-WDS-2" =>{"00"=>"dry" ,"64"=>"damp" ,"C8"=>"wet" }
,"HM-CC-SCD" =>{"00"=>"normal" ,"64"=>"added" ,"C8"=>"addedStrong"}
- ,"HM-Sen-RD-O" =>{"00"=>"dry" ,"C8"=>"rain"}
- ,"HM-MOD-Em-8" =>{"00"=>"closed" ,"C8"=>"open"}
+ ,"HM-SEN-RD-O" =>{"00"=>"dry" ,"C8"=>"rain"}
+ ,"HM-MOD-EM-8" =>{"00"=>"closed" ,"C8"=>"open"}
,"HM-WDS100-C6-O" =>{"00"=>"quiet" ,"C8"=>"storm"}
}
- ,mdCh=>{ "HM-Sen-RD-O01" =>{"00"=>"dry" ,"C8"=>"rain"}
- ,"HM-Sen-RD-O02" =>{"00"=>"off" ,"C8"=>"on"}
+ ,mdCh=>{ "HM-SEN-RD-O01" =>{"00"=>"dry" ,"C8"=>"rain"}
+ ,"HM-SEN-RD-O02" =>{"00"=>"off" ,"C8"=>"on"}
}
,st =>{ "smokeDetector" =>{"01"=>"no alarm","C7"=>"tone off","C8"=>"Smoke Alarm"}
,"threeStateSensor"=>{"00"=>"closed" ,"64"=>"tilted" ,"C8"=>"open"}
@@ -1962,7 +1962,7 @@ sub CUL_HM_Parse($$) {#########################################################
elsif ($lvlStr{st}{$mh{st}}){$lvl = $lvlStr{st}{$mh{st}}{$lvl} }
else {$lvl = hex($lvl)/2}
- push @evtEt,[$mh{shash},1,"level:$lvl"] if($mh{md} eq "HM-Sen-Wa-Od");
+ push @evtEt,[$mh{shash},1,"level:$lvl"] if($mh{md} eq "HM-SEN-WA-OD");
push @evtEt,[$mh{shash},1,"state:$lvl"];
push @evtEt,[$mh{devH} ,1,"battery:".($err&0x80?"low":"ok")] if ($err ne "");
}
@@ -2302,7 +2302,7 @@ sub CUL_HM_Parse($$) {#########################################################
}
}
- if ($mh{md} eq "HM-LC-Ja1PBU-FM" && defined $mI[6]){
+ if ($mh{md} eq "HM-LC-JA1PBU-FM" && defined $mI[6]){
my %dirName = ( 0=>"stop" ,1=>"up" ,2=>"down" ,3=>"err" );
push @evtEt,[$mh{cHash},1,"pctSlat:".hex($mI[5])/2];
push @evtEt,[$mh{cHash},1,"slatDir:".$dirName{hex($mI[6]) & 0x3}];
@@ -2313,7 +2313,7 @@ sub CUL_HM_Parse($$) {#########################################################
push @evtEt,[$mh{devH},1,"sabotageError:".(($err&0x04) ? "on":"off")];
push @evtEt,[$mh{devH},1,"battery:".(($err&0x08)?"critical":($err&0x80?"low":"ok"))];
}
- elsif ($mh{md} =~ m/^(HM-LC-SW.-BA-PCB|HM-Dis-TD-T)/){
+ elsif ($mh{md} =~ m/^(HM-LC-SW.-BA-PCB|HM-DIS-TD-T)/){
push @evtEt,[$mh{devH},1,"battery:" . (($err&0x80) ? "low" : "ok" )];
}
}
@@ -2337,7 +2337,7 @@ sub CUL_HM_Parse($$) {#########################################################
push @evtEt,[$mh{devH},1,"battery:$bat"];
push @evtEt,[$mh{devH},1,"state:$btnName $state"];
- if($mh{md} eq "HM-Dis-WM55"){
+ if($mh{md} eq "HM-DIS-WM55"){
if ($mh{devH}->{cmdStack}){# there are pending commands. we only send new ones
delete $mh{devH}->{cmdStack};
delete $mh{devH}->{cmdStacAESPend};
@@ -2361,7 +2361,7 @@ sub CUL_HM_Parse($$) {#########################################################
}
}
}
- if($mh{md} eq "HM-Dis-EP-WM55"){
+ if($mh{md} eq "HM-DIS-EP-WM55"){
my $disName = InternalVal($mh{devN},"channel_03",undef);
if (defined $disName ){
if (AttrVal($disName,"param","") =~ m/reWriteDisplay(..)/){
@@ -2598,7 +2598,7 @@ sub CUL_HM_Parse($$) {#########################################################
my $eo = ReadingsVal($mh{shash}->{NAME},"energyOffset",0);
if($eCnt == 0 && hex($mh{mNo}) < 3 && !$mh{shash}->{helper}{pon}){
if($mh{devH}->{helper}{PONtest}){
- push @evtEt,[$mh{devH},1,"powerOn:$mh{tmStr}",] if ($mh{md} !~ m/^HM-ES-PMSw1/);
+ push @evtEt,[$mh{devH},1,"powerOn:$mh{tmStr}",] if ($mh{md} !~ m/^HM-ES-PMSW1/);
$mh{devH}->{helper}{PONtest} = 0;
}
$eo += $el;
@@ -2711,7 +2711,7 @@ sub CUL_HM_Parse($$) {#########################################################
$mh{shash} = $modules{CUL_HM}{defptr}{$chId}
if($modules{CUL_HM}{defptr}{$chId});
push @evtEt,[$mh{shash},1,"brightness:".$bright];
- if ($mh{md} eq "HM-Sec-MDIR"){
+ if ($mh{md} eq "HM-SEC-MDIR"){
push @evtEt,[$mh{shash},1,"sabotageError:".(($err&0x0E)?"on":"off")];
}
else{
@@ -2825,7 +2825,7 @@ sub CUL_HM_Parse($$) {#########################################################
if($modules{CUL_HM}{defptr}{"$mh{src}$chn"});
push @evtEt,[$mh{devH},1,"alive:yes"];
push @evtEt,[$mh{devH},1,"battery:". (($err&0x80)?"low" :"ok" )];
- if ( $mh{md} =~ m/^(HM-SEC-SC.*|HM-SEC-RHS|Roto_ZEL-STG-RM-F.K)$/){
+ if ( $mh{md} =~ m/^(HM-SEC-SC.*|HM-SEC-RHS|ROTO_ZEL-STG-RM-F.K)$/){
push @evtEt,[$mh{devH},1,"sabotageError:".(($err&0x0E)?"on" :"off")];}
elsif($mh{md} ne "HM-SEC-WDS"){push @evtEt,[$mh{devH},1,"cover:" .(($err&0x0E)?"open" :"closed")];}
}
@@ -2997,7 +2997,7 @@ sub CUL_HM_Parse($$) {#########################################################
&& !$mh{AckDone} #noansi: allready done device specific
&& ($mh{mFlgH} & 0x20)){ #response required Flag
# fhem CUL shall ack a button press
- if ($mh{md} =~ m/^(HM-SEC-SC.*|Roto_ZEL-STG-RM-FFK)$/){# SCs - depending on FW version - do not accept ACK only. Especially if peered
+ if ($mh{md} =~ m/^(HM-SEC-SC.*|ROTO_ZEL-STG-RM-FFK)$/){# SCs - depending on FW version - do not accept ACK only. Especially if peered
push @ack,$mh{shash},$mh{mNo}."8002".$mh{dst}.$mh{src}."0101".((hex($mI[0])&1)?"C8":"00")."00";
}
else{
@@ -3344,7 +3344,7 @@ sub CUL_HM_parseCommon(@){#####################################################
$chnhash = $mhp->{devH} if (!$chnhash);
my $chnName = $chnhash->{NAME};
my @peers;
- if($mhp->{md} eq "HM-Dis-WM55"){
+ if($mhp->{md} eq "HM-DIS-WM55"){
#how ugly - this device adds one byte at begin - remove it.
(undef,@peers) = unpack 'A4(A8)*',$mhp->{p};
}
@@ -8408,7 +8408,7 @@ sub CUL_HM_updtRegDisp($$$) {
my $regLN = ($hash->{helper}{expert}{raw}?"":".")
.sprintf("RegL_%02X.",$listNo)
.($peerId ? CUL_HM_peerChName($peerId,$devId) : "");
- if (($md eq "HM-MOD-Re-8") && $listNo == 0){#handle Fw bug
+ if (($md eq "HM-MOD-RE-8") && $listNo == 0){#handle Fw bug
CUL_HM_ModRe8($hash,$regLN);
}
foreach my $rgN (@regArr){
@@ -10881,7 +10881,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
alarmOff - switch off the alarm
- 4Dis (HM-PB-4DIS-WM|HM-RC-Dis-H-x-EU|ROTO_ZEL-STG-RM-DWT-10)
+ 4Dis (HM-PB-4DIS-WM|HM-RC-DIS-H-X-EU|ROTO_ZEL-STG-RM-DWT-10)
- text <btn_no> [on|off] <text1> <text2>
Set the text on the display of the device. To this purpose issue
@@ -10972,7 +10972,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
set time in climate channel to system time
- Climate-Control (HM-CC-RT-DN|HM-CC-RT-DN-BoM)
+ Climate-Control (HM-CC-RT-DN|HM-CC-RT-DN-BOM)
- controlMode <auto|boost|day|night>
- controlManu <temp>
@@ -11094,7 +11094,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
- HM-Dis-WM55
+ HM-DIS-WM55
- displayWM help
displayWM [long|short] <text1> <color1> <icon1> ... <text6> <color6> <icon6>
@@ -11117,7 +11117,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
- HM-Dis-EP-WM55
+ HM-DIS-EP-WM55
- displayEP help
displayEP <text1,icon1:text2,icon2:text3,icon3> <sound> <repetition> <pause> <signal>
@@ -11185,7 +11185,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
- HM-Sys-sRP-Pl
+ HM-SYS-SRP-PL
setup the repeater's entries. Up to 36entries can be applied.
- setRepeat <entry> <sender> <receiver> <broadcast>
@@ -11521,7 +11521,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
available parameter for attribut "param"
- - HM-Sen-RD-O
+ - HM-SEN-RD-O
offAtPon heat channel only: force heating off after powerOn
onAtRain heat channel only: force heating on while status changes to 'rain' and off when it changes to 'dry'
@@ -11591,7 +11591,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
incomplete or incorrect.
trigLast <channel> #last receiced trigger
- HM-CC-RT-DN and HM-CC-RT-DN-BoM
+ HM-CC-RT-DN and HM-CC-RT-DN-BOM
state:T: $actTemp desired: $setTemp valve: $vp %
motorErr: [ok|ValveTight|adjustRangeTooLarge|adjustRangeTooSmall|communicationERR|unknown|lowBat|ValveErrorPosition]
measured-temp $actTemp
@@ -11641,7 +11641,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
HM-OU-CFM-PL
[on|off|$val]
- HM-Sen-Wa-Od
+ HM-SEN-WA-OD
$level%
level $level%
@@ -11665,7 +11665,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
brightness $b
unknown $p
- HM-Sen-RD-O
+ HM-SEN-RD-O
lastRain: timestamp # no trigger generated. Begin of previous Rain -
timestamp of the reading is the end of rain.
@@ -11686,8 +11686,8 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
alive
motion on (to $dest)
motionCount $cnt _next:$nextTr"-"[0x0|0x1|0x2|0x3|15|30|60|120|240|0x9|0xa|0xb|0xc|0xd|0xe|0xf]
- cover [closed|open] # not for HM-Sec-MDIR
- sabotageError [on|off] # only HM-Sec-MDIR
+ cover [closed|open] # not for HM-SEC-MDIR
+ sabotageError [on|off] # only HM-SEC-MDIR
battery [low|ok]
devState_raw.$d1 $d2
@@ -11741,7 +11741,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
threeStateSensor
[open|tilted|closed]
[wet|damp|dry] #HM-SEC-WDS only
- cover [open|closed] #HM-SEC-WDS and HM-Sec-RHS
+ cover [open|closed] #HM-SEC-WDS and HM-SEC-RHS
alive yes
battery [low|ok]
contact [open|tilted|closed]
@@ -11872,7 +11872,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
Beobachter kennt somit den Status jedes Geräts.
Die eingebaute Firmware ist fehlerhaft: Ein "toggle" Befehl wir ausgeführt bevor die
entsprechende Antwort auf die Signaturanforderung empfangen wurde, zumindest bei einigen Schaltern
- (HM-LC-Sw1-Pl und HM-LC-SW2-PB-FM).
+ (HM-LC-SW1-PL und HM-LC-SW2-PB-FM).
Der HMLAN Konfigurator beantwortet Signaturanforderungen selbstständig,
ist dabei die 3-Byte-Adresse einer anderen CCU eingestellt welche noch immer das Standardpasswort hat,
kann dieser Signaturanfragen korrekt beantworten.
@@ -12313,7 +12313,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
alarmOff - schaltet den Alarm aus
- 4Dis (HM-PB-4DIS-WM|HM-PB-4DIS-WM|HM-RC-Dis-H-x-EU|ROTO_ZEL-STG-RM-DWT-10)
+ 4Dis (HM-PB-4DIS-WM|HM-PB-4DIS-WM|HM-RC-DIS-H-X-EU|ROTO_ZEL-STG-RM-DWT-10)
- text <btn_no> [on|off] <text1> <text2>
Zeigt Text auf dem Display eines Geräts an. Für diesen Zweck muss zuerst ein set-Befehl
@@ -12523,7 +12523,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
- HM-Dis-WM55
+ HM-DIS-WM55
- displayWM help
displayWM [long|short] <text1> <color1> <icon1> ... <text6> <color6> <icon6>
@@ -12547,7 +12547,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
- HM-Dis-EP-WM55
+ HM-DIS-EP-WM55
- displayEP help
displayEP <text1,icon1:text2,icon2:text3,icon3> <sound> <repetition> <pause> <signal>
@@ -12614,7 +12614,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
- HM-Sys-sRP-Pl
+ HM-SYS-SRP-PL
legt Einträge für den Repeater an. Bis zu 36 Einträge können angelegt werden.
- setRepeat <entry> <sender> <receiver> <broadcast>
@@ -12940,7 +12940,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
verfügbare Parameter für "param"
- - HM-Sen-RD-O
+ - HM-SEN-RD-O
offAtPon: nur Heizkanäle: erzwingt Ausschalten der Heizung nach einem powerOn
onAtRain: nur Heizkanäle: erzwingt Einschalten der Heizung bei Status 'rain' und Ausschalten bei Status 'dry'
@@ -13009,7 +13009,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
unvollständig oder fehlerhaft sein.
trigLast <channel> #letzter empfangener Trigger
- HM-CC-RT-DN and HM-CC-RT-DN-BoM
+ HM-CC-RT-DN and HM-CC-RT-DN-BOM
state:T: $actTemp desired: $setTemp valve: $vp %
motorErr: [ok|ValveTight|adjustRangeTooLarge|adjustRangeTooSmall|communicationERR|unknown|lowBat|ValveErrorPosition]
measured-temp $actTemp
@@ -13059,7 +13059,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
HM-OU-CFM-PL
[on|off|$val]
- HM-Sen-Wa-Od
+ HM-SEN-WA-OD
$level%
level $level%
@@ -13083,7 +13083,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
brightness $b
unknown $p
- HM-Sen-RD-O
+ HM-SEN-RD-O
lastRain: timestamp # kein Trigger wird erzeugt. Anfang des vorherigen Regen-Zeitstempels
des Messwerts ist Ende des Regens.
@@ -13104,8 +13104,8 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
alive
motion on (to $dest)
motionCount $cnt _next:$nextTr"-"[0x0|0x1|0x2|0x3|15|30|60|120|240|0x9|0xa|0xb|0xc|0xd|0xe|0xf]
- cover [closed|open] # nicht bei HM-Sec-MDIR
- sabotageError [on|off] # nur bei HM-Sec-MDIR
+ cover [closed|open] # nicht bei HM-SEC-MDIR
+ sabotageError [on|off] # nur bei HM-SEC-MDIR
battery [low|ok]
devState_raw.$d1 $d2
@@ -13159,7 +13159,7 @@ sub CUL_HM_tempListTmpl(@) { ##################################################
threeStateSensor
[open|tilted|closed]
[wet|damp|dry] #nur HM-SEC-WDS
- cover [open|closed] #HM-SEC-WDS und HM-Sec-RHS
+ cover [open|closed] #HM-SEC-WDS und HM-SEC-RHS
alive yes
battery [low|ok]
contact [open|tilted|closed]