FHEM Forum

FHEM => fhem-users => Thema gestartet von: Guest am 02 Juni 2011, 09:50:02

Titel: FB7390 Labor - CUL nicht erkannt
Beitrag von: Guest am 02 Juni 2011, 09:50:02
Originally posted by: <email address deleted>

Hi,
bin zugegebenermassen nicht besonders firm in flashen, Linux etc.
Hier der aktuelle Stand:

- Labor-Firmware auf FB7390 installiert (fhem-update.84.05.04-19798)
- CUL V3.2 kam gestern - ohne Firmware. Da ich keine brauchbare
Anleitung zum installieren von dfu-programmer auf der fb gefunden
habe, geflashed am Windows-PC mittels Flip3.4.3 mit hex-file v3
release 1.8 (http://cvs.berlios.de/cgi-bin/viewvc.cgi/culfw/culfw/
Devices/CUL/CUL_v3.hex)
-  am Win-PC wird CUL868 im Geräte-Mgr angezeigt - wenn auch mit
Warnung - vermutlich, da ich den CUL-Win-Treiber nicht  installiert
hab. Den brauch ich aber auch nicht.

Beim einstecken in die FB7390 blinkt die LED am CUL.
An der FB erscheint im log:
02.06.11   09:12:56   Es wurde ein nicht unterstütztes USB-Gerät
angeschlossen.
02.06.11   09:12:56   USB-Gerät 2002, Klasse 'USB 1.1 (full-speed) bulk',
angesteckt
Habe bereits den USB-Fernanschluss aktiviert/deaktiviert -> USB-
Erkennung lief durch.

In Linux folgendes Bild:
lsusb bringt 3 devices, u.a.:
BUS=002
DEV=002
VID=03eb
PID=204b
CLS=02
SCL=00
SPEED='full'
VER='1.1'
ISOC=0
INUM=2
ICLS1=02
ISCL1=02
ICLS2=10
ISCL2=00
Der CUL wird also offenbar zumindest als USB-Gerät erkannt.

Unter /dev erscheinen  ttyUSBn mit n=0..7
ls -l /dev/ttyUSBn  bringt das heutige Datum für alle devices

>>>>>>Aber kein ttyACM0<<<<<<<

Hier also die ersten drei Fragen - ich fürchte es kommen später noch
mehr....

1. Kann ich prüfen, ob das flashen des CUL korrekt funktioniert hat?
2. Wie bekomme ich mein heiss ersehntes ttyACM0?
3. Meine FB bringt bei http://fritz.box:8083 nur einen Seiten-
Ladefehler - obgleich auf der AVM-Seite steht, dass FHEM nun auch bei
nicht-angeschlossenem CUL gestartet wird - oder?

Schon im Voraus vielen Dank für eure Hilfe,
Gruß, Uli

PS: falls Linux-Schritte erforderlich sind, schickt mir BITTE die
genauen commands - am besten für copy+paste - Danke!  :-)

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: FB7390 Labor - CUL nicht erkannt
Beitrag von: Guest am 02 Juni 2011, 10:52:10
Originally posted by: <email address deleted>

Nachtrag:
Beim Durchlauf der USB-Erkennung (USB-Fernanschluss deaktivieren/
aktivieren) erscheint eine Fehlermeldung:
# rmmod: vfat
rmmod: fat
rmmod: nls_cp437
rmmod: nls_iso8859-1
rmmod: sd_mod
rmmod: ext2
rmmod: usb-storage
rmmod: scsi_mod
rmmod: vfat
rmmod: fat
rmmod: nls_cp437
rmmod: nls_iso8859-1
rmmod: sd_mod
rmmod: ext2
rmmod: usb-storage
rmmod: scsi_mod
stopping aurad
killall: aurad: no process killed
OHCI USB 1.1 Host stopped
EHCI USB 2.0 Host stopped
mount: mounting sysfs on /sys failed: Device or resource busy
EHCI USB 2.0 Host started
OHCI USB 1.1 Host started

Hat aurad/sysfs einen Einfluss?

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: FB7390 Labor - CUL nicht erkannt
Beitrag von: Guest am 02 Juni 2011, 12:53:51
Originally posted by: <email address deleted>

Hi, gerade noch eine weitere Stunde gegoogelt und gelesen.
Offenbar wurde FHEM trotz Labor-Version gar nicht richtig installiert.
Im FritzNAS gibt's zwar nen Ordner fhem, der ist aber leer.
in ps weder fhem noch perl zu sehen.
Oh Mann - stehe offenbar noch viel tiefer im Wald als ich dachte.

Meine Erwartungshaltung war: Firmware-Update drauf, CUL rein - und ab
geht's mit der FHEM Konfiguration der Sensoren/Aktoren konfigurieren,
alles schick.
Stattdessen häng ich im Formware-Sumpf fest :-(

Hat jemand nen Tipp wie ich FHEM erstmal vernünftig installiert krieg?
Muss ich irgendein tar installieren/entpacken oder wasß

Frustige Grüße,
Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: FB7390 Labor - CUL nicht erkannt
Beitrag von: Guest am 02 Juni 2011, 15:24:41
Originally posted by: <email address deleted>

Ui, peinlich.
Beim siebzehnten Durchlesen hab ich den entscheidenden kleinen Punkt
nicht mehr überlesen:
Vor dem Install der FHEM-Firmwareversion MUSS eine Laborverseion auf
der FB gewesen sein.
Also: Erst 'normale' Labor-Firmware auf die 7390, erst DANACH die FHEN-
Firmware.
Jetzt geht's - ttyACM0 ist da, erscheint in FHEM als initialisiert.

Im Moment kämpfe ich noch damit, dass keine FS20-Geräte erkannt werden
(trotz autocreate nix zu sehen), hoffe das wird noch.

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Re: FB7390 Labor - CUL nicht erkannt
Beitrag von: Guest am 02 Juni 2011, 18:52:15
Originally posted by: <email address deleted>

Am 02.06.2011 15:24, schrieb UliM:

> Im Moment kämpfe ich noch damit, dass keine FS20-Geräte erkannt werden
> (trotz autocreate nix zu sehen), hoffe das wird noch.

Bei den Aktoren wirst Du dich mit autocreate auch schwer tun, die senden
ja nicht. Die darfst Du manuell anlernen. Also in Anlernmodus bringen
und dann einen "set" Befehl absetzen.

-Manfred

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Toggle-Array verfgbar? (Re: FB7390 Labor - CUL nicht erkannt)
Beitrag von: Guest am 03 Juni 2011, 08:36:18
Originally posted by: <email address deleted>

Hi Manfred,
danke für den Hinweis - so langsam bekomme ich etwas Bodenhaftung.
Heute geht's in den Laden, noch einen Schwung Sensoren und Aktoren
holen.

Schlage mich gerade mit 'Toggle' rum, das einfache Beispiel in den
Howtos hab ich gefunden, suche gerade nach einem verfügbaren
(fertigen) Codestück, bei dem ich nur noch ein Array füllen muss, das
dann die Umsetzug in Defines bereits kann, also zB

Sensor            Aktor
wzTaster1       wzLicht3
ezTaster1       ezLicht2
gzTaster1       gzLicht1
coTaster1       structureHome

Habe wirklich reichlich gegoogelt, aber bisher nix gefunden.  Kann mir
bitte jemand nen Tipp (oder Code ;-) geben?

Gruß, Uli

PS: Habe mal meine ganzen Stolpersteine mit Lösungen aufgeschrieben,
vll wird ein 'FHEM FB7390 for dummies' draus)

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Toggle-Array verfgbar? (Re: FB7390 Labor - CUL nicht erkannt)
Beitrag von: rudolfkoenig am 03 Juni 2011, 09:40:29
                                                   

