FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: Prof. Dr. Peter Henning am 02 Januar 2026, 11:52:05

Titel: HM-OU-CFM-Pl wieder funktional machen
Beitrag von: Prof. Dr. Peter Henning am 02 Januar 2026, 11:52:05
Ich habe seit langer Zeit einen Homematic-Gong HM-OU-CFM-Pl. Nun habe ich in den letzten 2 Jahren sukzessive alle meine HM-Geräte auf den Betrieb mit RaspberryMatic und HMCCU umgestellt. Dabei ging leider die Möglichkeit verloren, außer der primitiven Gongfunktion die weiteren Features des HM-OU-CFM-Pl zu nutzen, nämlich das Blinken in verschiedenen Farben und das Abspielen von MP3-Dateien auf einer SD-Karte.

Das Device heißt WZ.Gong, die Gongfunktion kann über direkte Verknüpfung von anderen HM-Devices ausgelöst werden. 1 ist der optische Kanal, 2 ist der akustische Kanal.

Mit dem FHEM-Befehl
set WZ.Gong datapoint 1.STATE truekann das Blinken eingeschaltet werden - und zwar langsam rot blinkend. Warum? Weil das Teil seinen internen Parameter 2.LONG_ACT_TYPE auf den Wert 2 hat, entspricht RED_LONG. Das sieht man, wenn man
get WZ.Gong paramSetDesc aufruft, u.a.an der Zeile.
ZitatChannel LEQ1003578 1
  Paramset LINK
    ...
    LONG_ACT_TYPE: ENUM [R,W] [Visible,Sticky] RANGE=0...6 DFLT=2 VALUES=NO_MSG,RED_SHORT,RED_LONG,GREEN_SHORT,GREEN_LONG,ORANGE_SHORT,ORANGE_LONG
    ...
set WZ.Gong datapoint 1.STATE false schaltet das Blinken (vorzeitig) wieder aus.

Ebenso:
Mit dem FHEM-Befehl
set WZ.Gong datapoint 2.STATE truekann das Abspielen der ersten MP3-Datei auf der SD-Karte gestartet werden, deren Dateiname mit 000 beginnt. Das sieht man, wenn man
get WZ.Gong paramSetDesc aufruft, u.a.an der Zeile.
ZitatChannel LEQ1003578 2
  Paramset LINK
    ...
    LONG_ACT_TYPE: INTEGER [R,W] [Visible,Sticky] RANGE=0...255 DFLT=0
    ...

Wenn man die entsprechenden ccuflags im Device setzt, werden die ganzen Parameter auch als Readings angezeigt, z.B. als
ZitatL-2.LONG_ACT_TYPE 0

So, und jetzt kommt die entscheidende Frage: Wie kann ich diese Parameter auf andere Werte setzen? Sagen wir mal, die MP3-Datei auf Nr. 15 setzen. Ich habe schon allerlei Kombinationen ausprobiert:

set WZ.Gong datapoint 2.LONG_ACT_TYPE 15 => Fehler invalid datapoint
set WZ.Gong datapoint L-2.LONG_ACT_TYPE 15 => Fehler invalid datapoint

set WZ.Gong config 2.LONG_ACT_TYPE 15 => Fehler No parameter specified
set WZ.Gong config L-2.LONG_ACT_TYPE 15 => Fehler No parameter specified
set WZ.Gong config 2 LONG_ACT_TYPE 15 => Fehler No parameter specified

Bisher ohne jeden Erfolg. Hat jemand eine Idee, wie das gehen kann?

LG

pah
Titel: Aw: HM-OU-CFM-Pl wieder funktional machen
Beitrag von: betateilchen am 02 Januar 2026, 14:20:17
Gibt man bei "set ... config" den Wert nicht mit einem '=' zwischen Parametername und Wert an?

Titel: Aw: HM-OU-CFM-Pl wieder funktional machen
Beitrag von: Prof. Dr. Peter Henning am 02 Januar 2026, 16:57:41
Habe ich schon probiert

set WZ.Gong config 2.LONG_ACT_TYPE=4 => Fehler invalid parameter specified
set WZ.Gong config 2 LONG_ACT_TYPE=4 => Fehler invalid parameter specified
set WZ.Gong config 2.LONG_ACT_TYPE:4 => Fehler no parameter specified
set WZ.Gong config 2 LONG_ACT_TYPE:4 => Fehler no parameter specified

Kein Effekt.

In der CommandRef zu HMCCUDEV steht es mal als <Kanal>.<Parameter>, mal ohne ".", und mal mit "=" und mal mit ":"

LG

pah

Ich habe auch probiert set WZ.Gong datapoint 1.SUBMIT type:4. Wir geschluckt, macht aber nichts.
Titel: Aw: HM-OU-CFM-Pl wieder funktional machen
Beitrag von: Prof. Dr. Peter Henning am 02 Januar 2026, 19:01:46
So, einen Schritt weiter - aber nachdem ich vorher nahe dem Abgrund stand, ist dieser Schritt ziemlich unerwünscht.

