HMCCU V5 HmIPW-FIO6 Bedienung von Ausgang und Anzeige Eingang

Begonnen von Zeitisen, 20 Januar 2022, 10:52:09

Vorheriges Thema - Nächstes Thema

Zeitisen

Hallo,
ich habe mehrere HmIPW-FIO6 im Einsatz. Das Gerät hat 6 Eingänge und 6 Ausgänge. Auf vier Eingängen liegen mechanische Taster, auf vier Ausgängen liegen Auf/Zu für zwei motorgetriebene Fenster. Auf zwei Eingängen liegen die Zustände von den zwei Fenstern über externe Kontakte.

Wenn ich bei der CCU3 mit
get createDev Bad_IOnausführe, dann wird für alle sechs Ausgänge ein Device angelegt mit jeweils allen sechs Eingängen.

defmod Bad_IOn_7_Status_Fe_Auf_Links HMCCUDEV 00175A498C547E  sd=7.STATE cd=8.STATE
attr Bad_IOn_7_Status_Fe_Auf_Links alias Bad_Fenster_auf_links
attr Bad_IOn_7_Status_Fe_Auf_Links ccureadingfilter 1,2,3,4,5,6,7,8..*
attr Bad_IOn_7_Status_Fe_Auf_Links comment Eingang 1-4 hat direkte Verknüpfung mit Schaltaktor 1-4, Eingang 5 und 6 ist Fensterzustand
attr Bad_IOn_7_Status_Fe_Auf_Links devStateIcon on:general_an off:general_aus
attr Bad_IOn_7_Status_Fe_Auf_Links event-on-change-reading .*
attr Bad_IOn_7_Status_Fe_Auf_Links group Bad_IOn
attr Bad_IOn_7_Status_Fe_Auf_Links icon fts_window_2w_tilt_l
attr Bad_IOn_7_Status_Fe_Auf_Links room Bad
attr Bad_IOn_7_Status_Fe_Auf_Links webCmd on-for-timer 1


Ich möchte jetzt aber nur zwei Geräte, eines für jedes Fenster, mit zwei Tasten Auf und Zu und dem Zustand "offen/geschlossen" von einem Eingang. Gestartet wird der auf/zu Vorgang mit einem Impuls von 1s am jeweiligen Ausgang, also on-for-timer 1.
Das Fenster links wird geöffnet durch Ausgang 1, geschlossen durch Ausgang 2. Der Zustand liegt auf Eingang 5.

Welche Attribute muss ich setzen, damit ich das erreiche?

Zeitisen

mit ccureadingsfilter kann man die gewünschten Kanäle aussuchen.
Das größere Problem ist aber, wie ich mit webcmd zwei Tasten für Auf und Zu definiere, da die auf unterschiedliche Kanäle wirken müssen.

Auf ist Kanal 8, Zu ist Kanal 12. Ich müsste für jeden Kanal on-for-timer 1 setzen. 

Der Zustand sollte mit devicestateicon funktionieren als Symbol. Auch das funktioniert nicht.
Meine Kenntnisse von fhem reichen da wohl nicht.
defmod Bad_IOn_7_Status_Fe_Auf_Links HMCCUDEV 00175A498C547E  sd=7.STATE cd=8.STATE
attr Bad_IOn_7_Status_Fe_Auf_Links alias Bad_Fenster_auf_links
attr Bad_IOn_7_Status_Fe_Auf_Links ccureadingfilter 5,7,8,11,12..*
attr Bad_IOn_7_Status_Fe_Auf_Links cmdIcon on-for-timer:control_centr_arrow_up
attr Bad_IOn_7_Status_Fe_Auf_Links comment Kanal 1,2 Taster auf/zu, Kanal 5 Status Fenster, Ausgang 1,2 Aktor
attr Bad_IOn_7_Status_Fe_Auf_Links devStateIcon offen:fts_window_1w_tilt zu:fts_window
attr Bad_IOn_7_Status_Fe_Auf_Links event-on-change-reading .*
attr Bad_IOn_7_Status_Fe_Auf_Links group Bad_IOn
attr Bad_IOn_7_Status_Fe_Auf_Links icon fts_window_2w_tilt_l
attr Bad_IOn_7_Status_Fe_Auf_Links room Bad
attr Bad_IOn_7_Status_Fe_Auf_Links statedatapoint 5.STATE
attr Bad_IOn_7_Status_Fe_Auf_Links substitute 5.STATE!false:zu,true:offen



