TRX_Light toggle

Begonnen von BenWend, 17 November 2013, 01:04:39

Vorheriges Thema - Nächstes Thema

BenWend

Hallo,

gibt es die Möglichkeit, für TRX_Light Devices die Funktion "toggle" in das FHEM-Modul einzubauen?

FHEM kennt ja meistens noch den richtigen Zustand und könnte dann einfach von "on" auf "off" oder umgekehrt switchen?

Oder ist das sehr kompliziert?

Vielen Dank

Ben

P.S.: Warum die Frage? Ich möchte aus einer iPhone App (irule) über http Befehle (set TRX_Lightxyz on/off/toggle") an FHEM senden. "On" und "Off" klappt auch gut. Toggle fehlt mir allerdings.

Willi

#1
Hallo Ben,

gemäß meiner Info ist bei FHEM toggle nur dort implementiert wo es die Geräte explizit unterstützen. Bei RFXtrx433 ist mir derzeit kein Gerät bekannt,  welches toggle unterstützt.

Eine richtige Implementierung man nicht hin, da die Geräte von RFXtrx433 unidirectional sind, so dass auch mal ein Schaltbefehl (sowohl beim Empfang als auch beim Senden) verloren gehen kann. Mann kennt also den Status des Gerätes nicht zu 100%.

Ich habe daher nicht vor toggle zu realisieren.

Dazu kommt, dass ich aktuell viele Nutzerwünsche und zu wenig Zeit habe, um toggle zu realisieren. Fehlerkorrekturen und neue Geräte gehen in meiner Prioritätsliste vor. Sorry, FHEM ist für mich nur ein "Freizeitvergnügen".....
Wenn jemand generell den Support der TRX-Module übernehmen will, sehen ich kein Problem darin zurückzutreten. Bis dahin versuche ich es abhängig von meiner verfügbaren Zeit zu machen und hauptsächlich Fehler zu beheben.

Wenn Du es implementieren willst, dann bitte nach der Implementierung sorgfältig testen. Sofern Du dann bereit bist diese Funktion zu supporten, kann ich es gerne auch ins SVN einchecken.

Alternativ Du könntest toggle per dummy und entsprechenden Skripting selbst realisieren.

Grüße

Willi
FHEM@Q600(debian) mit DS9490R (1Wire) | FHEM@Sheevaplug(debian) mit RFXCOM-Receiver(80002), CULv3 & USB-WDE1 | FHEM@odroid mit CULv2 & RFXtrx433

BenWend

Hallo Willi,

danke für die schnelle Antwort. Du hast Recht, dass es Sinn macht, nur Befehle zu unterstützen, die die Geräte auch hardwareseitig umsetzen können. Was ich meinte war tatsächlich ein "Workaround" also ein "Softwaretoggle" mit den von Dir beschriebenen Nachteilen (Schaltbefehle können verloren gehen).

Den zeitlichen Aspekt kann ich voll nachvolllziehen  ::) Leider bin ich nicht in der Lage, etwas zur Implementierung beizusteuern, da ich von Programmieren etc. gar keine Ahnung habe. Verfahre momentan eher nach dem Motto: Kopieren, Versuchen, Scheitern, Versuchen, ... - ziemlich zeitaufwändig, aber man lernt dabei zumindest ein bisschen.

Schöne Grüße und Danke für die bisherige Mühe mit den tollen TRX-Modulen!

Ben

BenWend

#3
Hallo Willi,

hier der Vollständigkeit halber der von Dir bereits angesprochene Workaround (für alle, die Ähnliches vorhaben):


define DeckenlampeWZ dummy
attr DeckenlampeWZ room Lichtschalter
attr DeckenlampeWZ webCmd toggle

define DeckenlampeWZtoggle notify DeckenlampeWZ:toggle.* \
{if (Value("Lichtschalter_11") eq "on"){fhem "set Lichtschalter_11 off"} \
else \
{fhem "set Lichtschalter_11 on"} \
}


Vielen Dank und schöne Grüße

Ben