FHEM Forum

FHEM - Hardware => Einplatinencomputer => Thema gestartet von: bsl02 am 30 September 2015, 16:38:45

Titel: Raspberry GPIO, in fileacces: edge bzw value
Beitrag von: bsl02 am 30 September 2015, 16:38:45
Hallo,

seit einiger Zeit spinnt meine Türklingel-Lösung bei meinen Eltern (von Klingelknopf -> auf Relais -> auf RPi-GPIO -> Auswertung in FHEM auf Raspberry -> FritzBox DECT-Telefone).

Die Probleme begannen mit dem Update der FritzBox7320. Mitunter hört es gar nicht auf zu klingeln, manchmal klingelt es auch gar nicht.

FHEM läuft auf dem Raspberry, im Log tauchen die Zeilen unten auf. Leider kann ich damit nichts anfangen.
Was wollen mir die Zeilen sagen, was könnte Besserung bringen?
Die Dateien "edge" und "value" als solche habe ich gefunden.

2015.09.30 16:07:59 5: Triggering n.GPIO.Pin22.Tuerklingel.neu
2015.09.30 16:07:59 4: n.GPIO.Pin22.Tuerklingel.neu exec set Fritzbox ring 610,611,612,613,614 2
2015.09.30 16:07:59 3: FRITZBOX: set Fritzbox ring 610,611,612,613,614 2
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
...
...


und vorher war auch schon zu sehen
2015.09.30 15:38:52 5: GPIO.Pin22.Tuerklingel, in fileaccess: value
2015.09.30 15:39:43 5: GPIO.Pin22.Tuerklingel, in fileaccess: value


Ich hänge ein "list Fritzbox" als gesonderte Datei an.

Gruß und Dank im voraus,
Stefan
Titel: Antw:Raspberry GPIO, in fileacces: edge bzw value
Beitrag von: klausw am 05 Oktober 2015, 16:06:07
Zitat von: bsl02 am 30 September 2015, 16:38:45
Hallo,

seit einiger Zeit spinnt meine Türklingel-Lösung bei meinen Eltern (von Klingelknopf -> auf Relais -> auf RPi-GPIO -> Auswertung in FHEM auf Raspberry -> FritzBox DECT-Telefone).

Die Probleme begannen mit dem Update der FritzBox7320. Mitunter hört es gar nicht auf zu klingeln, manchmal klingelt es auch gar nicht.

FHEM läuft auf dem Raspberry, im Log tauchen die Zeilen unten auf. Leider kann ich damit nichts anfangen.
Was wollen mir die Zeilen sagen, was könnte Besserung bringen?
Die Dateien "edge" und "value" als solche habe ich gefunden.

2015.09.30 16:07:59 5: Triggering n.GPIO.Pin22.Tuerklingel.neu
2015.09.30 16:07:59 4: n.GPIO.Pin22.Tuerklingel.neu exec set Fritzbox ring 610,611,612,613,614 2
2015.09.30 16:07:59 3: FRITZBOX: set Fritzbox ring 610,611,612,613,614 2
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
2015.09.30 16:08:39 5: GPIO.Pin22.Tuerklingel, in fileaccess: edge
...
...


und vorher war auch schon zu sehen
2015.09.30 15:38:52 5: GPIO.Pin22.Tuerklingel, in fileaccess: value
2015.09.30 15:39:43 5: GPIO.Pin22.Tuerklingel, in fileaccess: value


Ich hänge ein "list Fritzbox" als gesonderte Datei an.

Gruß und Dank im voraus,
Stefan

GPIO.Pin22.Tuerklingel, in fileaccess: edge
Bedeuted nur, das FHEM gerade im Unterprogramm "fileaccess" des RPI_GPIO Moduls ist.
Das war mal fürs debugging gedacht.
Du kommst in diese Routine immer rein, wenn ein Interrupt ausgelöst wurde. Wenn mehrere nahezu zeitgleich kommen, dann prellt dein Ralaiskontakt einfach. Das solltest du aber mit dem Attribut debounce_in_ms hinbekommen.

