FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: Loctotex am 15 Juli 2020, 20:26:00

Titel: HB-Dis-EP-42BW
Beitrag von: Loctotex am 15 Juli 2020, 20:26:00
Hallo,

hat jemand das HB-Dis-EP-42BW von https://github.com/jp112sdl/HB-Dis-EP-42BW bei sich implementiert?

Ich hab in der hmconfig_asksinppcustom.pm folgendes angelegt:

$HMConfig::culHmModel{"F343"} = {name=>"HB-DIS-EP-BW",st=>'display',cyc=>'',rxt=>'c,w,b,f',lst=>'1',chn=>"Dis:1:10"};
$HMConfig::culHmRegModel{"HB-DIS-EP-BW"} = {  };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW01"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmRegChan {"HB-DIS-EP-BW01"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW02"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW03"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW04"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW05"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW06"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW07"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW08"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW09"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW0A"} = { displayWM =>"[long|short|help] -lineX- -textNo1- -color1- -icon1- [-textNo2- -color2- -icon2-] ...[-textNo6- -color6- -icon6-] "
                                                ,peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };


Damit funktionieren schon mal die Tasten. "displayWM" und "text" funktioniert leider gar nicht. Vermutlich mus hier etwas neues her. Es gibt auch noch ein 11. Kanal.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 15 Juli 2020, 20:59:26
Willkommen im Club. S. auch hier:
https://forum.fhem.de/index.php/topic,109254.0.html (https://forum.fhem.de/index.php/topic,109254.0.html)
https://forum.fhem.de/index.php/topic,109968.0.html (https://forum.fhem.de/index.php/topic,109968.0.html)

Ich behelfe mir halt wie im 2.Thread zu sehen mit hmscript, aber das Abfangen der Verbindungsstörungen habe ich noch nicht vernüftig hingekriegt.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 15 Juli 2020, 23:54:15
Danke für die Antwort.
Das Script funktioniert aber nicht mit der vccu oder?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: zap am 16 Juli 2020, 07:58:48
Nein, das ist ein CCU Script.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 16 Juli 2020, 14:19:47
Ich komme der Sache näher: 

in der 10_CUL_HM.pl habe ich nach dem elsif($cmd eq "displayEP" ) Block das cmd displayEP42 hinzugefügt:
elsif($cmd eq "displayEP42" ) { ###############################################
    $state = "displayEP42";
    RemoveInternalTimer($name.":reWriteDisplay");# just in case param reWriteDisplay used
    my %disp_icons = (
       off    => '80', on => '81', open => '82', closed => '83'
      ,error  => '84', ok => '85', info => '86', newmsg => '87'
      ,svcmsg => '88'
      ,none   => '255'
    );   

    # msg: 'text,color,icon,color:text,color,icon,color'
    Log3 $name,3,"a: @a";
    my ($msg) = @a[2..$#a];
    Log3 $name,3,"Msg: $msg";
    # set defaults
    $msg   = ''    if (!defined ($msg));
 

    if($msg eq 'help'){ # display command info
      return      "command options:"
                 ."\n  line1,icon1:line2,icon2:line3,icon3 "
                 ."\n  line: 12 char text to be dispalyed. No change if empty."
                 ."\n  icon: icon per line: ".join(" ",keys(%disp_icons))
                 ."\n "
                 ."\n  check for param reWriteDisplayxx: "
                 ."\n  translate chars: "
                 ."\n    [ => Ä"     
                 ."\n    # => Ö"     
                 ."\n    $ => Ü"     
                 ."\n    { => ä"     
                 ."\n    | => ö"     
                 ."\n    } => ü"     
                 ."\n    _ => ß"     
                 ."\n    ] => &"     
                 ."\n    ' => ="     
                 ."\n    @ => ∨"     
                 ."\n    > => ∧"     
                 ."\n    ; => Sandwatch"
                 ;
    }
    my $snd = '02';
    # Lines are separated by semicolon, empty lines are supported
    my @disp_lines = (split (':', $msg."::::::::::"),"","");# at least 3 entries - loop will use first 3
    my $lineNr=1;
    $evtDly = 1;
    foreach my $line (@disp_lines[0..9]) {# only 3 lines
      # Split line into text and icon part separated by comma

      my ($text,$textColor, $icon, $iconColor); # add separator in case Icon is dismissed
      if (!defined $line || $line eq '') {
        $text =  ReadingsVal($name,"line${lineNr}_text","");
        $icon = ReadingsVal($name,"line${lineNr}_icon","off");
        $textColor =  ReadingsVal($name,"line${lineNr}_textColor","0");
        $iconColor =  ReadingsVal($name,"line${lineNr}_iconColor","0");
      }
      else{
        ($text,$textColor, $icon, $iconColor) = split (',', $line.","); # add separator in case Icon is dismissed
      }
       
      Log3 $name,3,"Line: $lineNr Text: $text color: $textColor Icon: $icon Color: $iconColor";
      $snd .= ($textColor eq "1")?'16':'12';
      # Hex code
      if ($text =~ /^0x[0-9A-F]{2}$/) {
        $snd .= substr($text,2,2);
      }
      # Predefined text code text0-9
      elsif ($text =~ /^text([0-9])$/) {
        $snd .= sprintf ("8%1X", $1);
      }
      # Convert string to hex codes
      else {
        $text =~ s/\\_/ /g;
        foreach my $ch (split ('', substr ($text, 0, 12))) {
          $snd .= sprintf ("%02X", ord ($ch));
        }
      }
   
      my $iconStart = '13';
      my $offset = '4';
      $iconStart = $iconStart + $offset if ($iconColor eq '1');
      $snd .= $iconStart.$disp_icons{$icon} if ($disp_icons{$icon});
      $snd .= '0A';
     
      CUL_HM_UpdtReadBulk($hash,0,"line${lineNr}_text:$text"
                                 ,"line${lineNr}_icon:$icon"
                                 ,"line${lineNr}_textColor:$textColor"
                                 ,"line${lineNr}_iconColor:$iconColor");
      $lineNr++;
    }       
    $snd .= '14'.'03'; 
   
    CUL_HM_pushEvnts();

    CUL_HM_PushCmdStack($hash,"++${flag}11$id${dst}80${chn}$_") foreach (unpack('(A28)*',$snd));
  }   


in der hmconfig_asksinppcustom.pm:

$HMConfig::culHmModel{"F343"} = {name=>"HB-DIS-EP-BW",st=>'display',cyc=>'',rxt=>'c,b',lst=>'1',chn=>"Dis:1:11"};
$HMConfig::culHmRegModel{"HB-DIS-EP-BW"} = {  intKeyVisib     =>1,transmDevTryMax =>1
                         ,powerSupply     =>1,localResDis     =>1,wakeupBehavior  =>1
                         ,wakeupBehavMsg  =>1,wakeupBehavMsg_R=>1,statMsgTxtAlign =>1
                         ,displayInvert   =>1};
$HMConfig::culHmChanSets{"HB-DIS-EP-BW01"} = { peerChan    =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]",
                                               text        =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW02"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW03"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW04"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW05"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW06"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW07"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW08"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW09"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW0A"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-BW0B"} = { displayEP42   =>"text1,color,icon1,color:text2,color,icon2,color:text3,color,icon3,color:text4,color,icon4,color ... "};


Damit lassen sich im 11. Kanal Texte und Icons für alle 10 Zeilen setzen. Farbe sollte auch gehen.

Beispiel:
displayEP42 aaa,0,on,0:bbb,1,on,1

Zeigt in der ersten Zeile aaa mit Icon alles in schwarz an.
In der Zweiten Zeile bbb mit Icon alles in Farbe an.

Ist noch nicht fertig, wer mag kann es aber schon mal testen. Das Help command ist noch nicht angepasst.

Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 16 Juli 2020, 19:30:46
Kleines Update:

elsif($cmd eq "displayEP42" ) { ###############################################
    $state = "displayEP42";
    RemoveInternalTimer($name.":reWriteDisplay");# just in case param reWriteDisplay used
    my %disp_icons = (
       off    => '80', on => '81', open => '82', closed => '83'
      ,error  => '84', ok => '85', info => '86', newmsg => '87'
      ,svcmsg => '88', icon10 => '89',icon11 => '8A',icon12 => '8B'
      ,icon13 => '8C',icon14 => '8D',icon15 => '8E',icon16 => '8F'
      ,icon17 => '90',icon18 => '91',icon19 => '92',icon20 => '93'
      ,icon21 => '94',icon22 => '95',icon23 => '96',icon24 => '97'
      ,icon25 => '98',icon26 => '99',icon27 => '9A',icon28 => '9B'
      ,none   => 'FF'
    );   

    # msg: 'text,color,icon,color:text,color,icon,color'
    Log3 $name,3,"a: @a";
    my ($msg) = @a[2..$#a];
    Log3 $name,3,"Msg: $msg";
    # set defaults
    $msg   = ''    if (!defined ($msg));
 

    if($msg eq 'help'){ # display command info
      return      "command options:"
                 ."\n  line1,line1Color,icon1,icon0Clolor:line2,line2Color,icon2,icon2Color:..."
                 ."\n  line: 16 char text to be dispalyed. No change if empty."
                 ."\n  color => '' = black, '1' = colored. "
                 ."\n  icon: icon per line: ".join(" ",keys(%disp_icons))
                 ."\n "
                 ."\n  check for param reWriteDisplayxx: "
                 ."\n  translate chars: "
                 ."\n    [ => Ä"     
                 ."\n    # => Ö"     
                 ."\n    $ => Ü"     
                 ."\n    { => ä"     
                 ."\n    | => ö"     
                 ."\n    } => ü"     
                 ."\n    _ => ß"     
                 ."\n    ] => &"     
                 ."\n    ' => ="     
                 ."\n    @ => ∨"     
                 ."\n    > => ∧"     
                 ."\n    ; => Sandwatch"
                 ;
    }
    my $snd = '02';
    # Lines are separated by semicolon, empty lines are supported
    my @disp_lines = (split (':', $msg."::::::::::"),"","");# at least 3 entries - loop will use first 3
    my $lineNr=1;
    $evtDly = 1;
    foreach my $line (@disp_lines[0..9]) {# only 3 lines
      # Split line into text and icon part separated by comma

      my ($text,$textColor, $icon, $iconColor); # add separator in case Icon is dismissed
      if (!defined $line || $line eq '') {
        $text =  ReadingsVal($name,"line${lineNr}_text","");
        $icon = ReadingsVal($name,"line${lineNr}_icon","off");
        $textColor =  ReadingsVal($name,"line${lineNr}_textColor","0");
        $iconColor =  ReadingsVal($name,"line${lineNr}_iconColor","0");
      }
      else{
        ($text,$textColor, $icon, $iconColor) = split (',', $line.","); # add separator in case Icon is dismissed
      }
       
      Log3 $name,3,"Line: $lineNr Text: $text color: $textColor Icon: $icon Color: $iconColor";
      $snd .= ($textColor eq "c")?'16':'12';
      # Hex code
      if ($text =~ /^0x[0-9A-F]{2}$/) {
        $snd .= substr($text,2,2);
      }
      # Predefined text code text0-9
      elsif ($text =~ /^text([0-9])$/) {
        $snd .= sprintf ("8%1X", $1);
      }
      # Convert string to hex codes
      else {
        $text =~ s/\\_/ /g;
        foreach my $ch (split ('', substr ($text, 0, 12))) {
          $snd .= sprintf ("%02X", ord ($ch));
        }
      }
   
      my $iconStart = '13';
      my $offset = '4';
      $iconStart = $iconStart + $offset if ($iconColor eq '1');
      $snd .= $iconStart.$disp_icons{$icon} if ($disp_icons{$icon});
      $snd .= '0A';
     
      CUL_HM_UpdtReadBulk($hash,0,"line${lineNr}_text:$text"
                                 ,"line${lineNr}_icon:$icon"
                                 ,"line${lineNr}_textColor:$textColor"
                                 ,"line${lineNr}_iconColor:$iconColor");
      $lineNr++;
    }       
    $snd .= '14'.'03'; 
   
    CUL_HM_pushEvnts();

    CUL_HM_PushCmdStack($hash,"++${flag}11$id${dst}80${chn}$_") foreach (unpack('(A28)*',$snd));
  }   


# HB-Dis-EP-42BW
$HMConfig::culHmRegDefine{"invertDisplayEP42"}          = {a=>6.0,   s=>0.1, l=>0,  min=>0,  max=>1,    c=>'',   p=>'n', f=>'',  u=>'',    d=>1,  t=>"invert Display"};
$HMConfig::culHmRegDefine{"displayRefreshWaitTimeEP42"} = {a=>7.0,   s=>1.0, l=>0,  min=>0,  max=>255,  c=>'',   p=>'n', f=>'',  u=>'',    d=>1,  t=>"displayRefreshWaitTimeEP im ms"};
$HMConfig::culHmRegDefine{"powerUpModeEP42"}            = {a=>52.2,  s=>0.1, l=>0,  min=>0,  max=>1,    c=>'',   p=>'n', f=>'',  u=>'',    d=>1,  t=>"powerUpMode"};
#$HMConfig::culHmRegDefine{"powerUpKeyEP42"}             = {a=>52.10,  s=>0.1, l=>0,  min=>0,  max=>1,    c=>'',   p=>'n', f=>'',  u=>'',    d=>0,  t=>"powerUpKey"};
$HMConfig::culHmRegDefine{"critBatLimitEP42"}            = {a=>53.0, s=>1, l=>0,  min=>0,  max=>255,    c=>'',   p=>'n', f=>'',  u=>'',    d=>1,  t=>"critBatLimit"};

$HMConfig::culHmRegDefine{"showLineEP42"}     = {a=>144.0, s=>0.1, l=>1,  min=>0,  max=>1,    c=>'',   p=>'n', f=>'',  u=>'',    d=>1,  t=>"show Line"};
$HMConfig::culHmRegDefine{"alignmentEP42"}     = {a=>145.0, s=>1  , l=>1,  min=>0,  max=>3,    c=>'lit',p=>'n', f=>'',  u=>'',    d=>1,  t=>"Alignment", lit => {AlignRight => 0, AlignCenterIconRight => 1, AlignCenterIconLeft => 3, AlignLeft => 2}};

$HMConfig::culHmRegType{custom_Display_42BW}{alignmentEP42} = 1;
$HMConfig::culHmRegType{custom_Display_42BW}{showLineEP42} = 1;

$HMConfig::culHmModel{"F343"} = {name=>"HB-DIS-EP-42BW",st=>'display',cyc=>'',rxt=>'c,b',lst=>'1',chn=>"Dis:1:11"};
$HMConfig::culHmRegModel{"HB-DIS-EP-42BW"} = { powerUpModeEP42 =>1, displayRefreshWaitTimeEP42 =>1, invertDisplayEP42 =>1,critBatLimitEP42 =>1 };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW01"} = { peerChan    =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]",
                                               text        =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW02"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW03"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW04"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW05"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW06"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW07"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW08"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW09"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW0A"} = { peerChan  =>"-btnNumber- -actChn- ... single [set|unset] [actor|remote|both]"
                        ,text      =>"-txt1- -txt2-..." };
$HMConfig::culHmChanSets{"HB-DIS-EP-42BW0B"} = { displayEP42   =>"text1,icon1:text2,icon2:text3,icon3:text4,icon4:text5,icon5:text6,icon6:text7,icon7:text8,icon8,:text9,icon9:text1,icon10 ... "};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW01"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW02"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW03"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW04"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW05"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW06"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW07"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW08"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW09"} = $HMConfig::culHmRegType{custom_Display_42BW};
$HMConfig::culHmRegChan {"HB-DIS-EP-42BW0A"} = $HMConfig::culHmRegType{custom_Display_42BW};