> Howtos hab ich gefunden, suche gerade nach einem verfügbaren
> (fertigen) Codestück, bei dem ich nur noch ein Array füllen muss, das
> dann die Umsetzug in Defines bereits kann, also zB

Ich wuerde es mit gut gewaehlten Namen loesen: wenn gilt dass xxxTaster immer
xxxLicht schaltet, dann wuerde folgendes notify funktionieren:

define Taster2Licht notify .*Taster {\
  my $aktor = "@";;\
  $aktor =~ s/Taster/Licht/;;\
  fhem("set $aktor %");;\
}

Eine Alternative ist die Taster direkt an den Aktoren anzulernen, fhem kann
diese auch schalten und kriegt auch den Status mit.

Wenn es unbedingt ein Array sein soll, dann kann man das in 99_MyUtils.pm
einbauen (fuer Fortgeschrittene :)

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Toggle-Array verfgbar? (Re: FB7390 Labor - CUL nicht erkannt)
Beitrag von: Guest am 03 Juni 2011, 21:02:30
Originally posted by: <email address deleted>

On 3 Jun., 09:40, Rudolf Koenig wrote:
> Eine Alternative ist die Taster direkt an den Aktoren anzulernen, fhem kann
> diese auch schalten und kriegt auch den Status mit.

Diese Idee hab ich doch glatt aufgegriffen :-)

S4A als Taster konfiguriert
Direkt mit ST-2 gepairt
Taster in FHEM definiert  (heisst wie die zu steuernde Lampe am Regal
im Esszimmer: ezLichtRegal)
Funktioniert prima - bis auf zwei kleine Haesslichkeiten....

Meine cfg:
define ezLichtRegal FS20 6969 00
attr ezLichtRegal model FS20S4A

define ezLichtRegalSwitch NOTIFY ezLichtRegal { \
if ("%" eq "toggle"){ \
   if ($oldvalue{"ezLichtRegal"}{VAL} eq "off") { \
     {fhem "setstate ezLichtRegal on"}\
   }\
   else { \
     {fhem "setstate ezLichtRegal off"} \
   } \
 } \
 else { \
   {fhem "setstate ezLichtRegal %"} \
 } \
}

Also quasi die Umsetzung von
http://groups.google.com/group/fhem-users/browse_thread/thread/655f79d68d34933/5af843d4a2586d81?lnk=gst&q=setstate+geht+nicht#5af843d4a2586d81

Kleines Problem:
Toggeln ändert durch setstate den STATE von ezLichtRegal ganz prima -
nur wird das webfrontend nicht refreshed. Das Gluehbirnen-Icon bleibt
'aus' auch wenn STATE ON ist.  ZB nach klicken auf 'All together' wird
das icon korrekt angezeigt.
Wie kann ich aus dem code heraus ein refresh des webfrontend triggern?

Grosses Problem:
Das Mitschalten von STATE beim toggeln funktioniert nur genau einmal,
da über setstate zwar $value, aber nicht $oldvalue angepasst wird.
Ich versuch's mal als Tabelle darzustellen:

---Betaetigt---------------  --STATE--  --OLDSTATE--
Webfrontend-Klick-On       on                  egal
Webfrontend-Klick-Off       off                   on
Taster-Toggle                     on                   off
Taster-Toggle                     off                toggle  (und eben
NICHT off - das ist das Problem)

Kann man im code oben zusätzlich zu (setstate ezLichtRegal) auch den
Inhalt von ($oldvalue{"ezLichtRegal"}{VAL})  überschreiben?
Oder statt $oldvalue eine Dummy-Variable verwenden? Wie definieren und
einbinden?

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Re: Toggle-Array verfgbar? (Re: FB7390 Labor - CUL nicht erkannt)
Beitrag von: rudolfkoenig am 04 Juni 2011, 10:42:16
                                                   

> Wie kann ich aus dem code heraus ein refresh des webfrontend triggern?

Gar nicht. Das Web-Frontend muesste die Daten selber abholen, z.Bsp mit einem
JavaScript Prograemmchen. Ich selber will aber kein regelmaessiges Refresh,
fuer eine am Wand haengende Anzeige waere das aber wichtig.


> Grosses Problem:
> Das Mitschalten von STATE beim toggeln funktioniert nur genau einmal,
> da über setstate zwar $value, aber nicht $oldvalue angepasst wird.

Ist wohl ein Bug, habs (hoffentlich) gefixed und ins CVS eingecheckt.
Kannst Du es bitte testen?

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Toggle-Array verfgbar? (Re: FB7390 Labor - CUL nicht erkannt)
Beitrag von: Guest am 04 Juni 2011, 13:17:22
Originally posted by: <email address deleted>

On 4 Jun., 10:42, Rudolf Koenig wrote:
> Kannst Du es bitte testen?

Erledigt :-) Ein wenig Nacharbeit wird's noch erfordern :-(

Habe mal ein paar Zusatzeinträge ins Log genommen, damit man sieht,
was passiert.

define ezLichtRegalSwitch notify ezLichtRegal { \
if ("%" eq "toggle"){ \
   {Log 1, "Vorher : Value ist    ".$value{"ezLichtRegal"}} \
   {Log 1, "Vorher : Oldvalue ist ".($oldvalue{"ezLichtRegal"}{VAL})}\
   if ($oldvalue{"ezLichtRegal"}{VAL} eq "off") { \
     {fhem "setstate ezLichtRegal on"}\
     {Log 1, "Change : setstate ezLichtRegal on"}\
   }\
   else { \
     {fhem "setstate ezLichtRegal off"} \
     {Log 1, "Change : setstate ezLichtRegal off"}\
   } \
 } \
 else { \
   {fhem "setstate ezLichtRegal %"} \
 } \
{Log 1, "Nachher: Value ist    ".$value{"ezLichtRegal"}} \
{Log 1, "Nachher: Oldvalue ist ".($oldvalue{"ezLichtRegal"}{VAL})}\
}