Hat angeblich damit zu tun, dass auf dem Gong die betreffenden Parameter in so genannten LINK-ParamSets stehen und angeblich nicht ohne existierende HM-Peer-Verknüpfung zu einem anderen HM-Device gesetzt werden können (Wobei sich mir die Frage stellt, warum das dann mit dem alten VCCU-Interface funktionierte???)

Anscheinend ist dann eine mögliche Lösung, auf der RaspberryMatic das CUxD-Addon zu installieren, darin einen virtuellen Taster zu definieren und mit dem auf die Verlinkung zwischen Gong und anderem Gerät zuzugreifen. Das ist aber, vorsichtig gesagt, unwartbar.

LG

pah

Titel: Aw: HM-OU-CFM-Pl wieder funktional machen
Beitrag von: betateilchen am 02 Januar 2026, 19:14:23
Das erinnert mich daran, dass man erst dann brauchbare events von HMIP Tasten bekommt, wenn auf der zugehörigen debmatic ein pseudo-Programm definiert wurde, in dem dann die Taste zumindest in einer "Wenn"-Bedingung auftaucht. Eine Aktion muss dabei gar nicht definiert werden. Vermutlich ein ähnliches Prinzip.
Titel: Aw: HM-OU-CFM-Pl wieder funktional machen
Beitrag von: Prof. Dr. Peter Henning am 03 Januar 2026, 19:30:49
So, Problem gelöst.

Nach ewigem recherchieren und probieren: Es gibt keine Möglichkeit, mit den Bordmitteln der RaspberryMatic die Link-Parameter der beiden Gong-Kanäle zu ändern.

Es gibt im FHEM-Device aber die beiden datapoints 1.SUBMIT und 2.SUBMIT, und so genannte Kanalaktionen. Nachdem ich in der RaspberryMatic herausgefunden habe, wie die anzusteuern sind, geht es prima.

Signalleuchte: 1.SUBMIT muss eine Liste bekommen aus <Aktiv>,<Anzahl Wiederholungen>,<Dauer>,[bis zu zehn Farbcodes]. Standard-Dauer des Effektes sind 108000, die Farbcodes sind z.B. 33 für "Grün kurz" = greenS. Also erzeugt z.B. ein
Zitatset WZ.Gong datapoint 1.SUBMIT 1,1,108000,33,33,33
drei kurze grüne Impulse.

MP3-Spieler: 2.SUBMIT muss eine Liste bekommen aus <Lautstärke>,<Anzahl Wiederholungen>,<Dauer>,[bis zu zehn Werte 0..255]. Standard-Dauer des Effektes sind 108000. Als spielt
Zitatset WZ.Gong datapoint 2.SUBMIT 0.8,1,108000,25,26
nacheinander die MP3-Dateien 025xxx.mp3 und 026xxx.mp3 mit der Lautstärke 80% ab.

Ich werde bei Gelegenheit das Wiki entsprechend ergänzen, nachstehend meine drei "Zusatzdevices" und zwei Perl-Handler für den Gong WZ.Gong

defmod WZ.Gong.LED dummy
attr WZ.Gong.LED readingList sequence
attr WZ.Gong.LED setList sequence

defmod WZ.Gong.MP3 dummy
attr WZ.Gong.MP3 readingList sequence
attr WZ.Gong.MP3 setList sequence

defmod WZ.Gong.N DOIF ([WZ.Gong.LED:"sequence"])
({gong_led("WZ.Gong","$EVENT")})
DOELSEIF
([WZ.Gong.MP3:"sequence"])
({gong_mp3("WZ.Gong","$EVENT")})
attr WZ.Gong.N do always

sub gong_led($$){
  my ($dev,$evt) = @_;
 
  my $seq = $evt;
  $seq =~ s/sequence\:\s+//;
  my %colors=(
  "orangeS" => 49,
  "orangeL" => 50,
  "redS"    => 17,
  "redL"    => 18,
  "greenS"  => 33,
  "greenL"  => 34
  );
  my $rep=AttrVal($dev.".LED","repeat",1);
 
  foreach my $key (keys %colors) {
    my $color = $colors{$key};
    $seq =~ s/$key/$color/g;
  }
  #--
  if( $seq !~ /[0-9,]/){
    Log 1,"[gong_led] illegal sequence";
  }
 
  my $str="1,$rep,108000,$seq";
 
  fhem("set $dev datapoint 1.SUBMIT $str");
}

sub gong_mp3($$){
  my ($dev,$evt) = @_;
 
  my $seq = $evt;
  $seq =~ s/sequence\:\s+//;
  my $vol=AttrVal($dev.".MP3","volume",1);
  my $rep=AttrVal($dev.".MP3","repeat",1);
 
  #--
  if( $seq !~ /[0-9,]/){
    Log 1,"[gong_m3] illegal sequence";
  }
 
  my $str="$vol,$rep,108000,$seq";
 
  fhem("set $dev datapoint 2.SUBMIT $str");
}

LG

pah
Titel: Aw: HM-OU-CFM-Pl wieder funktional machen
Beitrag von: Prof. Dr. Peter Henning am 04 Januar 2026, 08:39:12
Wiki ist aktualisiert https://wiki.fhem.de/wiki/HM-OU-CFM-Pl_MP3_Funk-Gong_mit_Signalleuchte#Hinweise_zum_Betrieb_mit_FHEM

LG

pah