Damit sollten nun auch alle Register setzbar sein.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 16 Juli 2020, 20:37:15
Hallelujah  ;D

Ich hatte die Hoffnung schon aufgegeben.

Ich kann mir das wahrscheinlich erst nächste Woche im Detail ansehen, aber schon mal eine Frage vorab: unterstützt die Funktion "displayEP42" alle Optionen, wie Tom Majors Helper Script (https://github.com/TomMajor/SmartHome/tree/master/HB-Dis-EP-42BW#script-helper)? Wäre es viel Aufwand für Dich, die Syntax anzugleichen oder so eine Art überladene Funktion mit Tom Majors Syntax, die dann Deine Funktion aufruft?

Wie auch immer, Danke schon mal vorab für Deine Arbeit!
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: papa am 16 Juli 2020, 20:38:47
Sehr cool.
Aber 10_CUL_HM.pl ändern ist natürlich blöd. Man bräuchte irgendwie die Möglichkeit neue Commands per Erweiterung anzumelden.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 16 Juli 2020, 20:41:11
Genau, das war auch mein nächster Gedanke :)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 16 Juli 2020, 21:40:32
Zitat von: papa am 16 Juli 2020, 20:38:47
Sehr cool.
Aber 10_CUL_HM.pl ändern ist natürlich blöd. Man bräuchte irgendwie die Möglichkeit neue Commands per Erweiterung anzumelden.

Neue Commands per Erweiterung wär eine tolle Sache. Die displayEP42 ist sehr an die displayEP angelehnt. Es werden 10 Zeilen gesendet. Für jede Zeile den Text und das Icon. Im StartKey ist noch die Info, ob farblich oder nicht. Ausrichtung, Fettschrift, Feste Texte und die Striche werden in den einzelnen Kanal Registern gesetzt. Das Script habe ich mir noch nicht genauer angesehen, aber da kann ich bestimmt was in der MyUtils machen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: martinp876 am 20 Juli 2020, 19:24:35
Für neue devices hatte ich schon interfaces vorgesehen. Ich werde diese überprüfen.... Es läuft zwar bei mir, habe es aber lange nicht angeschaut.
Ein interface für kommandos ist nicht enthalten, muss noch nachgsreicht werden....
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: martinp876 am 21 Juli 2020, 19:45:41
so, hier ein Prototyp.
Set Kommandos funktionieren schon - allerdings habe ich es nicht gesendet, nur simuliert.

Get habe ich noch nicht eingebaut.

Also CUL_HM einspielen und das zusätzliche HMConfig in FHEM kopieren  - los gehts

Titel: Antw:HB-Dis-EP-42BW
Beitrag von: martinp876 am 21 Juli 2020, 19:51:59
ups... noch mal
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 21 Juli 2020, 21:08:20
Danke, das ging schnell. Komme leider erst morgen zum Testen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 22 Juli 2020, 21:49:57
[code
2020.07.22 21:37:56 1: PERL WARNING: Useless use of a constant ("HB-DIS-EP-42BW01") in void context at ./FHEM/HMConfig_HBdis.pm line 50, <$fh> line 194.
2020.07.22 21:37:56 1: PERL WARNING: Useless use of a constant ("display42") in void context at ./FHEM/HMConfig_HBdis.pm line 55, <$fh> line 194.
2020.07.22 21:37:56 1: PERL WARNING: Useless use of a constant ("HB-DIS-EP-42BW") in void context at ./FHEM/HMConfig_HBdis.pm line 58, <$fh> line 194.
2020.07.22 21:37:56 1: Error loading file: ./FHEM/HMConfig_HBdis.pm:
Illegal declaration of subroutine main::CUL_HM_Set at ./FHEM/HMConfig_HBdis.pm line 61, <$fh> line 194.




sub CUL_HM_Set displayEP42(@) müsste sub CUL_HM_SetdisplayEP42(@) heißen, damit läuft es dann.

Nur das hier versteh ich noch nicht so ganz:
$HMConfig::culHmChanGets = (
                      "HB-DIS-EP-42BW01"      =>{ "disp42Channel01" =>"[on|off|6.0..30.0]"
                                               }
                 );
$HMConfig::culHmSubTypeGets      = (# channels of this subtype
                      display42        =>{ "disp42_1" =>"-ontime-"
                                          ,"disp42_2"      =>""
                                         }
                         );
$HMConfig::culHmModelGets = (# channels of this subtype-------------
                      "HB-DIS-EP-42BW"         =>{ disp42ModelCmd       =>"[off|0.0..99.0]"}
                      );
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: martinp876 am 25 Juli 2020, 11:07:13
Korrekt - das Leerzeichen ist nicht möglich... habe ich wohl vor Verschicken ausversehen eingebracht :)

Das 2. war auch falsch - bitte durch:
$HMConfig::culHmChanGets {"HB-DIS-EP-42BW01"} ={ "disp42Channel01" =>"[on|off|6.0..30.0]"
                                               };
$HMConfig::culHmSubTypeGets{display42}        ={ "disp42_1"        =>"-ontime-"
                                                ,"disp42_2"        =>""
                                               };
$HMConfig::culHmModelGets{"HB-DIS-EP-42BW"}   ={ "disp42ModelCmd"  =>"[off|0.0..99.0]"
                                               };

ersetzen.

Faktich kannst du neue Tyen oder Models erzeugen und diesen Kommandos zu weisen.
Besser man hält es einfach und  definiert nur Model und Model-Channel Kommandos (set/get)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 27 Juli 2020, 19:28:56
@martin, so richtig will das bei mir nicht. Die CUL_HM_SetdisplayEP42 wird durchlaufen wenn ich set HM_F34300_Dis_11 displayEP42 test:test:test aufrufe. Es wird aber nichts gesendet.

ist das   push @cmds,"11xADDRESSx80${chn}$_" foreach (unpack('(A28)*',$snd)); richtig?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 28 Juli 2020, 19:46:41
Ich hab mir mal ein paar Logausgaben gebaut.
@Martin rufe ich meine alte Funktion mit "displayEP42 a:" in der 10_CUL_HM auf liegt folgendes auf dem cmdStack:

2020.07.28 19:35:19 1: CUL_HM_PushCmdStack cmd:  ++A011121212F34300800B0212610A122D13800A122D13800A
2020.07.28 19:35:19 1: CUL_HM_PushCmdStack cmd:  ++A011121212F34300800B122D13800A122D13800A122D1380
2020.07.28 19:35:19 1: CUL_HM_PushCmdStack cmd:  ++A011121212F34300800B0A122D13800A122D13800A122D13
2020.07.28 19:35:19 1: CUL_HM_PushCmdStack cmd:  ++A011121212F34300800B800A122D13800A03


rufe ich die Neue in der HBConfig_HBdis auf, liegt das hier auf dem cmdStack:

2020.07.28 19:35:14 1: CUL_HM_PushCmdStack cmd:  ++A011121212F3430080F343000212610A122D13800A122D13800A
2020.07.28 19:35:14 1: CUL_HM_PushCmdStack cmd:  ++A011121212F3430080F34300122D13800A122D13800A122D1380
2020.07.28 19:35:14 1: CUL_HM_PushCmdStack cmd:  ++A011121212F3430080F343000A122D13800A122D13800A122D13
2020.07.28 19:35:14 1: CUL_HM_PushCmdStack cmd:  ++A011121212F3430080F34300800A122D13800A03


Das kann nix großes mehr sein. Werd morgen nochmal schauen. Mir fehlt grad etwas Zeit.

Da ist doch der Kanal falsch  :o

HBConfig_HBdis:
my $chn = unpack 'A6A2',$hash->{DEF}.'01';; 
Der ist hier schon falsch.