Ergebnis:
2011.06.04 13:03:58 2: FS20 set ezLichtRegal on
2011.06.04 13:03:59 1: Nachher: Value ist    on
2011.06.04 13:03:59 1: Nachher: Oldvalue ist on
2011.06.04 13:04:02 2: FS20 set ezLichtRegal off
2011.06.04 13:04:02 1: Nachher: Value ist    off
2011.06.04 13:04:02 1: Nachher: Oldvalue ist off  <2011.06.04 13:04:06 2: FS20 set ezLichtRegal on
2011.06.04 13:04:06 1: Nachher: Value ist    on
2011.06.04 13:04:06 1: Nachher: Oldvalue ist on <2011.06.04 13:04:10 2: FS20 set ezLichtRegal off
2011.06.04 13:04:10 1: Nachher: Value ist    off
2011.06.04 13:04:10 1: Nachher: Oldvalue ist off <2011.06.04 13:04:16 2: FS20 ezLichtRegal toggle
2011.06.04 13:04:16 1: Vorher : Value ist    toggle
2011.06.04 13:04:16 1: Vorher : Oldvalue ist off  <2011.06.04 13:04:16 1: Change : setstate ezLichtRegal on
2011.06.04 13:04:16 1: Nachher: Value ist    toggle <setstate geaendert werden muessen
2011.06.04 13:04:16 1: Nachher: Oldvalue ist toggle
2011.06.04 13:04:30 2: FS20 ezLichtRegal toggle
2011.06.04 13:04:30 1: Vorher : Value ist    toggle
2011.06.04 13:04:30 1: Vorher : Oldvalue ist toggle
2011.06.04 13:04:30 1: Change : setstate ezLichtRegal off
2011.06.04 13:04:30 1: Nachher: Value ist    toggle <setstate geaendert werden muessen
2011.06.04 13:04:30 1: Nachher: Oldvalue ist toggle

Was mir auffällt:  Wenn ich im Frontend auf die Eigenschaften von
ezLichteRegal klicke, wird die Variable state 2x angezeigt:
Einmal im 'regulaeren' Block in Grossbuchstaben. Ausserdem einmal ganz
oben in Kleinbuchstaben (mit Zeitstempel bei 'Measured'). Schicke Dir
gerne einen sccreenshot.
Die Variablen werden auch unterschiedlich belegt: Waehrend nach dem
letzten Schritt state=toggle, ist STATE=off.
Offenbar liest $value{} das (kleingeschriebene) state aus, setstate
setzt aber das (grossgeschriebene) STATE.

Im Moment scheinen weder $value{} noch $oldvalue{} die richtigen Werte
zu liefern.  Kannst Du bitte noch mal schauen?
Oder hab ich irgendwo einen Denkfehler?

Danke + Gruss,
Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Re: Toggle-Array verfgbar? (Re: FB7390 Labor - CUL nicht erkannt)
Beitrag von: rudolfkoenig am 05 Juni 2011, 13:29:34
                                                   

> Erledigt :-) Ein wenig Nacharbeit wird's noch erfordern :-(

Stimmt. Jetzt muesste es tun, habs mit deinem notify geprueft.

Nicht erschrecken: Nachher $value ist zwar falsch, aber das relevante
$defs{ezLichtRegal}{STATE} ist korrekt. Ursache: $value wird nur einmal vor
einem Perl-Notify Aufruf mit den Werten aller $defs{NAME}{STATE} gefuelt.

Da mich das fuellen aller Gerete ins $value vor jedem Perl-Notify bzw. Perl-At
stoert, moechte ich auf Funktionen als Schnittstelle umsteigen, analog zu
ReadingsVal():
  $value{NAME}          => Value("NAME")
  $oldvalue{NAME}{VAL}  => OldValue("NAME")
  $oldvalue{NAME}{TIM}  => OldTimestamp("NAME")

Diese Funktionen sind frisch im CVS, und $value wird in dem naechsten
fhem-Release verschwinden. Es sei denn ich werde ueberstimmt.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Toggle, $value{}, $oldvalue{]{VAL} -> value(), oldvalue()
Beitrag von: Guest am 05 Juni 2011, 15:21:28
Originally posted by: <email address deleted>

On 5 Jun., 13:29, Rudolf Koenig wrote:

Hallo Rudi,
wow, das ging superschnell und sieht ja doch nach ner umfangreichen
Aenderung aus.

> Stimmt. Jetzt muesste es tun, habs mit deinem notify geprueft.
Kannst Du mir bitte Deine Version des ezLichtRegalSwitch schicken,
komme im Moment mit der Nutzung/Einbindung/Aufruf der neuen Routinen
nicht klar:
   {Log 1, 'Nachher: $Value{}    ist '.$value{"ezLichtRegal"}} \
   {Log 1, 'Nachher: Value()     ist '.value("ezLichtRegal")} \
<
Habe lediglich fhem.pl frisch aus dem cvs geholt - müssen noch andere
Dateien refreshed werden?
Meine Arbeitsgrundlage: fhem in der AVM-Version, fhm.pl gestern
uebergebuegelt mit der Zwischenversion zu $oldvalue{}{VAL}.

>  $value wird in dem naechsten
> fhem-Release verschwinden. Es sei denn ich werde ueberstimmt.
Bin nicht sicher, wieviele Installationen auf die bisherigen Routinen
$value und $oldvalue zugreifen - das koennte ja fuer einige Nutzer
doch umfangreichere Aenderungen mit sich bringen - auch bin ich nicht
sicher, ob jeder, der fhem nutzt, hier staendig mitliest.  Wenn diese
Umstellung in den Release-Notes hinreichend deutlich gemacht wird,
m.E. ok.
Evtl die alten Versionen noch einen Release-Zyklus co-existieren
lassen?

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Toggle, $value{}, $oldvalue{]{VAL} -> value(), oldvalue()
Beitrag von: Guest am 05 Juni 2011, 15:44:24
Originally posted by: <email address deleted>

{Log 1, 'Nachher: $Value{}    ist '.$value{"ezLichtRegal"}} \
   {Log 1, 'Nachher: Value()     ist '.fhem "value('ezLichtRegal')"} \
liefert Fehlermeldung:
2011.06.05 15:42:15 2: FS20 set ezLichtRegal off
2011.06.05 15:42:15 1: Nachher: $Value{}    ist off
2011.06.05 15:42:15 3: value('ezLichtRegal') : Unknown command
value('ezLichtRegal'), try help

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Re: Toggle, $value{}, $oldvalue{]{VAL} -> value(), oldvalue()
Beitrag von: Dr. Boris Neubert am 05 Juni 2011, 18:02:29
                                             

Am 05.06.2011 15:44, schrieb UliM:
>     {Log 1, 'Nachher: $Value{}    ist '.$value{"ezLichtRegal"}} \
>     {Log 1, 'Nachher: Value()     ist '.fhem "value('ezLichtRegal')"} \
> liefert Fehlermeldung:
> 2011.06.05 15:42:15 2: FS20 set ezLichtRegal off
> 2011.06.05 15:42:15 1: Nachher: $Value{}    ist off
> 2011.06.05 15:42:15 3: value('ezLichtRegal') : Unknown command
> value('ezLichtRegal'), try help