Die grundsätzlich Frage ist:
An welcher Stelle der Wirkkette tritt der Fehler auf.
GPIO oder FritzBox Modul.

Dazu kannst du dir als erstes mal die GPIO Readings anschauen, während du klingelst.

Denn FRITZBOX: set Fritzbox ring 610,611,612,613,614 2 sieht für mich so aus, als würde der Tastendruck erkannt und wie gewünscht weitergeleitet.
AVM hat bei den FritzBoxen inzwischen Telnet deaktiviert so das sich da einiges geändert hat.
Aber dazu gibt es einen ausführliche Thread (http://forum.fhem.de/index.php/topic,29725.0) in dem du fündig werden solltest.
Titel: Antw:Raspberry GPIO, in fileacces: edge bzw value
Beitrag von: bsl02 am 06 Oktober 2015, 20:54:41
Hallo,
vielen Dank für die Info. Wirklich testen kann ich leider nur vor Ort (Eltern).

ZitatBedeuted nur, das FHEM gerade im Unterprogramm "fileaccess" des RPI_GPIO Moduls ist.
Das war mal fürs debugging gedacht.
Das beruhigt mich; kommt wohl seit ich "verbose 5" eingestellt habe auf der Suche nach dem Fehler.

Zitatdann prellt dein Ralaiskontakt einfach. Das solltest du aber mit dem Attribut debounce_in_ms hinbekommen.
Prellen: Ja, ist ein Relais ohne Zusatzschaltungen, also an-aus-an-aus...
Mit dem "debounce_in_ms" experimentiere ich jetzt herum, habe aber die Funktion nicht wirklich verstanden.

Für das FritzBox-Modul habe ich schon TR064 eigestellt:
allowShellCommand 1
allowTR064Command 1
forceTelnetConnection 0


Zur Info hier noch ein akutelles "list" für den GPIO-Teil
Internals:
   CHANGED
   DEF        25
   EXCEPT_FD  11
   NAME       GPIO.Pin22.Tuerklingel
   NR         40
   RPI_pin    25
   STATE      off
   TYPE       RPI_GPIO
   Readings:
     2014-02-12 01:51:27   Counter         975
     2015-10-06 20:37:38   Longpress       off
     2015-10-06 20:49:52   Pinlevel        low
     2015-10-06 20:37:38   state           off
   Fhem:
     interfaces switch
Attributes:
   comment    Türklingel an Fritz!Box-Telefone
   debounce_in_ms 200
   direction  input
   event-on-change-reading state
   event-on-update-reading 1
   interrupt  both
   pud_resistor down
   room       41.Tuerkling
   verbose    3
   webCmd     on:off


Grüße, Stefan
Titel: Antw:Raspberry GPIO, in fileacces: edge bzw value
Beitrag von: klausw am 06 Oktober 2015, 23:13:38
Jo die 5 weist auch auf verbose 5 hin ;)
Das debounce soll das Eingangssignal eigentlich nur für den eingestellten Zeitraum sperren. Also der Pegel nach der ersten Flanke wird ausgewert und die Pegelwechsel innerhalb von x ms danach ignoriert.
Zur Fritz Box kann ich dir nix sagen. Dazu gibt es hier irgendwo einen ausführlichen Thread.
Titel: Antw:Raspberry GPIO, in fileacces: edge bzw value
Beitrag von: bsl02 am 09 Oktober 2015, 00:41:25
Hallo,

ZitatDas solltest du aber mit dem Attribut debounce_in_ms hinbekommen.
...
Also der Pegel nach der ersten Flanke wird ausgewert und die Pegelwechsel innerhalb von x ms danach ignoriert.

genau so habe ich es bisher interpretiert ;-)  Ich werde es jetzt zwecks Vermeidung von mehrfachklingeln noch verlängern.
Habe die betreffende Installation zwar per remote geändert, konnte aber bisher noch nicht vor Ort testen.

Grüße,
Stefan