Edit:
my $chn = (unpack 'A6A2',$hash->{DEF}.'01')[1];

so müsste es passen.

Edit2:

Ja so gehts.
beim reload HBConfig_HBdis.pm bekomme ich:
Undefined subroutine &main::HMConfig_HBdis_Initialize called at fhem.pl line 2652.

Muss ich Initialize zwangsweise implementieren?

die HBConfig_HBdis lade ich die Tage hoch. Muss noch ein wenig aufräumen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 01 August 2020, 16:20:30
Mit der angehängten HBConfig_HBdis und dem aktuellen Stand aus dem SVN sollte es laufen.
Ich werd demnächst noch ein paar Optimierungen machen um nicht so viel Daten senden zu müssen.

Das ganze funktioniert so:
displayEP42 Zeile1,0,on,0:Zeile,1,on,1
In der ersten Zeile wird 'Zeile1' mit Icon alles in schwarz angezeit.
In der zweiten Zeile wird 'Zeile2' mit Icon alles in Farbe angezeigt.

man kann die Icons und Farben auch weglassen. Dann wird kein Icon und der Text in schwarz angezeigt.

Es lässt sich auch der Text mit HexCode vermischen:
displayEP42 Temp\0x3A:15\0x2C5\_°C:
In der ersten Zeile wird 'Temp:' angezeigt. \0x3A ist der Doppelpunkt. Der Hexcode muss mit \ escaped werden. Alternativ kann man den Doppelpunkt auch mit \: eingeben.
In der zweiten Zeile wird '15,5 °C' angezeigt. \_ ist das Leerzeichen, \0x2C das Komma.



Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 05 Oktober 2020, 22:59:59
Hi Loctotex,

ich würde mal gerne wieder einen Anlauf unternehmen, mein Display über CUL_HM direkt einzubinden.

Hast Du denn noch irgendwelche Änderungen vorgenommen? Würde Dein Modul mit der aktuellen FHEM-Version funktionieren?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 07 Oktober 2020, 16:58:50
Zitat von: Horti am 05 Oktober 2020, 22:59:59
Hi Loctotex,

ich würde mal gerne wieder einen Anlauf unternehmen, mein Display über CUL_HM direkt einzubinden.

Hast Du denn noch irgendwelche Änderungen vorgenommen? Würde Dein Modul mit der aktuellen FHEM-Version funktionieren?

Hi Horti,
die Version sollte so laufen. Ich habe bei mir nur noch eine Optimierung drin. Damit werden nur Änderungen übertragen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 07 Oktober 2020, 18:14:06
Hi,

Danke für die Info! Planst Du die auch noch irgendwann mal zur Verfügung zu stellen?

Sehe ich das richtig, dass Du nur komplette Texte überträgst und von den auf dem Display gespeicherten Texten keinen Gebrauch machst? Und Links-/Rechstsausrichtung auch nicht unterstützt? Werden denn die Tasterkanäle ausgewertet? Sorry für die vielen Fragen, will Deine Leisung nicht schmälern ;) Versuche nur abzuschätzen, ob ich damit auskomme.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 07 Oktober 2020, 18:17:55
Zitat von: Horti am 07 Oktober 2020, 18:14:06
Hi,

Danke für die Info! Planst Du die auch noch irgendwann mal zur Verfügung zu stellen?

Sehe ich das richtig, dass Du nur komplette Texte überträgst und von den auf dem Display gespeicherten Texten keinen Gebrauch machst? Und Links-/Rechstsausrichtung auch nicht unterstützt? Werden denn die Tasterkanäle ausgewertet? Sorry für die vielen Fragen, will Deine Leisung nicht schmälern ;) Versuche nur abzuschätzen, ob ich damit auskomme.

Kann ich demnächst gern noch hochladen. Es sollte alles funktionieren. Ausrichtung, Taster, gespeicherte Texte, Farbe usw...
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 07 Oktober 2020, 19:34:21
OK, super, ging ja aus Deiner Erklärung nicht hervor!

Dann warte ich gespannt auf die Aktualisierung.

Danke und Gruß
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 07 Oktober 2020, 19:51:31
Hier ist die neue Version  :)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 07 Oktober 2020, 23:08:10
Vielen Dank, ich habe nun mein Display zum Unmut der Mitbewohner von der CCU abgelernt und an FHEM angelernt. Mit ein bisschen Rumprobiererei, der Doku zu "displayWM", dieses Threads und Quellcode-Querlesen war ich in der Lage, das Display grundsätzlich zu befüllen.

Folgendes ist mir dabei aufgefallen:

Folgende Sachen konnte ich bis jetzt nicht umsetzen:

Für heute war es das erstmal mit dem Testen. Demnächst kann es dann weitergehen mit dem Umstellen der HMCCU-basierten DOIFs.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 08 Oktober 2020, 16:51:04
Zitat von: Horti am 07 Oktober 2020, 23:08:10
Vielen Dank, ich habe nun mein Display zum Unmut der Mitbewohner von der CCU abgelernt und an FHEM angelernt. Mit ein bisschen Rumprobiererei, der Doku zu "displayWM", dieses Threads und Quellcode-Querlesen war ich in der Lage, das Display grundsätzlich zu befüllen.

Folgendes ist mir dabei aufgefallen:

  • in der Zeile 37 gibt es "text1,icon10", sollte es hier nicht "text10,icon10" heissen? Ich bin noch nicht bist zur Zeile 10 auf meinem Display vorgedrungen, deswegen konnte ich noch keine Auswirkungen davon spüren
  • "displayEP42 help" bringt mein FHEM dermaßen aus dem Tritt, dass es ein paar Minuten nicht ansprechbar ist. Ich vermute mal, dass Zeile 89 hier ins Nichts führt?
  • Das Reading "R-alignmentEP42" zeigt beim gesetzten "AlignCenterIconRight" "undef lit:1" an, scheint aber zu funktionieren. Ist es nur ein Anzeigeproblem?

Folgende Sachen konnte ich bis jetzt nicht umsetzen:

  • Fixtexte: finde keinen Hinweis darauf in Deinem Quellcode (was ja bei mienen Perl-Kenntnissen nichts heißen muss), auch die Doku zu displayWM ist heir leider keine Hilfe
  • Das Helper-Script (https://github.com/TomMajor/SmartHome/tree/master/HB-Dis-EP-42BW#script-helper) von Tom Major erlaubt auch folgendes:Ist das auch irgendwie möglich?

Für heute war es das erstmal mit dem Testen. Demnächst kann es dann weitergehen mit dem Umstellen der HMCCU-basierten DOIFs.

Hey Danke fürs Testen. 
"text1,icon10" ist natürlich falsch, ist auch nur ein Text der angezeigt wird, habe es nochmal vereinfacht.
"displayEP42 help"  Da ist tatsächlich die helpText() verloren gegangen. Habe es jetzt doch da wieder eingebaut.

Den Fehler mit dem "alignmentEP42" habe ich auch. Es ist aber nur ein Anzeigeproblem, funktionieren tut es.
ich dachte es ist mit
$HMConfig::culHmRegDefine{"alignmentEP42"}              = {a=>145.0, s=>1  , l=>1,  min=>0,  max=>3,    c=>'lit',p=>'n', f=>'',  u=>'',    d=>1,  t=>"Alignment", lit => {AlignRight => 0, AlignCenterIconRight => 1, AlignCenterIconLeft => 3, AlignLeft => 2}};
erledigt. Hier werde ich aber nochmal schauen müssen.

Die Fixtexte können im jeweiligen Kanal mit "text" gesetzt werden und in  displayEP42  \0x80 für den Ersten \0x81 für den Zweiten usw benutzt werden.
@pxx usw sollte auch direkt so gehen.


Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 08 Oktober 2020, 19:24:20
Hi,

danke weiterhin für Deine Geduld :)

