HM-LC-SW2-FM mit Fhem schalten gelingt mir nicht

Begonnen von Eisenberg188, 19 Januar 2020, 09:36:56

Vorheriges Thema - Nächstes Thema

Pfriemler

#15
Zitat von: Eisenberg188 am 19 Januar 2020, 16:18:17
Kann ich einen Chan (dual) von einem HM-PB-4DIS-WM mit einer FHEM-Zentrale pairen um damit per DOIF etwas anderes auszulösen?
Das eigentliche Gerät HM-PB-4DIS-WM ist ja bereits gepairt (sonst hättest Du keine Texte setzen können). Damit kennst Du ja die 20 Kanäle des Gerätes bereits.
Ein Tastendruck erzeugt ein sog. "Event" in FHEM. Für die Ausführung von Aktionen kann jetzt bereits auf dieses Event reagiert werden. Die hier so oft empfohlene Vorgehensweise ist
- Eventmontitor aufrufen
- Taste am Gerät drücken und das ankommende Event identifizieren
- Zeile markieren und mit dem Assistenten ein DOIF/notify/FileLog/... anlegen.
So bekommt man als erstes eine Idee, wie das Regex, also die Erkennungsregel für das Event, aufgebaut werden muss.

Möchtest Du "dual" reagieren, musst Du bspw. das DOIF mit zwei Auswertungszweigen belegen, die auf die beiden Tasten der entsprechenden Ebene oder Anzeigefläche reagieren.

In der Kommunikation mit anderen Geräten erwartet der Taster eine Antwort ("ACK") auf seine Nachricht - erfolgt diese, gibt es das grün, anderenfalls (nach Timeout) rot. Bei vielen Tastern leuchtet so eine Geräte-LED, beim Displaytaster ist es ein Balken im Display.
Nun wirst Du möglicherweise feststellen, dass der gelbe Balken beim Betätigen einer Kanaltaste bei der Taste für die FHEM-Verarbeitung nicht nach grün oder rot wechselt. Wenn dieses Verhalten erwünscht ist, muss man diesen Kanal mit "irgendwas" in FHEM "peeren". Hierfür bieten sich virtuelle Aktoren oder Buttons an. Spätestens jetzt ist eine VCCU hilfreich ...

Mehr muss ich an dieser Stelle nicht erzählen, das ist alles bspw. hier im Wiki nachzulesen.

Seltsam mag anmuten, dass man hier eine Taste (Button) mit einem virtuellen Button peert. Das geht normalerweise nicht und ergibt auch keinen Sinn. Aber virtuelle Buttons können quasi als Joker sowohl als Peer-Partner für Buttons als auch Aktoren dienen.

Du kannst auch den unteren Taster einer Displayebene des PB-4DIS "dual" mit einem virtuellen Button peeren. Das wird eine Bindung der unteren Taste mit diesem virtuellen Button sowie gleichzeitig eine Bindung mit der oberen Taste mit dem höher gelegenen Nachbarn des virtuellen Buttons erzeugen. Das verwirrt nur und ist in der Regel sinnlos. Als Partner für eine alleinige Erzeugung einer Quittierungsmeldung kann man einen einzigen virtuellen Button verwenden und diverse Tasten damit "single" peeren.

Nach so einem Peering wird ein Tastendruck am PB-4DIS auch ein Event am zugehörigen virtuellen Button erzeugen. Man könnte auch darauf reagieren. In wenigen Spezialfällen ist das sogar sinnvoll. Für die Übersicht in FHEM und den DOIFs etc. ist es aber eher hilfreich, den tatsächlichen Auslöser zu identifizieren, wie ich oben schon schrieb.
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Eisenberg188

#16
Hallo, irgendwie, irgendwo bin ja auf diese Seite gestossen  https://wiki.fhem.de/wiki/HM-RC-4-2_Funkfernbedienung_4_Tasten#LED_.2F_R.C3.BCckantwort

Es kunktioniert mir so nicht.
Vorerst, ich habe ja eine VCCU (habe es nicht als solche gesehen):
define nanoCUL CUL /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_TG041970-if00-port0@38400 0000
attr nanoCUL hmId AABBCC
attr nanoCUL rfmode HomeMatic
attr nanoCUL room CUL_HM

define VCCU CUL_HM AABBCC
attr VCCU IODev nanoCUL
attr VCCU IOList nanoCUL
attr VCCU IOgrp VCCU
attr VCCU expert 2_raw
attr VCCU model CCU-FHEM
attr VCCU subType virtual
attr VCCU webCmd virtual:update