Du hast ein $ vergessen.

Grüße
Boris

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Toggle, $value{}, $oldvalue{]{VAL} -> value(), oldvalue()
Beitrag von: Guest am 05 Juni 2011, 19:33:06
Originally posted by: <email address deleted>

On 5 Jun., 18:02, "Dr. Boris Neubert" wrote:
> Am 05.06.2011 15:44, schrieb UliM:

> Du hast ein $ vergessen.

Fast :-)
Siehe post von Rudi oben - es gibt neue Routinen:
  $value{NAME}                => Value("NAME")
  $oldvalue{NAME}{VAL}  => OldValue("NAME")
  $oldvalue{NAME}{TIM}  => OldTimestamp("NAME")

Ich habe Gross/Kleinschreibung uebersehen.

Funktioniert nicht:
   {Log 1, 'Vorher : Value()     ist '.value("ezLichtRegal")} \
   {Log 1, 'Nachher: Oldvalue()  ist '.oldvalue("ezLichtRegal")}\

Funktioniert:
   {Log 1, 'Vorher : Value()     ist '.Value("ezLichtRegal")} \
   {Log 1, 'Nachher: Oldvalue()  ist '.OldValue("ezLichtRegal")}\



Hier also das Ergebnis - die umgestellte Routine:

define ezLichtRegalSwitch notify ezLichtRegal { \
if ("%" eq "toggle"){ \
   {Log 1, 'Vorher : Value()     ist '.Value("ezLichtRegal")} \
   {Log 1, 'Vorher : OldValue()  ist '.OldValue("ezLichtRegal")}\
   if (OldValue("ezLichtRegal") eq "off") { \
     {fhem "setstate ezLichtRegal on"}\
     {Log 1, "Change : setstate ezLichtRegal on"}\
   }\
   else { \
     {fhem "setstate ezLichtRegal off"} \
     {Log 1, "Change : setstate ezLichtRegal off"}\
   } \
 } \
 else { \
   {fhem "setstate ezLichtRegal %"} \
 } \
   {Log 1, 'Nachher: Value()     ist '.Value("ezLichtRegal")} \
   {Log 1, 'Nachher: OldValue()  ist '.OldValue("ezLichtRegal")}\
}

Das Log:
2011.06.05 19:01:49 2: FS20 set ezLichtRegal on
2011.06.05 19:01:49 1: Nachher: Value()     ist on
2011.06.05 19:01:49 1: Nachher: OldValue()  ist on
2011.06.05 19:01:58 2: FS20 set ezLichtRegal off
2011.06.05 19:01:58 1: Nachher: Value()     ist off
2011.06.05 19:01:58 1: Nachher: OldValue()  ist off  <OldValue noch off sein?
2011.06.05 19:02:07 2: FS20 ezLichtRegal toggle
2011.06.05 19:02:07 1: Vorher : Value()     ist toggle
2011.06.05 19:02:07 1: Vorher : OldValue()  ist off  << zu diesem
Zeitpunkt ist OldValue off korrekt
2011.06.05 19:02:07 1: Change : setstate ezLichtRegal on
2011.06.05 19:02:07 1: Nachher: Value()     ist on
2011.06.05 19:02:07 1: Nachher: OldValue()  ist on  <OldValue noch off sein?
2011.06.05 19:02:17 2: FS20 ezLichtRegal toggle
2011.06.05 19:02:17 1: Vorher : Value()     ist toggle
2011.06.05 19:02:17 1: Vorher : OldValue()  ist on << zu diesem
Zeitpunkt ist OldValue on korrekt
2011.06.05 19:02:17 1: Change : setstate ezLichtRegal off
2011.06.05 19:02:17 1: Nachher: Value()     ist off
2011.06.05 19:02:17 1: Nachher: OldValue()  ist off  <OldValue noch on sein?
2011.06.05 19:02:24 2: FS20 ezLichtRegal toggle
2011.06.05 19:02:24 1: Vorher : Value()     ist toggle
2011.06.05 19:02:24 1: Vorher : OldValue()  ist off << zu diesem
Zeitpunkt ist OldValue off korrekt
2011.06.05 19:02:24 1: Change : setstate ezLichtRegal on
2011.06.05 19:02:24 1: Nachher: Value()     ist on
2011.06.05 19:02:24 1: Nachher: OldValue()  ist on <OldValue noch off sein?

Fazit: Fuer die oben gezeigte Routine ist das Ergebnis das gewuenschte
- nach Toggle wird durch die Routine in das jeweils richtige STATE
umgesetzt.
Der Zeitpunkt des Setzens von OldState() koennte aber in anderen
Umgebungen/Routinen zu Problemen fuehren.
M.E. duerfte OldValue() von 'setstate' nicht beeinflusst werden; es
darf nur bei der Verarbeitung von 'set' umgesetzt werden - dann durch
Uebernahme aus STATE.

@Rudi: Feilst Du da noch mal nach?
Wie waere es, diese Routine in den 'define'-Befehl einzubauen, zB
aktiviert durch ein Attribut (attr toggleconversion 1) , dann
koennte man jeglichen Taster so auffangen.

Gruss, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Re: Toggle, $value{}, $oldvalue{]{VAL} -> value(), oldvalue()
Beitrag von: rudolfkoenig am 05 Juni 2011, 20:28:08
                                                   

> @Rudi: Feilst Du da noch mal nach?

Hatte nicht vor.


> Wie waere es, diese Routine in den 'define'-Befehl einzubauen, zB
> aktiviert durch ein Attribut (attr toggleconversion 1) , dann
> koennte man jeglichen Taster so auffangen.

Ich nehme sinnvolle Patches gerne entgegen.  Btw nicht define sondern
FS20_Parse.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Untoggle(<device>)
Beitrag von: Guest am 06 Juni 2011, 22:32:54
Originally posted by: <email address deleted>

Hallo,
nach Rudis tatkraeftiger unterstuetzung und viel Basteln darf ich nun
also meine allererste Perl-Routine vorstellen: Untoggle("")

Effekt:
Wird ein device durch einen Taster bedient, wird das gesendete
'toggle' umgesetzt in 'on' bzw. 'off' , so dass auf dem Webfrontend
nicht 'toggle', sondern die gewohnte Glühbirne erscheint.

Implementierung:
Den folgenden code im Verzeichnis /opt/fhem/share/FHEM in die Datei
99_myUtils.pm kopieren.
(Falls es diese Datei noch nicht gibt: /opt/fhem/share/FHEM/
99_Utils.pm kopieren, Kopie in 99_myUtils.pm umbenennen und aus dieser
Kopie alle vorhandenen Routinen löschen - aber die Definitionen vor
dem ersten "sub" und die "1;" am Ende stehen lassen).
>>>>fhem nach shutdown NEU STARTEN<<<<