Zitat von: Loctotex am 08 Oktober 2020, 16:51:04
Die Fixtexte können im jeweiligen Kanal mit "text" gesetzt werden und in  alignmentEP42  \0x80 für den Ersten \0x81 für den Zweiten usw benutzt werden.
@pxx usw sollte auch direkt so gehen.

Wie man die Fixtexte setzen kann, habe ich schon rausbekommen, aber wie kann ich sie zur Anzeige nutzen? Bzw. kann ich sie mit Freitext kombinieren?

Kannst Du vielleicht auch einfach ein paar Beispiele von Dir ohne großartige Erklärungen posten?

@pxx wird dann direkt von der Firmware des Displays interpretiert?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Tom Major am 08 Oktober 2020, 19:51:31
Zitat von: Horti am 08 Oktober 2020, 19:24:20

@pxx wird dann direkt von der Firmware des Displays interpretiert?

ja, das hatte ich so in Jeromes Firmware eingebaut:
https://github.com/jp112sdl/HB-Dis-EP-42BW/commit/35f4322fc7a4599c639aece4ccfd7b163f13bb2b#diff-53a6a60d05e3a6912ad554caf5793b30 (https://github.com/jp112sdl/HB-Dis-EP-42BW/commit/35f4322fc7a4599c639aece4ccfd7b163f13bb2b#diff-53a6a60d05e3a6912ad554caf5793b30)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 08 Oktober 2020, 20:24:10
Oben muss es natürlich displayEP42 heißen.
\_ wird als Leerzeichen  \: wird als Doppelpunkt und \\ wird als Backslash interpretiert.

"das\_ist\_ein\_Test"  wird zu "das ist ein Test"

wenn du in Fixtext eins und zwei "ist" und "ein" schreibst ergibt
das\_\0x80\_\0x81\_Test auch "das ist ein Test"   Hier habe ich aber grad noch ein Bug gefunden. Hier wird die Länge falsch gezählt. Das werde ich am Wochenende Fixen. nach dem T wird der Text verworfen.

Du kannst auch alle Zeichen als Hex übergeben
\0x3A Ergibt z.b. einen Doppelpunkt.
möchtest du tatsächlich "\0x3A" auf das Display schreiben, musst du "\\0x3A" senden.


Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 08 Oktober 2020, 22:06:18
OK, ich konnte sowohl die Fixtexte als auch das Position-Feature nutzen, allerdings bekomme ich eine komische Ausgabe wenn ich 2 Fixtexte auf 2 Positionen in einer Zeile haben will:
set disp displayEP42 @p00\0x80@p50\0x81

set disp displayEP42 @p00\0x80
und
set disp displayEP42 @p50\0x81
für sich funktionieren

Ich habe noch nicht abschließend rausgefunden, ob ich irgendwas falsch mache, es grundsätzlich nicht geht oder ggf. Dein Bug zuschlägt.

Wenn Du oder Tom Major noch einen Tip hättet, wäre ich Euch dankbar, ansonsten versuche ich es noch mal, wenn der Bug behoben ist.

Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 08 Oktober 2020, 22:10:04
Das wird der Bug sein. Schaffe es aber leider nicht vor Samstag.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 10 Oktober 2020, 15:26:37
Ich denke ich habe den Bug mit den zu kurzen Texten gefixt. Horti, kannst du es hiermit nochmal testen?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 10 Oktober 2020, 22:41:45
Hi,

das, was ich darstellen wollte, kann ich mit dieser Version darstellen. Aber so ganz sauber arbeit sie dennoch nicht, jedenfalls wenn ich folgendes darstellen will:
@p00Test123456789@p50Test123456789

so wird die 1. Hälfte komplett und die 2. Hälfte gar nicht dargestellt. Ich wüsste nicht, was ich an dieser Stelle mir wünschen würde, was dargestellt werden soll, und ich weiß auch nicht, ob das in dem FHEM-Modul oder in der Display-SW zu lösen wäre. Aber falls Du einen Drang zur Perfektion verspüren solltest, kannst Du es Dir noch mal anschauen. ;)

Ich werde mal bei Gelegenheit meine DOIFs portieren, dann melde ich mich ggf. noch mal, falls mir was auffallen sollte.

BTW: Du willst Dir nicht zufällig die 7,5-Zoll-Variante (https://github.com/jp112sdl/HB-Dis-EP-75BW) zulegen? Sie könnte auch noch Unterstützung in FHEM vertragen ;)

Wie auch immer, vielen Dank für Deine Hilfe!
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 10 Oktober 2020, 22:59:11
Hi,

soweit ich weiß darf @pxx oder @fxx nur einmal pro Zeile vorkommen. Ich übertrage pro Zeile 16 Zeichen. Beginnt die Zeile mit @p oder @f dann 20 Zeichen. 16 + 4 für "@pxx"
Ich vermute du wolltest auch 2 Zeilen beschreiben. Dann müsste es so sein:
@p00Test123456789:@p50Test123456789

Die Hardware beim 7,5 Zoll ist ja fast identisch. Wenn ich Zeit finde kann ich es mir mal ohne Display anschauen. Hättest du eins zum Testen da?

Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Horti am 11 Oktober 2020, 13:00:58
Hi,

so habe ich das mit @pxx bis jetzt nicht interpretiert. Es soll ja als Spaltenmodus benutzt werden, und macht dann nur Sinn bei mehr als 1x pro Zeile. Es funktioniert ja jetzt auch mit Deinem Script, wenn man darauf achtet, dass die Texte ausreichend kurz sind. Ich habe das allerdings bis jetzt nur mit 2x Spalten ausprobiert, da ich mehr nicht benötige.

Vielleicht kann ja Tom Major mehr dazu sagen, wenn er sich noch mal hierher verirrt :)

Den 7,5-Zoller habe ich schon hier, nur noch nicht zusammengebaut. Es gibt ja mittlerweile Platinen mit eingebauten ePaper-Treiber im Homematic-Forum, und da ich die Taster eh nicht brauche, wird es wahrscheinlich am Ende eine von denen werden:
https://homematic-forum.de/forum/viewtopic.php?f=76&t=60213&sid=baa40af8a9cee9945c52ed0b09d81c2b (https://homematic-forum.de/forum/viewtopic.php?f=76&t=60213&sid=baa40af8a9cee9945c52ed0b09d81c2b)
https://homematic-forum.de/forum/viewtopic.php?f=76&t=60298&sid=baa40af8a9cee9945c52ed0b09d81c2b (https://homematic-forum.de/forum/viewtopic.php?f=76&t=60298&sid=baa40af8a9cee9945c52ed0b09d81c2b)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Tom Major am 11 Oktober 2020, 13:14:03
ja, das ist richtig, mehrere xPos sind bei mir pro Zeile möglich.
2 bzw. 3 Spalten ist meine Hauptbetriebsart wie im Bild zu sehen, deswegen hatte ich die Erweiterung in Firmware und Script Helper gemacht.
https://github.com/TomMajor/SmartHome/tree/master/HB-Dis-EP-42BW#infos-und-addon-zum-42-epaper-display-hb-dis-ep-42bw (https://github.com/TomMajor/SmartHome/tree/master/HB-Dis-EP-42BW#infos-und-addon-zum-42-epaper-display-hb-dis-ep-42bw)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 11 Oktober 2020, 13:17:43
ok, also darf ich insgesamt maximal 16 Zeichen pro Zeile abzüglich jedes @pxx oder @fxx senden, oder sollte ich mehr zulassen? Wieviel erlaubt das Script denn?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Tom Major am 14 Oktober 2020, 00:28:38
bin nicht sicher ob die Frage an mich ist. Ich habe im TCL Skript keine Beschränkung der Zeichen wenn ich mich recht entsinne.
Nur in meinem HM Skript der periodisch das Display updatet habe ich eine Aufteilung in 2 calls zum TCL Skript - da es irgendwo eine interne Begrenzung in HM bzgl. der Datenlänge eines Message-Sets gibt - merkt man wenn man alle 10 Zeilen auf einmal aktualisieren will.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 15 Oktober 2020, 22:40:21
Hi,