set nanoCUL  virtual 6 ->funktioniert nicht, Fehlermeldung:
Unknown argument virtual, choose one of ITClock bWidth freq hmPairForSec hmPairSerial led patable rAmpl raw reopen sens


Virtuelle war dann automatisch angelegt



Ich konnte einen Virtuellen Button anlegen.
define VIRT CUL_HM 654321
attr VIRT subType switch

attr VIRT  hmClass receiver ->funktioniert nicht
set VIRT virtual 6 -funktiobiert nicht:
Unknown argument virtual choose one of clear getConfig getDevInfo getRegRaw getSerial getVersion inhibit off on-for-timer on-till on pair peerBulk peerIODev regBulk regSet statusRequest toggle


mit den Befehl konnte ich diesen virtuellen Button dann aber peeren.
set HM_Schirm_Btn_05 peerChan 0 VIRT single

Soweit würde ich dann auch zurechtkommen, wenn auch nicht ganz so wie von Pfriemler (DANKE) gezeigt.


Irgendwann kommt dann Menü Zentrale Sync.  auf dem HM-PB-4DIS-WM
Erst durch ein Menü Werkeinst. und Zurücksetzen komme ich wieder auf Menü Anlernen.


Dann ist natürlich alles inkl. Texte gelöscht.
Kanne man die Texte irgendwie automatisieren und nicht Zeile für Zeile anlernen?
So ist es sehr mühsam.
Ich muss die Hardware wirklich alles installiert haben, bzw. Zugang zu den Anlernbuttons haben um diese HM-PB-4DIS-WM zu Reseten und in einem Zug durchprogrammieren?

Geplant habe ich eine HM-PB-4DIS-WM, 3 Stk. 3 HM-LC-Sw2-FM, 2 Stk. HM-LC-Sw1-FM (Ersatz von Stromstossrelais), HM-Sec-MDIR, HM-PB-2-WM55, nanoCUL an dem Fhem mit Raspberry PI. Dieser ist in einem Netzwerk mit einem FHEM, wo ich dann noch ein paar Lichter schalten möchte und einem Fhem auf einem Raspberry PI, der als Poolsteuerung  dient. Dieser steuert die elektrischer Pool-Abdeckung, Pumpe, Saltmaster, PH-Minus, Wasserstandskontrolle (Überschwallbecken) und Wasserzufuhrschalter, basierend auf einer Wetterstation (davis mit Weewx), Badebetrieb und Photovoltaiklieferung. Die 3 Fhem Raspberry Pi sind seit 3 Jahren in Betrieb, wobei das erste mal, vorige Woche eine SD-Card defekt wurde.
6 Raspi: 3 Fhem, Weewx, SmartPi, Kodi; davis Vintage Pro2; OwnAndroidApps (Maxwell 10)

Otto123

#17
ZitatEs kunktioniert mir so nicht.
Vorerst, ich habe ja eine VCCU (habe es nicht als solche gesehen):
define nanoCUL CUL /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_TG041970-if00-port0@38400 0000
attr nanoCUL hmId AABBCC
attr nanoCUL rfmode HomeMatic
attr nanoCUL room CUL_HM

set nanoCUL  virtual 6 ->funktioniert nicht, Fehlermeldung:
Unknown argument virtual, choose one of ITClock bWidth freq hmPairForSec hmPairSerial led patable rAmpl raw reopen sens
Du hast keine VCCU Du hast einfach einen IO. So würdest Du eine bekommen:
https://wiki.fhem.de/wiki/Virtueller_Controller_VCCU
Und beachte bitte meinen Hinweis in #5 und setze Deinen Code in Codetags!
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Eisenberg188

Ok, Code in ...
Ich habe die VCCU erst gemacht und meinen Beitrag korrigiert (so lange ich keine weitere Antwort erhalten habe).
Danke aber für deinen Hinweis.

Irgendwann kommt dann Menü Zentrale Sync. statt Zentrale Anlernen auf dem HM-PB-4DIS-WM
Erst durch ein Menü Werkeinst. und Zurücksetzen komme ich wieder auf die Menüs Anlernen.