sub
Untoggle($)
{
 my ($obj) = @_;

 if (Value($obj) eq "toggle"){
   if (OldValue($obj) eq "off") {
     {Log 1, "Untoggle ".$obj." toggle -> on"}
     {fhem ("setstate ".$obj." on")}
   }
   else {
     {fhem ("setstate ".$obj." off")}
     {Log 1, "Untoggle ".$obj." toggle -> off"}
   }
 }
 else {
   {fhem "setstate ".$obj." ".Value($obj)}
 }
}


Einbindung in fhem.cfg :
define notify {Untoggle("")}
Es muesste auch gehen:
define notify {Untoggle("")}  #nicht getestet

Beispiel aus dem obigen Verlauf dieses Posts:
define ezLichtRegalSwitch notify ezLichtRegal
{Untoggle("ezLichtRegal")}

Hinweise:
1. muss sich zuvor einmal im state 'on' oder 'off' befunden
haben - z.B. nach fhem-Neustart das erste mal mit on oder off im
webfrontend schalten, dann mit dem Taster los-toggeln.
2. Die Änderung des Status nach toggle wird auf dem Webfrontend erst
nach einem manuellen refresh sichtbar, also zB noch einmal links den
Raum anklicken oder im Browser F5 drücken.

Bin ja mal gespannt ob das ausser mir noch jemand braucht :-)

Gruss, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 07 Juni 2011, 09:04:40
Originally posted by: <email address deleted>

Hi,

stellst Du das auch ins Wiki? Wäre prima! ...

Gruß

marte

Am 06.06.2011 22:32, schrieb UliM:
> Hallo,
> nach Rudis tatkraeftiger unterstuetzung und viel Basteln darf ich nun
> also meine allererste Perl-Routine vorstellen: Untoggle("")
>
> Effekt:
> Wird ein device durch einen Taster bedient, wird das gesendete
> 'toggle' umgesetzt in 'on' bzw. 'off' , so dass auf dem Webfrontend
> nicht 'toggle', sondern die gewohnte Glühbirne erscheint.
>
> Implementierung:
> Den folgenden code im Verzeichnis /opt/fhem/share/FHEM in die Datei
> 99_myUtils.pm kopieren.
> (Falls es diese Datei noch nicht gibt: /opt/fhem/share/FHEM/
> 99_Utils.pm kopieren, Kopie in 99_myUtils.pm umbenennen und aus dieser
> Kopie alle vorhandenen Routinen löschen - aber die Definitionen vor
> dem ersten "sub" und die "1;" am Ende stehen lassen).
>
> sub
> Untoggle($)
> {
>   my ($obj) = @_;
>
>   if (Value($obj) eq "toggle"){
>     if (OldValue($obj) eq "off") {
>       {Log 1, "Untoggle ".$obj." toggle ->  on"}
>       {fhem ("setstate ".$obj." on")}
>     }
>     else {
>       {fhem ("setstate ".$obj." off")}
>       {Log 1, "Untoggle ".$obj." toggle ->  off"}
>     }
>   }
>   else {
>     {fhem "setstate ".$obj." ".Value($obj)}
>   }
> }
>
>
> Einbindung in fhem.cfg :
> define  notify  {Untoggle("")}
> Es muesste auch gehen:
> define  notify  {Untoggle("")}  #nicht getestet
>
> Beispiel aus dem obigen Verlauf dieses Posts:
> define ezLichtRegalSwitch notify ezLichtRegal
> {Untoggle("ezLichtRegal")}
>
> Hinweise:
> 1.  muss sich zuvor einmal im state 'on' oder 'off' befunden
> haben - z.B. nach fhem-Neustart das erste mal mit on oder off im
> webfrontend schalten, dann mit dem Taster los-toggeln.
> 2. Die Änderung des Status nach toggle wird auf dem Webfrontend erst
> nach einem manuellen refresh sichtbar, also zB noch einmal links den
> Raum anklicken oder im Browser F5 drücken.
>
> Bin ja mal gespannt ob das ausser mir noch jemand braucht :-)
>
> Gruss, Uli
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 07 Juni 2011, 17:03:15
Originally posted by: <email address deleted>

Aber klar, denn ich betreibe ca. 20 FS20-Devices via Toggle. Hatte
wegen meiner Entwicklung am SVG-Modul und bei meinem Wechselrichter
aber noch keine Zeit, das zu implementieren - und bedanke mich deshalb
ganz herzlich.

Kleiner Tipp noch: Auseinandergenommene FHTTK Tür-Fenster-Kontakte
kann man wunderbar als Rückmelder für das FS20-System einsetzen. Das
spart bei kritischen Systemem (z.B. meiner Bewässerungsanlage ...)
viel Stress beim "Toggeln".

Gruß

Peter A. Henning

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 07 Juni 2011, 17:24:57
Originally posted by: <email address deleted>

Ach ja, noch ein Tipp: Das "manuelle refresh" kann man dadruch
überflüssig machen, dass man in das
-Tag der dynamisch erzeugten Webseite einträgt

onload="setTimeout('location.reload()',300000)"

Das ist ein einfacher patch im FHEMWEB. Dann wird nach 5 Minuten
automatisch ein Reload gemacht - für einminütiges Update bitte 60000
als Wert nehmen.

Und wer sich für eine Übersicht über die perl-Programmierung
interessiert: Das perl-Kapitel in unserem "Handbuch
Programmiersprachen" stammt von mir selbst, ist bei Google Books frei
abrufbar.

Gruß

Peter A. Henning

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 07 Juni 2011, 18:32:52
Originally posted by: <email address deleted>

Und noch ein Nachtrag: Das Programm solltest Du aber noch mal
überprüfen ...

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 08 Juni 2011, 07:48:07
Originally posted by: <email address deleted>

On 7 Jun., 18:32, pahenning wrote:
> Und noch ein Nachtrag: Das Programm solltest Du aber noch mal
> überprüfen ...

Hallo,
@pahenning: Stimmt, in den Implementierungsanweisungen fehlt ein
Schritt, hier noch mal alle Schritte zusammengefasst:

Implementierung:
Den folgenden code im Verzeichnis /opt/fhem/share/FHEM in die Datei
99_myUtils.pm kopieren.
(Falls es diese Datei noch nicht gibt: /opt/fhem/share/FHEM/
99_Utils.pm kopieren, Kopie in 99_myUtils.pm umbenennen und aus dieser
Kopie alle vorhandenen Routinen löschen - aber die Definitionen vor
dem ersten "sub" und die "1;" am Ende stehen lassen).
Ausserdem bedient sich Untoggle neuer Funktionen, die von Rudi in der
fhem-Revision 1142 bereitgestellt wurden (siehe weiter oben im post
05.06.2011 13:29). Daher muss ausserdem die fhem.pl mit Revisionsstand
>=1142 aus http://cvs.berlios.de/cgi-bin/viewvc.cgi/fhem/fhem/
heruntergeladen und im Verzeichnis /opt/fhem/bin durch ueberschrieben
platziert werden.
Danach fhem mit dem Befehl 'shutdown' beenden und dann NEU STARTEN.