ich habe nun versucht, mein Testdisplay mit FHEM zu steuern, was ja nach den Erklärungen weiter oben recht gut klappt. Folgendes will bei mir aber nicht funktionieren:
set dis_01 text Dach: Lüftungsanl.:
Es ergibt:
text1     Dach:           2020-10-15 22:33:27
text2     Lüftungsanl     2020-10-15 22:33:27


Es liegt wohl nicht an der Zeichenlänge, denn auch längere Zeichenketten sind kein Problem, solange darin kein Punkt und Semikolon vorkommen. Ich habe es mit Escapen in diversen Kombinationen versucht, "Lüftungsanl.:" als 2. Fixtext bekomme ich nicht übertragen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 15 Oktober 2020, 23:05:06
Das schränkt mich doch mehr ein als ich dachte. Ich versuche die Konfiguration 1:1 von der CCU nach FHEM zu übertragen, damit auch die DOIFs möglichst einfach portiert werden können. Aber auch
set dis_02 text Licht\_Dach:\_an Licht\_Dach:\_aus

funktioniert nicht, denn sowohl "an" als auch "aus" nach dem Seminkolon werden verschluckt. Auch hier habe ich es mit Escapen versucht, auch ohne Erfolg.

Wäre schön, wenn Du es Dir noch einmal anschauen könntest.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 15 Oktober 2020, 23:19:33
Ich werd mal reinschauen. Die Text Funktion ist aber nichts HB-Dis-EP-42BW spezifisches, sondern vom HM-DIS-EP-WM55 übernommen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 15 Oktober 2020, 23:24:28
Danke.

Ich schließe auch nicht aus, dass es an meiner Konfiguration liegt.

Beide Fixtexte im Channel sind aber auch nur Register, d.h. es müsste auch einzeln mit RegSet gehen, oder?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 15 Oktober 2020, 23:25:34
Ja genau.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 15 Oktober 2020, 23:36:00
Da ist aber noch irgendwas im Argen,

set dis_01 RegSet text1 test
ergibt folgendes
text1 failed: supported register are alignmentEP42 critBatLimitEP42 displayRefreshWaitTimeEP42 invertDisplayEP42 ledModeEP42 lowBatLimitEP42 pairCentral powerUpKeyEP42 powerUpModeEP42 showLineEP42 sign

text1 und text2 erscheinen nicht in der Liste der Register unter "regList", wohl aber unter "regTable"
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 15 Oktober 2020, 23:50:52
Nein mit regset geht es nicht, das hatte ich falsch in Erinnerung. Mit regbulk würde es gehen. Ich schau mir das morgen an.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 15 Oktober 2020, 23:53:50
Danke, dann warte ich so lange!
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 16 Oktober 2020, 19:39:03
Dem Display werden von Fhem nur Änderungen übertragen. Sendest du zweimal dem Display die gleiche Zeile, ist die zweite Nachricht leer.
Hier wird der Fixtext 1 in Zeile 1 angezeigt. Ist der Fixtext leer, ist auch die Zeile leer.
set HM_F34300_Dis_11 displayEP42 \0x80

Sendest du nun den Fixtext, bekommt das Display erstmal den Fixtext mit. Bei mir wird noch nichts geupdatet. (sollte es? ich muss hier mal in den Code schauen)
\_ ist ein Leerzeichen
set HM_F34300_Dis_01 text AA\_BB CC\__DD

Sendet du ihm nun nochmal das \0x80 wird eine Zeile ohne Inhalt gesendet. \0x80 steht ja schon drin. Das Display wird zwar neu aufgebaut, aber es ändert sich nichts.
set HM_F34300_Dis_11 displayEP42 \0x80

Sendest du ihm erst etwas anderes:   (hier würde es auch reichen das entsprechende Reading mit etwas anderem zu überschreiben.)
set HM_F34300_Dis_11 displayEP42 dummy
und dann
set HM_F34300_Dis_11 displayEP42 \0x80
steht AA BB in der ersten Zeile.

Ich könnte für die Fixtexte eine Ausnahme einbauen. Dann würden die Zeilen mit Fixtexten immer neu übertragen. Das würde aber mehr Nachrichten kosten. Eigentlich wäre es schöner, wenn das Display sich bei Änderung der Fixtexte selber updaten würde.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 16 Oktober 2020, 21:12:29
Hi,

ich bin mir nicht sicher, ob Deine Ausführung mir galt, ich kann darin nichts zu meinem eigenlichen Problem entdecken, dass in den Fixtexten Umlaute oder Sonderzeichen offenbar für Probleme sorgen. Oder stehe ich auf dem Schlauch?

Hast Du bei Dir versucht
set HM_F34300_Dis_01 text Dach: Lüftungsanl.:
oder
set HM_F34300_Dis_01 text Licht\_Dach:\_an Licht\_Dach:\_aus
einzugeben?

Du wirst feststellen, dass in dem Display nicht das ankommt, was Du erwartest, jedenfalls solange man FHEM glauben kann. Ich habe es in der Tat noch nicht versucht auf dem Display auszugeben, da ich der Anzeige in FHEM vertraut habe. Das wäre noch einen Versuch wert...
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 16 Oktober 2020, 21:42:34
Achso, ich dachte es handelt sich nur um ein Aktualisierungsproblem.

Das Problem sind nicht die Sonderzeichen, sondern dass der Text bei 12 Zeichen abgeschnitten wird, da die Funktion vom HM-Dis-EP-WM55 kommt. Ich versuche das mal anzupassen, werde ich aber heut nicht mehr schaffen. Es dürfen max. 16 Zeichen sein. 
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 16 Oktober 2020, 22:30:39
Dann liegt die Grenze eher bei 11 Zeichen, es kommt nämlich "Lüftungsanl" an, und das hat nur 11 Zeichen. Interessanterweise kommt aber "0123456789ab" an, was 12 Zeichen hat. Werden Umlaute anders gezählt?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 16 Oktober 2020, 22:39:09
Tatsache, bei den Umlauten gibts auch ein Problem. Allerdings hat das HM-Dis-EP-WM55 damit auch Probleme, da bekomme ich nur Pixelfehler.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 17 Oktober 2020, 13:01:50
Ich habe die text Funktion entfernt und eine eigene textEP42 eingebaut. Diese sollte alle 16 Zeichen übertragen. Umlaute und manche Sonderzeichen musst du anders angeben:
     
[ => Ä"     
# => Ö"     
$ => Ü"     
{ => ä"     
| => ö"     
} => ü"     
' => ="
~ => ß"

Das ist allerdings etwas firmwarespezifisches. Es gilt für displayEP42 und textEP42.

Die displayEP42 nimmt nun 100 Zeichen pro Zeile an.

Bei weiteren Bugs, gern melden :)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 19 Oktober 2020, 22:58:36
Ich habe heute wieder ein bisschen mit dem Display rumgespielt. Leider bekommen ich die neue "textEP42" Funktion nicht angezeigt, "reload" und "shutdown restart" helfen leider nicht...
Ansonsten bin ich darüber gestolpert, dass Konma nicht in einem Text vorkommen darf, auch nicht escaped, sondern nur als "\0x2C". Würde es nicht mehr Sinn machen, dass auch vom Modul mit zu handeln, genau so wie die Umlaute auch? Ich kann das natürlich in myUtils auslagern, aber ich schätze, Du hast einen besseren Überblick, was alles ersetzt werden muss ;)