Dann ist natürlich alles inkl. Texte gelöscht.
Kanne man die Texte irgendwie automatisieren und nicht Zeile für Zeile anlernen?
So ist es sehr mühsam.
Ich muss die Hardware wirklich alles installiert haben, bzw. Zugang zu den Anlernbuttons haben um diese HM-PB-4DIS-WM zu Reseten und in einem Zug durchprogrammieren?
6 Raspi: 3 Fhem, Weewx, SmartPi, Kodi; davis Vintage Pro2; OwnAndroidApps (Maxwell 10)

Otto123

#19
Hast Du das hier gelesen? https://wiki.fhem.de/wiki/HM-PB-4DIS-WM_Funk-Wandtaster_mit_Display
Was Du jetzt mit Deiner VCCU gemacht hast ist doch nonsens? Du hast doch beim cul kein attr hmid gesetzt? Dann ist Deine HMId automatisch F10000, denn Du hast dem CUL den Hauscode (FHTID) 0000 gegeben. (Was auch nonsens aus Unwissenheit war)
Jetzt hat dein cul durch die Unterordnung mit der VCCU die HMID AABBCC - damit dürfte dein gepairter Schalter jetzt wieder nicht mehr schaltbar sein.
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Eisenberg188

ZitatWas Du jetzt mit Deiner VCCU gemacht hast ist doch nonsens? Du hast doch beim cul kein attr hmid gesetzt? Dann ist Deine HMId automatisch F10000, denn Du hast dem CUL den Hauscode (FHTID) 0000 gegeben. (Was auch nonsens aus Unwissenheit war)
Ja, das wird so sein.
Die Hommatic - Geräte habe ich vor etlichen Jahren gekauft, da die FS20 - Teile bei Handybetrieb nicht funktionierten. Dann bin ich auf FHEM gestossen, von IP-Symcon kommend. Ich habe alle Actoren mit FS20 durch Relais an Raspeberry (über Optokoppler, fertige Print) ersetzt. Alles funktioniert prächtig. Die CCU1 steht ungeöffnet im Schrank.
Die HM-LC-Sw2-FM habe schon stand alone mit Taster seitdem im Einsatz.
Der Einstieg in die Hommatic-Materie ist nun nicht so leicht. Die Beschreibungen in den Wikis, sind nicht immer eindeutig (könnte es aber auch nicht besser). Mit den verschiedenen CCUs (CCU2, CCU3, VCCU, Raspberry mit CCU(2) und verschiedenen Möglichkeiten macht es auch nicht besser.
Ohne HM-PB-4DIS-WM Funk-Wandtaster mit Display wäre es auch einfacher. Dieser hat mir bereits viel Zeit gekostet.
Ich werde nochmals von Vorne beginnen. Wobei ich mir auch überlege einen Raspberry mit Touch statt diesem Funk-Wandtaster zu verwenden.
Ob ich in eine eigene Android-App die Steuerung reinbringe, weiß ich noch nicht. Jetzt habe ich auf einem Maxwell 10 - IP-Telefon, Kameras, Wetter und Watchdog (Server, Wetter, 6 Cams) programmiert.
Eine Weboberfläche hatte ich auch schon auf dem Waxwell, ohne Webcam und Watchdog.
6 Raspi: 3 Fhem, Weewx, SmartPi, Kodi; davis Vintage Pro2; OwnAndroidApps (Maxwell 10)

Otto123

#21
Zitat von: Eisenberg188 am 20 Januar 2020, 10:11:18
Die CCU1 steht ungeöffnet im Schrank.
...
Mit den verschiedenen CCUs (CCU2, CCU3, VCCU, Raspberry mit CCU(2) und verschiedenen Möglichkeiten macht es auch nicht besser.
Die CCU1 hab ich auch noch, die kann im Schrank bleiben, die macht keinen Sinn mehr.
Ganz wichtig: VCCU ist ein Begriff aus FHEM und hat mit der CCU von eq3 nur gemeinsam, das sie eine Zentrale darstellen.
In FHEM gibt es zwei Homematic Welten: CUL_HM (der Begriff CUL macht es hier auch nicht gerade einfacher) und HMCCU
CUL_HM steuert Homematic direkt und ist für Homematic die Zentrale
HMCCU bildet die eq3 Zentrale CCU (und alle ihre Varianten der CCU2 und CCU3) in FHEM ab. Die CCU2 steuert weiterhin die Kompenenten, FHEM sieht sie und kann der CCU2 sagen: schalte ein Gerät. Zumindest vereinfacht gesagt.

Was die zukünftige Entwicklung für FHEM bringt weiß ich derzeit nicht. Homematic classic stirbt sicher aus und CUL_HM kann kein Homematic IP

Den HM-PB-4DIS-WM habe ich auch, gruselig das Teil. Und ich glaube mit dem wirst Du mit deinem CUL auch nicht glücklich. Der CUL ist nur eine Krücke für Homematic und dieser Taster ist eine Mimose.
Ich habe den einmal eingerichtet und will den nie wieder anfassen.

Gruß Otto 
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Pfriemler

Also, ich verstehe Dich nicht ... statt es einmal richtig zu machen, bombst Du Dich in die Steinzeit zurück ...

Zitat von: Eisenberg188 am 20 Januar 2020, 08:36:02
Irgendwann kommt dann Menü Zentrale Sync. statt Zentrale Anlernen auf dem HM-PB-4DIS-WM
Ja natürlich. Wenn das Ding einmal richtig mit der Zentrale gepairt ist, werden anschließend nur noch Daten mit ihr ausgetauscht. Das sollte Dir schon beim Programmieren der Texte aufgefallen sein. Wie ich schon in den Begriffen erläuterte: "Anlernen" bedeutet im Homematic-Jargon Koppeln an eine Zentrale.

ZitatErst durch ein Menü Werkeinst. und Zurücksetzen komme ich wieder auf die Menüs Anlernen.
Dann ist natürlich alles inkl. Texte gelöscht.
Kein Kommentar.

ZitatKanne man die Texte irgendwie automatisieren und nicht Zeile für Zeile anlernen?
So ist es sehr mühsam.
Macht man ja normalerweise auch nur einmal. Auch hier bete ich x-mal Gesagtes wieder her: Ein Reset eines Gerätes macht nur in Ausnahmefällen Sinn.

ZitatIch muss die Hardware wirklich alles installiert haben, bzw. Zugang zu den Anlernbuttons haben um diese HM-PB-4DIS-WM zu Reseten und in einem Zug durchprogrammieren?
Nein, wieso? Du kommst über das lange Drücken der die links/rechts-Tasten auf das Systemmenü und kannst dort die Synchronisation mit der Zentrale anstoßen wann immer das nötig ist, also beim Programmieren von Texten oder beim Ändern von Tastenverknüpfungen mit Homematic-Geräten. "Am Stück durchprogrammieren" bringt einen eher in das Sendelimit und dann ist erst mal eine Weile Warten angesagt. Sinnvoller ist es, das Stück für Stück zu machen.

Ansonsten hat Dir Otto viel Hilfreiches auf den Weg gegeben, dem ich nichts hinzuzufügen habe (außer dass ich mit dem 4DIS sehr glücklich bin  :-))

Bevor Du weiter an Geräten herumdoktorst, empfehle ich Dir:

  • Lege Dir eine anständige HmID zu - nix mit F00000 oder so. Trage sie noch nicht ein.
  • Unpaire alle HM-Geräte, so kannst Du sie später wieder anlernen/pairen, ohne dass Du ihre Konfiguration verlierst (das geht sonst nur über Reset)
  • Richte Dir eine VCCU nach Vorschrift ein mit der neuen HmID
  • Paire nun alle Geräte mit Deiner neuen HmID. Ihre bisherige Konfiguration bleibt so erhalten.
  • Lege Dir ein anständiges HM-Interface zu.
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."

Otto123

Zitat4DIS sehr glücklich bin
Ach ich auch, er funktioniert.  ;D Nur einrichten will ich ihn nicht unbedingt wieder, die Erinnerung daran ist gruselig. ;)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

martinp876

Tip zum ändern der hmid der zentrale: jonglieren mit der id der vccu.
Pairen ist nichts anderes als das schreiben der id in das Device.
1) die Zentrale hat die alte id. Setze das register pairCentral auf die neue hmid der zentrale.
Das lesen wird schief gehen, da das device nach den schreiben nur noch auf die neue hmid hört.
2) das mit allen devices machen
3) kopie der vccu mit der neuen id anlegen. Achtung: die ios immer nur einer ccu zuordnen.
A) hat man mehrere ios kann man parallel fahren
4) ios an der alten vccu abmelden und der neuen zuteilen.
5) mit getconfig die Register lesen. Wenn es klappt, alles gut. Wenn nicht kann man das io zurück assignen und über die alte vccu mit dem Device kommunizieren.
6) am ende die alte vccu löschen und die neue ggf. Umbenennen.

Ist eindacher als es sich anhört. Config ist nur bei devices notwendig welche "nur" config unterstützen