Zeitisen

Hat jemand eine Idee, wie das zu erreichen ist oder geht das prinzipiell nicht?

zap

Deine Definition versteht ich nicht. Einmal hast Du:

defmod Bad_IOn_7_Status_Fe_Auf_Links HMCCUDEV 00175A498C547E  sd=7.STATE cd=8.STATE

=> statedatapoint (also die Anzeige in state/STATE) = 7.STATE
=> controldatapoint (also die Steuerung) = 8.STATE

Dann wiederum:

attr Bad_IOn_7_Status_Fe_Auf_Links statedatapoint 5.STATE

=> Das überschreibt den statedatapoint aus dem defmod: statedatapoint = 5.STATE

Im Comment schließlich schreibst Du: Kanal 1,2 Taster auf/zu, Kanal 5 Status Fenster, Ausgang 1,2 Aktor
=> Von Kanal 8 aus defmod ist hier keine Rede.

Wichtig: Es kann nur einen controldatapoint / controlchannel geben. Aber(!): Jedes Device kann natürlich mit dem Befehl "set datapoint" individuell gesteuert werden.

Es gibt zwei Möglichkeiten:

1. Du definierst Dir selbst Befehle mit eventMap

eventMap /datapoint 8.STATE true: FensterAuf/datapoint 12.STATE true:FensterZu/

Problem: Das mit dem on-for-timer funktioniert nicht

2. Du definierst für jeden Kanal ein HMCCUCHN Device. Dann fasst Du diese in einer Gruppe zusammen. Mit FHEM-Bordmitteln wie z.B. readingsgroup kannst Du das so zusammenstellen, dass es wie "ein" Device aussieht.
=> Für mich die sauberste Lösung.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

Zeitisen

ah, jetzt weiß ich endlich, was das heißen soll: sd= , cd =

Zitat
Code: defmod Bad_IOn_7_Status_Fe_Auf_Links HMCCUDEV 00175A498C547E  sd=7.STATE cd=8.STATE
=> statedatapoint (also die Anzeige in state/STATE) = 7.STATE
=> controldatapoint (also die Steuerung) = 8.STATE

5.STATE ist der Status des Eingangs Kanal 5. Den will ich haben. Der Status des Ausgangs interessiert hier nicht.

Zitat
Im Comment schließlich schreibst Du: Kanal 1,2 Taster auf/zu, Kanal 5 Status Fenster, Ausgang 1,2 Aktor
=> Von Kanal 8 aus defmod ist hier keine Rede.

Ja immer das Problem mit der Nummerierung:

1. Das Gerät hat 6 Eingänge 1 bis 6. Die Nummerierung deckt sich mit den Kanalnummern der CCU
2. Das Gerät hat 6 Ausgänge 1 bis 6. Die Nummerierung ist 7/8, 9/10 ....

Schon etwas unglücklich. Zur Verdrahtung brauche ich die physikalische Kanalnummerierung, zur Programierung die idiotische, einfach durchgezählte Nummerierung aus der CCU. Wofür gilt jetzt der Begriff Kanal? Ein Ausgang bzw. Eingang oder die Nummerierung in der CCU. Wobei da ja zwei Kanäle für eine logische Einheit gebraucht werden. 7 ist der Status und 8 der eigentliche Ausgang.

Mir ist nicht so ganz klar, woher die Standard-Einstellung von get createDev kommt mit allen Eingängen und einem Ausgang, und das 6 mal.
Wenn nur ein Controldatapoint möglich ist, dann geht das natürlich nur mit einzelnen HMCCUCHN.
Ich benötige auf jeden Fall on-for-timer, weil der Ausgang ja einen Taster ersetzen soll.
Dann werde ich mal die Version mit HMCCUCHN in Angriff nehmen. Mal sehen wie ich dann mit der readingsgroup klarkomme.

Ein Kosmetikproblem habe ich auch noch mit der aktuellen Version: Das DevStatIcon funktioniert nicht. Es steht immer "auf" oder "zu" als Text da. Die Icon-Datei ist vorhanden.


Danke für die Erläuterungen. Mir war auch nicht mehr so ganz klar, was der Unterschied zwischen eventmap und substitute ist.