Edit: OK, ich sehe, das mit dem Komma stand schon weiter oben
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 20 Oktober 2020, 21:52:57
Ich habe heute meine DOIFs portiert, beide Displays nebeneinader gestellt und sie quasi gleichzeitig befüllen lassen. Im direkten Vergleich fällt auf, dass das über HMCCU befüllte Display früher fertig ist. Das kann natürlich daran liegen, dass FHEM die Display nacheinander anspricht und 2-3 Sekunden zwischen dem Abarbeiten der beiden Anweisungen vergehen. Aber das kann ich mir fast nicht vorstellen, auch wenn mein FHEM auf einem Raspi 3 läuft. Die Display-HW und SW ist ansonsten identisch, bleibt wirklich nur die unterschiedliche Ansteuerung FHEM - FHEM/HMCCU. Damit kann ich aber leben, zumal ja nur ein Display übrig bleiben soll, nach Möglichkeit das von FHEM angetriebene.

Von diesem Ziel bin ich aber immer noch ein Stück entfernt, denn ich habe zwar mittlerweile textEP42 zur Verfügung, aber es überträgt immer noch nicht mehr als 12 Zeichen und hat Probleme mit den Umlauten. Kannst Du bitte noch mal schauen, oder übersehe ich irgendwas?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 20 Oktober 2020, 22:58:28
Hast du die Umlaute auch ersetzt oder schickst du die im Klartext? Wie ist das eigentlich in der ccu? Müssen die Umlaute ohne Script auch ersetzt werden? Ich habe leider keine ccu.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 20 Oktober 2020, 23:41:36
Ich habe hier mittlerweile alles mögliche ausprobiert. Weder mit Klartext noch ersetzt funktioniert es richtig. Das mit 12 Zeichen lässt sich aber auch ganz ohne Umlaute nachweisen:

set dis_1 textEP42 0123456789ABCDEF 0123456789ABCDEF

überträgt 0123456789AB 0123456789AB.

Weder bei der Befüllung der Fixtexte mit der CCU noch bei der Befüllung des Displays mit Toms Script muss ich mir ansonsten Gedanken um irgendwelche Ersetzungen machen, das machen sie wohl unter der Haube.

Wenn ich die Fixtexte in der CCU befülle, dann erscheint in der CCU nach dem Übertragen der Werte die ersetzte Version: ich gebe "Lüftungsanl.:" ein, nach der erfolgreichen Übertragung erscheint im Feld "L}ftungsanl.:".

BTW: wie ist eigentlich die "Adresse" der Fixtexte der Kanäle 6-10? Ich hätte gedacht 0x90-0x99, aber zumindest die 0x98 und 0x99 bekomme ich nicht angezeigt.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Tom Major am 21 Oktober 2020, 17:37:13
Zitat von: tndx am 20 Oktober 2020, 23:41:36

Weder bei der Befüllung der Fixtexte mit der CCU noch bei der Befüllung des Displays mit Toms Script muss ich mir ansonsten Gedanken um irgendwelche Ersetzungen machen, das machen sie wohl unter der Haube.


Die Ersetzungen der Umlaute mache ich hier:
https://github.com/TomMajor/SmartHome/blob/master/HB-Dis-EP-42BW/Script_Helper/epaper42.tcl#L184 (https://github.com/TomMajor/SmartHome/blob/master/HB-Dis-EP-42BW/Script_Helper/epaper42.tcl#L184)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 21 Oktober 2020, 19:11:00
Zitat von: tndx am 20 Oktober 2020, 23:41:36
Ich habe hier mittlerweile alles mögliche ausprobiert. Weder mit Klartext noch ersetzt funktioniert es richtig. Das mit 12 Zeichen lässt sich aber auch ganz ohne Umlaute nachweisen:

set dis_1 textEP42 0123456789ABCDEF 0123456789ABCDEF

überträgt 0123456789AB 0123456789AB.

Das funktioniert bei mir problemlos. Was steht denn bei dir in den Readings text1 und text2?
Zitat von: tndx am 20 Oktober 2020, 23:41:36
Weder bei der Befüllung der Fixtexte mit der CCU noch bei der Befüllung des Displays mit Toms Script muss ich mir ansonsten Gedanken um irgendwelche Ersetzungen machen, das machen sie wohl unter der Haube.
Das kann ich auch noch einbauen :) .
Zitat von: tndx am 20 Oktober 2020, 23:41:36
BTW: wie ist eigentlich die "Adresse" der Fixtexte der Kanäle 6-10? Ich hätte gedacht 0x90-0x99, aber zumindest die 0x98 und 0x99 bekomme ich nicht angezeigt.
Die Fixtexte der Kanäle 6-10 sind 0x8A - 0x93. Hinter 0x ist immer Hex ;)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 21 Oktober 2020, 22:01:50
Zitat von: Loctotex am 21 Oktober 2020, 19:11:00
Das funktioniert bei mir problemlos. Was steht denn bei dir in den Readings text1 und text2?

Das ist offenbar das Problem. In den Readings steht:
text1    0123456789AB    2020-10-20 23:37:51
text2    0123456789AB    2020-10-20 23:37:51


Ausgegeben wird auf dem Display jedoch jeweils die ganze Zeichenkette. Anzeigeproblem im FHEM-Modul?
Dann probiere ich das gleich mit den Umlauten noch mal aus. Kann sein, dass ich mich dann teilweise habe von den falschen Readings irreführen lassen.

Nachtrag:
Ich habe nun folgendes ausgeführt:
set dis_10 textEP42 L}ftungsanl.: Temp

In FHEM wird Folgendes angezeigt:
text1    L}ftungsanl.    2020-10-21 22:21:06
text2    Temp    2020-10-21 22:21:06

Man beachte den fehlenden Doppelpunkt.

Anschließend habe ich Folgendes ausgeführt:
set dis_11 displayEP42 ::::::::\0x93:\0x92

Angezeigt auf dem Display wird Folgendes (nur Zeile 9 und 10):
Temp
Lsanl.:


Damit solltest Du das Problem auch bei Dir reproduzieren können.

Zitat von: Loctotex am 21 Oktober 2020, 19:11:00
Das kann ich auch noch einbauen :) .

Das wäre schon Luxus :) Ich komme im Moment zurecht, ist allerdings verwirrend, dass manche Zeichen ersetzt werden und manche nicht: Punkt muss und sollte man nicht escapen, Doppelpunkt kann man escapen und Komma geht nur als Hex-Code... Aber das ich Jammern auf hohem Niveau ;)

Zitat von: Loctotex am 21 Oktober 2020, 19:11:00
Die Fixtexte der Kanäle 6-10 sind 0x8A - 0x93. Hinter 0x ist immer Hex ;)

Ja, das war gestern schon spät :)
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 25 Oktober 2020, 11:14:02
Zitat von: tndx am 21 Oktober 2020, 22:01:50
Das ist offenbar das Problem. In den Readings steht:
text1    0123456789AB    2020-10-20 23:37:51
text2    0123456789AB    2020-10-20 23:37:51


Ausgegeben wird auf dem Display jedoch jeweils die ganze Zeichenkette. Anzeigeproblem im FHEM-Modul?
Dann probiere ich das gleich mit den Umlauten noch mal aus. Kann sein, dass ich mich dann teilweise habe von den falschen Readings irreführen lassen.

Nachtrag:
Ich habe nun folgendes ausgeführt:
set dis_10 textEP42 L}ftungsanl.: Temp

In FHEM wird Folgendes angezeigt:
text1    L}ftungsanl.    2020-10-21 22:21:06
text2    Temp    2020-10-21 22:21:06

Man beachte den fehlenden Doppelpunkt.



Tatsache, das wird nach kurzer Zeit überschrieben. Da muss ich mal schauen wo das herkommt. Direkt nach text42 steht der richtige Text im Reading.


Zitat von: tndx am 21 Oktober 2020, 22:01:50


Anschließend habe ich Folgendes ausgeführt:
set dis_11 displayEP42 ::::::::\0x93:\0x92

Angezeigt auf dem Display wird Folgendes (nur Zeile 9 und 10):
Temp
Lsanl.:


Damit solltest Du das Problem auch bei Dir reproduzieren können.


Seltsam, das bekomme ich nicht nachgestellt. Ich probiere mal weiter.
https://forum.fhem.de/index.php?action=dlattach;topic=112912.0;attach=141612;image



Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 25 Oktober 2020, 12:30:53
Kleines Update:

- Umlaute "=" und "ß" werden werden nun automatisch ersetzt und können in displayEP42 und text42 verwendet werden.
- Zusätzlich zu den text1 und text2 Readings gibt es jetzt noch die text42_1 und text42_2 Readings.  @tndx kannst du mal schauen inwiefern die sich jetzt unterscheiden? Eins davon wird wieder entfernt.

Wer sich über die veränderte " CUL_HM_SetdisplayEP42" wundert:
in der CUL_HM_SetdisplayEP42 Funktion gibt es eine Funktion die den Betteriestand auswertet. Hierzu ist aber noch eine Modifikation an der Firmware nötig. Ich lasse mir jede Stunde die Batteriespannung senden. Gibt es die Modifikation nicht, passiert hier nichts.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 26 Oktober 2020, 15:22:50
text1 und text2 wird durch die CUL_HM_4DisText auf 12 Zeichen beschränkt. Kann ich das irgendwie verhindern @martinp876?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 02 November 2020, 21:35:09
Moin,

Zitat von: Loctotex am 25 Oktober 2020, 12:30:53
- Zusätzlich zu den text1 und text2 Readings gibt es jetzt noch die text42_1 und text42_2 Readings.  @tndx kannst du mal schauen inwiefern die sich jetzt unterscheiden? Eins davon wird wieder entfernt.

das wollte ich mir heute ansehen, leider scheinen solche strukturellen Änderungen der FHEM-Module bei existierenden Devices nur anzukommen, wenn man den Config-Taster betätigt. Leider habe ich mein Display mittlerweile so zusammengesetzt, dass man da nicht ohne weiteres an den Config-Taster kommt. Gibt es irgendeinen anderen Weg, die Readings zu aktualisieren?

reload HMConfig_HBdis.pm und
set <display> getConfig

scheinen es nicht zu bewirken.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 02 November 2020, 21:44:14
Die neuen Readings werden nur bei set text42 geschrieben. Sie werden nicht aus dem Gerät gelesen. Dazu brauche ich wahrscheinlich eine Änderung in der 10_CUL_HM.pl. Ich werd Martin mal anschreiben.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 02 November 2020, 23:14:53
OK, ich habe eben folgendes ausgeführt:

set dis_10 textEP42 Lüftungsanl.: Temp

In den Readings steht nun Folgendes:

text1   Lüftungsanl.:   2020-11-02 22:57:10
text2   Temp   2020-11-02 22:57:10
text42_1   Lüftungsanl.:   2020-11-02 22:57:10
text42_2   Temp   2020-11-02 22:57:10


Sieht also erstmal gut aus. Nach
set dis_11 displayEP42 ::::::::\0x93:\0x92
wird mir allerdings wieder
Temp
Lsanl.:

angezeigt
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 02 November 2020, 23:18:18
OK, ich habe eben folgendes ausgeführt:

set dis_10 textEP42 Lüftungsanl.: Temp

In den Readings steht nun Folgendes:

text1   Lüftungsanl.:   2020-11-02 22:57:10
text2   Temp   2020-11-02 22:57:10
text42_1   Lüftungsanl.:   2020-11-02 22:57:10
text42_2   Temp   2020-11-02 22:57:10


Sieht also erstmal gut aus. Nach
set dis_11 displayEP42 ::::::::\0x93:\0x92
wird mir allerdings wieder
Temp
Lsanl.:

angezeigt

Edit: Ich merke gerade, da ist irgendwas anderes im Argen. Ich habe jetzt die beiden Fixtexte im Kanal 10 gegen "ABC" und "CDE" ausgetauscht (werden auch als Readings angezeigt), trotzdem wird
Temp
Lsanl.:

angezeigt

Ich muss morgen noch mal alles ganz genau durchgehen!
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 03 November 2020, 13:49:03
displayEP42 überträgt eine Zeile nur, wenn sich etwas geändert hat. Hast du also die Fixtexte geändert, werden die erst aktualisiert wenn sich etwas in der Zeile ändert. Alternativ kannst du auch das Reading der Zeile löschen oder überschreiben. Wenn das nicht klappt, werd ich mal etwas Logging einbauen müssen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 03 November 2020, 18:50:03
Hi,

danke für Deine Geduld!

Es bleibt dabei: ich bekomme "Lsanl.:" angezeigt. Ich habe eben mehrfach die Fixtexte und die Zeilen geändert, es ändert leider nichts am Ergebnis. Ich glaube, Logging wäre wirklich nicht verkehrt, oder kann ich jetzt schon irgendwas loggen?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 03 November 2020, 19:19:09
Ich danke dir für das Testen :).
Das Logging muss ich leider im laufe der Woche erst einbauen. Wenn du Zugang zum seriellen Port vom Gerät selber hast, könntest du da mitloggen. Das würde auch schon viel helfen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 03 November 2020, 20:16:19
Hm, wie gesagt, ich habe erst kürzlich das Display in ein Gehäuse verpackt, da komme ich jetzt nicht so einfach dran  :(
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 07 November 2020, 14:28:11
Ich hab etwas Logging eingebaut. Loglevel ist 3. Werde ich später hoch setzen.
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 21 November 2020, 23:31:13
Moin,

Zitat von: Loctotex am 07 November 2020, 14:28:11
Ich hab etwas Logging eingebaut. Loglevel ist 3. Werde ich später hoch setzen.

ich bin heute mal wieder gezwungenermaßen dazu gekommen, mich mit dem Thema zu beschäftigen, da mein Display irgendwie seine Programmierung vergessen hatte. Der Sketch war zwar noch drauf, aber die EEPROM-Daten alle weg. Nachdem das Display wieder einsatzbereit war, habe ich Deine letzte Modulversion eingespielt und merke Folgendes:
- Umlaute in den Fixtexten sind immer noch ein Problem. Noch schlimmer als vorher, denn vorher hatte ich die meisten Umlaute/Sonderzeichen noch irgendwie hingekriegt, wahrscheinlich indem ich sie aus der CCU richtig kodiert übernommen hatte. Nun habe ich aber keine CCU mehr zum Vergleich und weder Umlauteingabe direkt noch Ersetzung durch die Hex-Werte führen zu einer vernünftigen Anzeige auf dem Display
- Ich keine keine Log-Ausgabe entdecken. Im Gegenteil, mit der alten Version gab es Ausgabe im Log, die ich gar nicht wahrgenommen habe. Seit ich die neue Modulversion habe, kommt einfach nichts von dem Modul im Log an. Muss ich dazu irgendwas besonderes einstellen?
- Ich bin mir auch nicht sicher ob das Display und das FHEM-Modul sich in einem konsistenten Zustand zueinander befinden, denn einige Sachen, die vorher angezeigt wurden, werden nicht angezeigt...

Hast Du eine Idee, welche Informationen ich Dir liefern müsste, damit Du eine Chance hast, dem Problem auf den Grund zu gehen?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: Loctotex am 24 November 2020, 18:11:21
Das ist komisch. Dann stimmt irgendwas mit fhem bei dir nicht. Hast du zufällig global verbose unter 3 stehen?
Titel: Antw:HB-Dis-EP-42BW
Beitrag von: tndx am 24 November 2020, 22:30:12
nein, global verbose steht auf 3.

Offenbar wurde das Logfile seit meinen letzten Veruschen gar nicht mehr beschrieben, nicht nur von Deinem Modul. Was auch immer sich da verklemmt hat, nach einem FHEM-Neustart sehe ich nun die Ausgaben.

Ich werde mal bei Gelegenheit wieder damit spielen und melde mich dann mit neuen Erkenntnissen.