@pahenning: Bitte gib kurz bescheid ob's damit funktioniert - oder
meintest Du etwas anderes? Dann bitte erstmal per mail :-)

@marte - stell ich gerne ins Wiki - kannst Du mir bitte ne mail mit
dem Link schicken und ein paar kurzen Tipps, wie man dort einen
Beitrag einstellt und welche Konventionen dabei einzuhalten sind (vll
gibt's ja wiederum nen link unter dem das steht :-)

@Peter:  vielen Dank fuer den Tipp mit auto-refresh. Werd's
ausprobieren und ggf mit in den Wiki-Eintrag aufnehmen. Oder machst Du
dafuer nen separaten Wiki-Eintrag?
Rueckmelder klingt prima - kannst Du Deinen Tipp mit FHTTK bitte etwas
weiter beschreiben - so versteh ich's noch nicht.

Klasse dass es hier zusaetzlich zu einem super Produkt fhem auch ne
funktionierende Community gibt :-)

Gruss, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Re: Untoggle(<device>)
Beitrag von: rudolfkoenig am 08 Juni 2011, 08:59:58
                                                   

> Danach fhem mit dem Befehl 'shutdown' beenden und dann NEU STARTEN.

Oder
fhem> reload 99_myUtils

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 08 Juni 2011, 18:13:09
Originally posted by: <email address deleted>

Das, was fehlte, war der Hinweis auf die fhem.pl-Version. testen kann
ich frühestens Samsatg, mein Terminkalender ist
rappelvoll - inklusive der Abende ...

Die Verzeichnisangabe ist übrigens sehr stark systemabhängig,
aufgepasst.

Gruß

Peter A. Henning

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 21 Juni 2011, 01:51:42
Originally posted by: <email address deleted>

Hallo,

wenn ich genau so vorgehe, erhalte ich fortlaufend die Fehler:
Use of uninitialized value in pattern match (m//) at /usr/share/fhem/
FHEM/01_FHEMWEB.pm line 875.
Use of uninitialized value $1 in concatenation (.) or string at /usr/
share/fhem/FHEM/01_FHEMWEB.pm line 876.
Use of uninitialized value in hash element at ./fhem.pl line 2108.

die fhem.pl-Version ist die erwähnte aus dem Archiv.

Die Definition in fhem.pl
define tc6.1.toggle notify tc6.1 {untoggle("tc6.1")}

99_myUtils sieht wie folgt aus:
package main;
use strict;
use warnings;
use POSIX;

sub myUtils_Initialize($$)
{
  my ($hash) = @_;
}

sub untoggle($)
{
 my ($obj) = @_;

 if (Value($obj) eq "toggle"){
   if (OldValue($obj) eq "off") {
     {Log 1, "untoggle ".$obj." toggle -> on"}
     {fhem ("setstate ".$obj." on")}
   }
   else {
     {fhem ("setstate ".$obj." off")}
     {Log 1, "untoggle ".$obj." toggle -> off"}
   }
 }
 else {
   {fhem "setstate ".$obj." ".Value($obj)}
 }
}

1;


On 8 Jun., 18:13, pahenning wrote:
> Das, was fehlte, war der Hinweis auf die fhem.pl-Version. testen kann
> ich frühestens Samsatg, mein Terminkalender ist
> rappelvoll - inklusive der Abende ...
>
> Die Verzeichnisangabe ist übrigens sehr stark systemabhängig,
> aufgepasst.
>
> Gruß
>
> Peter A. Henning

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 02 Juli 2011, 18:46:04
Originally posted by: <email address deleted>

Hi,
hmmm... Funktioniert es denn (trotz der Fehlermeldungen im log)?
Kann es sein, dass Du eine frische fhem.pl heruntergeladen hast, Deine
fhemweb.pm aber schon älter ist? Lade doch bitte auch diese mal frisch
runter.
Hast Du vor dem ersten toggle mal ein ON oder OFF gesetzt, z.B. über's
webfrontend? Wenn das nicht der Fall ist, kann untoggle gar nicht tun,
da es abfragt, ob der OldValue on bzw off war.

Von anderen usern habe ich mails bekommen, dass es bei ihnen
funktioniert. Drum habe ich's nun auch ins Wiki gestellt:
http://fhemwiki.de/index.php/FS20_Toggle_Events_auf_On/Off_umsetzen

Gruß, Uli

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Aw: FB7390 Labor - CUL nicht erkannt
Beitrag von: Guest am 11 Juli 2011, 12:03:04
Originally posted by: <email address deleted>

Ich habe gerade die neu offizielle Firmware auf meine neue FB7390 gemacht
(die alte einem Gewitter zum Opfer gefallen).
Ich habe festgestellt, das diese der Versionsnummer aus dem Labor
entspricht. Darauf hin hab ich einfach die FHEM Firmware probiert

UND es geht!

Die offizielle Firmware-Version 84.05.04-20173 geht mit der FHEM -19798

PS: jetzt muß ich nur noch den CUL anstecken

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: FB7390 Labor - CUL nicht erkannt
Beitrag von: Guest am 18 Oktober 2011, 23:13:51
Originally posted by: <email address deleted>

Hallo,

ich muss mal den Thread wieder ausgraben, obwohl so alt ist er gar nicht.
Ich habe heute meine ersten Schaltsteckdosen bekommen und möchte diese gern
mit toggle schalten.
Das funktioniert auch richtig gut mit dem untoggle Kommando.

Nun würde ich aber auch gerne den richtigen Status in das TextLogFile des
Senders schreiben.
So wie es jetzt umgesetzt ist steht dort ja immer "toggle"
...

2011-10-18_22:58:25 wz_LampeSchrank toggle
2011-10-18_22:58:32 wz_LampeSchrank toggle
2011-10-18_23:03:16 wz_LampeSchrank toggle
2011-10-18_23:03:20 wz_LampeSchrank toggle

...

Kann man der untoggle Routine noch beibringen

... wz_LampeSchrank on

... wz_LampeSchrank off
ins eigentliche filelog zu schreiben?

Mit der Ergänzung bekommen ich zumindest einen Log Eintrag im fhem.log, aber
ich benötige den Eintrag im logfile für wz_LampeSchrank.

Damit würde dann auch der Plot sauber funktionieren.

Bin für jeden Tipp dankbar...
Gruß, Stefan




--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 30 Oktober 2012, 18:59:02
Originally posted by: <email address deleted>

Lieber Uli,

ich mal wieder ;)
ich versuche krampfhaft
http://www.fhemwiki.de/wiki/FS20_Toggle_Events_auf_On/Off_umsetzen
umzusetzen.

Folgende Ausgangssituation  habe ich.

Ich habe 3 Funksteckdosen FS20 an denen jeweils Lampen hängen. Diese habe
ich wie folgt definiert:

define lamp1 FS20 1234 56
attr lamp1 fm_type on-off
attr lamp1 model fs20st

define lamp2 FS20 1234 57
attr lamp2 fm_type on-off
attr lamp2 model fs20st

define lamp4 FS20 1234 59
attr lamp4 fm_type on-off
attr lamp4 model fs20st

Weiterhin habe ich einen FS20 Klingeltaster, den ich für das Schlaten
verwende:

define Schalter1 FS20 4bdb 00
attr Schalter1 fm_type on off

Nun habe ich die 3 Lampen zu einer Struktur zusammengefasst:

define wz_LichtAlle structure room lamp1 lamp2 lamp4

Bis jetzt habe ich das so und es funktioniert, allerdings nur mit den
Togglesymbolen im Webinterface.

define Lampenschalter1 notify Schalter2 set wz_LichtAlle toggle

Soweit sogut. Nun habe ich Deine wunderbare Anleitung gefunden und würde
gern ein on oder ein off auf im Floorplan/Webinterface sehen. Dazu habe ich
alles Mögliche versucht, bin aber zu überhaupt keinem Ergebnis gekommen, da
ich es einfach nicht verstehe.

Gestern habe ich die Version 5.3 installiert und in meiner 99_Utils.pm sind
die im Wiki beschriebenen Routinen bereits enthalten.

Kannst Du mir vielleicht noch einmal auf die Sprünge helfen?
Muss ich nun UntoggleDirect oder UntoggleInDirect verwenden? Ist
mein Klingeltaster oder meine strucutre "wz_LichtAlle"?

Oder habe ich einen generellen Denkfehler drin?

Sorry dass ich so blöd frage, aber ich stehe vor einem großen Rätsel.

LG
neo

Am Samstag, 2. Juli 2011 18:46:04 UTC+2 schrieb UliM:
>
> Hi,
> hmmm... Funktioniert es denn (trotz der Fehlermeldungen im log)?
> Kann es sein, dass Du eine frische fhem.pl heruntergeladen hast, Deine
> fhemweb.pm aber schon älter ist? Lade doch bitte auch diese mal frisch
> runter.
> Hast Du vor dem ersten toggle mal ein ON oder OFF gesetzt, z.B. über's
> webfrontend? Wenn das nicht der Fall ist, kann untoggle gar nicht tun,
> da es abfragt, ob der OldValue on bzw off war.
>
> Von anderen usern habe ich mails bekommen, dass es bei ihnen
> funktioniert. Drum habe ich's nun auch ins Wiki gestellt:
> http://fhemwiki.de/index.php/FS20_Toggle_Events_auf_On/Off_umsetzen
>
> Gruß, Uli
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: UliM am 30 Oktober 2012, 22:44:33
                                                 

Hiho,
die Benamsung der beiden Routinen bezieht sich darauf, ob die zu
untoggle-nden devices direkt oder indirekt gepaired sind.
In Deinem Fall vmtl. direkt (Aktor=Steckdose direkt am Schalter=Sensor
angelernt).
Also musst Du UntoggleDirect verwenden.

Ich nutze auch structure, bei mir sieht's so aus:

define ez_LichtAlle structure room ez_LichtRegal ez_Schreibtisch
ez_LichtVitrine
attr ez_LichtAlle clientstate_behavior relative
attr ez_LichtAlle clientstate_priority on off
attr ez_LichtAlle icon icoLicht.png
attr ez_LichtAlle room Esszimmer

define ez_Schreibtisch FS20 6969 00
attr ez_Schreibtisch icon icoLicht.png
attr ez_Schreibtisch model fs20st
attr ez_Schreibtisch room Esszimmer
define ez_SchreibtischSwitch notify ez_Schreibtisch
{UntoggleDirect("ez_Schreibtisch")}

define ez_LichtRegal FS20 6969 01
attr ez_LichtRegal icon icoLicht.png
attr ez_LichtRegal model fs20st
attr ez_LichtRegal room Esszimmer
define ezLichtRegalSwitch notify ez_LichtRegal
{UntoggleDirect("ez_LichtRegal")}

define ez_LichtVitrine FS20 6969 02
attr ez_LichtVitrine icon icoLicht.png
attr ez_LichtVitrine model fs20st
attr ez_LichtVitrine room Esszimmer
define ezLichtVitrineSwitch notify ez_LichtVitrine { UntoggleDirect("@") }





Am Dienstag, 30. Oktober 2012 18:59:02 UTC+1 schrieb neomorph:
>
> Lieber Uli,
>
> ich mal wieder ;)
> ich versuche krampfhaft
> http://www.fhemwiki.de/wiki/FS20_Toggle_Events_auf_On/Off_umsetzenumzusetzen.
>
> Folgende Ausgangssituation  habe ich.
>
> Ich habe 3 Funksteckdosen FS20 an denen jeweils Lampen hängen. Diese habe
> ich wie folgt definiert:
>
> define lamp1 FS20 1234 56
> attr lamp1 fm_type on-off
> attr lamp1 model fs20st
>
> define lamp2 FS20 1234 57
> attr lamp2 fm_type on-off
> attr lamp2 model fs20st
>
> define lamp4 FS20 1234 59
> attr lamp4 fm_type on-off
> attr lamp4 model fs20st
>
> Weiterhin habe ich einen FS20 Klingeltaster, den ich für das Schlaten
> verwende:
>
> define Schalter1 FS20 4bdb 00
> attr Schalter1 fm_type on off
>
> Nun habe ich die 3 Lampen zu einer Struktur zusammengefasst:
>
> define wz_LichtAlle structure room lamp1 lamp2 lamp4
>
> Bis jetzt habe ich das so und es funktioniert, allerdings nur mit den
> Togglesymbolen im Webinterface.
>
> define Lampenschalter1 notify Schalter2 set wz_LichtAlle toggle
>
> Soweit sogut. Nun habe ich Deine wunderbare Anleitung gefunden und würde
> gern ein on oder ein off auf im Floorplan/Webinterface sehen. Dazu habe ich
> alles Mögliche versucht, bin aber zu überhaupt keinem Ergebnis gekommen, da
> ich es einfach nicht verstehe.
>
> Gestern habe ich die Version 5.3 installiert und in meiner 99_Utils.pm
> sind die im Wiki beschriebenen Routinen bereits enthalten.
>
> Kannst Du mir vielleicht noch einmal auf die Sprünge helfen?
> Muss ich nun UntoggleDirect oder UntoggleInDirect verwenden? Ist
> mein Klingeltaster oder meine strucutre "wz_LichtAlle"?
>
> Oder habe ich einen generellen Denkfehler drin?
>
> Sorry dass ich so blöd frage, aber ich stehe vor einem großen Rätsel.
>
> LG
> neo
>
> Am Samstag, 2. Juli 2011 18:46:04 UTC+2 schrieb UliM:
>>
>> Hi,
>> hmmm... Funktioniert es denn (trotz der Fehlermeldungen im log)?
>> Kann es sein, dass Du eine frische fhem.pl heruntergeladen hast, Deine
>> fhemweb.pm aber schon älter ist? Lade doch bitte auch diese mal frisch
>> runter.
>> Hast Du vor dem ersten toggle mal ein ON oder OFF gesetzt, z.B. über's
>> webfrontend? Wenn das nicht der Fall ist, kann untoggle gar nicht tun,
>> da es abfragt, ob der OldValue on bzw off war.
>>
>> Von anderen usern habe ich mails bekommen, dass es bei ihnen
>> funktioniert. Drum habe ich's nun auch ins Wiki gestellt:
>> http://fhemwiki.de/index.php/FS20_Toggle_Events_auf_On/Off_umsetzen
>>
>> Gruß, Uli
>>
>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com
Titel: Re: Untoggle(<device>)
Beitrag von: Guest am 01 November 2012, 22:55:46
Originally posted by: <email address deleted>

hey Uli,
 
danke für deinen Auszug aus Deiner config - der hat geholfen!!!!
ich glaube ich habe es jetzt verstanden. Ich war bisher der Meinung dass
ich an der "structure" das untoggle hinterlegen muss, aber es waren ja die
Lampen.
wie dem auch sei, dank Deinem Tipp hab ich auch das jetzt im Griff.
Also, die Sensoren brauchen das Untoggle, nicht die structure.

Danke und gute Nacht
neo

Am Dienstag, 30. Oktober 2012 22:44:33 UTC+1 schrieb UliM:
>
> Hiho,
> die Benamsung der beiden Routinen bezieht sich darauf, ob die zu
> untoggle-nden devices direkt oder indirekt gepaired sind.
> In Deinem Fall vmtl. direkt (Aktor=Steckdose direkt am Schalter=Sensor
> angelernt).
> Also musst Du UntoggleDirect verwenden.
>
> Ich nutze auch structure, bei mir sieht's so aus:
>
> define ez_LichtAlle structure room ez_LichtRegal ez_Schreibtisch
> ez_LichtVitrine
> attr ez_LichtAlle clientstate_behavior relative
> attr ez_LichtAlle clientstate_priority on off
> attr ez_LichtAlle icon icoLicht.png
> attr ez_LichtAlle room Esszimmer
>
> define ez_Schreibtisch FS20 6969 00
> attr ez_Schreibtisch icon icoLicht.png
> attr ez_Schreibtisch model fs20st
> attr ez_Schreibtisch room Esszimmer
> define ez_SchreibtischSwitch notify ez_Schreibtisch
> {UntoggleDirect("ez_Schreibtisch")}
>
> define ez_LichtRegal FS20 6969 01
> attr ez_LichtRegal icon icoLicht.png
> attr ez_LichtRegal model fs20st
> attr ez_LichtRegal room Esszimmer
> define ezLichtRegalSwitch notify ez_LichtRegal
> {UntoggleDirect("ez_LichtRegal")}
>
> define ez_LichtVitrine FS20 6969 02
> attr ez_LichtVitrine icon icoLicht.png
> attr ez_LichtVitrine model fs20st
> attr ez_LichtVitrine room Esszimmer
> define ezLichtVitrineSwitch notify ez_LichtVitrine { UntoggleDirect("@") }
>
>
>
>
>
> Am Dienstag, 30. Oktober 2012 18:59:02 UTC+1 schrieb neomorph:
>>
>> Lieber Uli,
>>
>> ich mal wieder ;)
>> ich versuche krampfhaft
>> http://www.fhemwiki.de/wiki/FS20_Toggle_Events_auf_On/Off_umsetzenumzusetzen.
>>
>> Folgende Ausgangssituation  habe ich.
>>
>> Ich habe 3 Funksteckdosen FS20 an denen jeweils Lampen hängen. Diese habe
>> ich wie folgt definiert:
>>
>> define lamp1 FS20 1234 56
>> attr lamp1 fm_type on-off
>> attr lamp1 model fs20st
>>
>> define lamp2 FS20 1234 57
>> attr lamp2 fm_type on-off
>> attr lamp2 model fs20st
>>
>> define lamp4 FS20 1234 59
>> attr lamp4 fm_type on-off
>> attr lamp4 model fs20st
>>
>> Weiterhin habe ich einen FS20 Klingeltaster, den ich für das Schlaten
>> verwende:
>>
>> define Schalter1 FS20 4bdb 00
>> attr Schalter1 fm_type on off
>>
>> Nun habe ich die 3 Lampen zu einer Struktur zusammengefasst:
>>
>> define wz_LichtAlle structure room lamp1 lamp2 lamp4
>>
>> Bis jetzt habe ich das so und es funktioniert, allerdings nur mit den
>> Togglesymbolen im Webinterface.
>>
>> define Lampenschalter1 notify Schalter2 set wz_LichtAlle toggle
>>
>> Soweit sogut. Nun habe ich Deine wunderbare Anleitung gefunden und würde
>> gern ein on oder ein off auf im Floorplan/Webinterface sehen. Dazu habe ich
>> alles Mögliche versucht, bin aber zu überhaupt keinem Ergebnis gekommen, da
>> ich es einfach nicht verstehe.
>>
>> Gestern habe ich die Version 5.3 installiert und in meiner 99_Utils.pm
>> sind die im Wiki beschriebenen Routinen bereits enthalten.
>>
>> Kannst Du mir vielleicht noch einmal auf die Sprünge helfen?
>> Muss ich nun UntoggleDirect oder UntoggleInDirect verwenden? Ist
>> mein Klingeltaster oder meine strucutre "wz_LichtAlle"?
>>
>> Oder habe ich einen generellen Denkfehler drin?
>>
>> Sorry dass ich so blöd frage, aber ich stehe vor einem großen Rätsel.
>>
>> LG
>> neo
>>
>> Am Samstag, 2. Juli 2011 18:46:04 UTC+2 schrieb UliM:
>>>
>>> Hi,
>>> hmmm... Funktioniert es denn (trotz der Fehlermeldungen im log)?
>>> Kann es sein, dass Du eine frische fhem.pl heruntergeladen hast, Deine
>>> fhemweb.pm aber schon älter ist? Lade doch bitte auch diese mal frisch
>>> runter.
>>> Hast Du vor dem ersten toggle mal ein ON oder OFF gesetzt, z.B. über's
>>> webfrontend? Wenn das nicht der Fall ist, kann untoggle gar nicht tun,
>>> da es abfragt, ob der OldValue on bzw off war.
>>>
>>> Von anderen usern habe ich mails bekommen, dass es bei ihnen
>>> funktioniert. Drum habe ich's nun auch ins Wiki gestellt:
>>> http://fhemwiki.de/index.php/FS20_Toggle_Events_auf_On/Off_umsetzen
>>>
>>> Gruß, Uli
>>>
>>

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com