PiFace

Begonnen von cornelius fillmore, 09 Juni 2013, 08:21:17

Vorheriges Thema - Nächstes Thema

betateilchen

#60
Ich denke, die Sache mit der doppelte Abfrage der in-ports (mit und ohne pullup) wird wegfallen. Die Pullups sollten ohnehin sinnvollerweise in der angeschlossenen Applikation vorhanden sein, anstatt intern im PiFace.

Das erleichtert die Abfrage der Ports erheblich; um das zu verdeutlichen: Aktuell brauche ich für die Abfrage aller ports 32 Befehle. Ohne die Pullup-Geschichte brauche ich nur noch einen einzigen (also INSGESAMT nur einen, für in-ports UND out-ports zusammen!).

Damit kann ich dann auch eine regelmäßige Abfrage innerhalb des Moduls mit sehr viel weniger Bauchschmerzen umsetzen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Hier kommt noch einmal eine Testversion, die eine performanceoptimierte Abfrage der Ports durchführt.

Änderungen:

Bei get <name> 0 werden die in-Ports nicht mehr mit Pullups gelesen, sondern nur noch die in-ports und die out-ports
Die in-Ports können nach wie vor einzeln mit Pullup abgefragt werden (als port 11-18, wie bisher), wenn das wirklich jemand braucht.
Die Abfrage der out-Ports hat sich nicht verändert.

Wenn diese Version zur Zufriedenheit läuft, wird als nächstes eine regelmäßige Abfrage der Ports eingebaut.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

klaus.schauer

Die aktuellen Version von PIFACE V4035 habe ich nochmals grob getestet:

Die set-Kommandos inkl. der readings und der Events sind ok.

Die get-Abfragen funktionieren sehr uneinheitlich: mal werden die readings richtig gesetzt, in andern Fällen nicht. Mal gibt's Leerzeichen bei den Events, mal nicht. Das gilt für die in- und out-Ports.

Ist es sinnvoll in mühsamer Kleinarbeit alle Varianten durchzuspielen und zu dokumentieren? Wird in der nächsten Zeit an dem Modul noch gearbeitet oder sollte es eigentlich schon gut gewesen sein?

betateilchen

#63
-- gelöscht, da erledigt --
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

#64
WELCHE get-Abfragen funktionieren z.B. nicht? Ich habe am Wochenende Stunden mit der Änderung des Moduls zugebracht und ich konnte keine einzige Leerzeile produzieren.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Zitat von: klaus.schauer am 14 Oktober 2013, 20:16:16Die aktuellen Version von PIFACE V4035 habe ich nochmals grob getestet:

Die aktuelle Version ist die, die ich am 13.10.2013 hier in den Thread gehängt habe.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

klaus.schauer

Testbasis: # $Id: 55_PIFACE.pm 4052 2013-10-16 11:47:34Z betateilchen $

Leerzeile z. B. get <Name> [11 ... 19]


2013-10-20 20:17:20 PIFACE IO_0 out1: 0
2013-10-20 20:17:20 PIFACE IO_0 out2: 0
2013-10-20 20:17:20 PIFACE IO_0 out3: 1
2013-10-20 20:17:20 PIFACE IO_0 out4: 1
2013-10-20 20:17:20 PIFACE IO_0 out5: 0
2013-10-20 20:17:20 PIFACE IO_0 out6: 1
2013-10-20 20:17:20 PIFACE IO_0 out7: 0
2013-10-20 20:17:20 PIFACE IO_0 out8: 1
2013-10-20 20:17:37 PIFACE IO_0 in1: 1
2013-10-20 20:18:09 dummy USV_Alarm on
2013-10-20 20:18:09 PIFACE IO_0 in11: 1

2013-10-20 20:18:16 dummy USV_Battery on
2013-10-20 20:18:16 PIFACE IO_0 in12: 1

2013-10-20 20:18:25 PIFACE IO_0 in13: 1

2013-10-20 20:18:32 PIFACE IO_0 in14: 1

2013-10-20 20:21:49 PIFACE IO_0 in14: 1

2013-10-20 20:21:52 PIFACE IO_0 in15: 1

2013-10-20 20:21:56 PIFACE IO_0 in16: 1

2013-10-20 20:22:00 PIFACE IO_0 in17: 1

2013-10-20 20:22:04 PIFACE IO_0 in18: 1


betateilchen

endlich mal eine Antwort, mit der ich was anfangen kann, danke.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

klaus.schauer

Zitat von: betateilchen am 20 Oktober 2013, 21:26:34
endlich mal eine Antwort, mit der ich was anfangen kann, danke.
Gibt es schon eine Lösung oder einen Lösungsansatz?

betateilchen

Ja. Die Portabfrage mit internen Pullups wird ohnehin irgendwann wegfallen.

Alternativ kannst Du bis dahin gerne die hier angehängte Modulversion testen. Darin wird die Abfrage noch unterstützt, aber ich habe nochmal anders versucht, die Zeilenumbrüche zu entfernen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

klaus.schauer

Leerzeilen kann ich jetzt nicht mehr erkennen. Prima.

Kannst Du nochmals die Grundversion des Moduls ins Forum stellen, vielleicht schon mit der Fehlerkorrektur? Abgesehen von den störenden Leerzeilen, für die es jetzt eine Lösung gibt, fand ich den Ansatz universeller und umfassender.

Da ich derzeit scheinbar ohnehin der einzige Nutzer bin, würde ich bei Gelegenheit noch ein paar Schönheitskorrekturen anbringen.

betateilchen

Nein.

Du kannst aber mal in SVN schauen, welche Versionen Du dort findest.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

daschauher

Hallo Zusammen,
erstmal ganz großes Lob und großen Respekt an alle hier!
Ich habe alles mitverfolgt und teilweise ausprobiert. Es funktioniert soweit alles tadellos.
Eine frage hätte ich dazu noch. Gibt es eine Möglichkeit wenn FHEM auf der Fritzbox läuft,
das piface auf nem raspberry das im netzwerk ist anzusprechen? Und wenn ja wie?
Tschuldigung wenn das ne dumme frage sein sollte, aber ich bin noch ganz am Anfang.
Danke!!

Puschel74

Hallo,

da könnte dir evtl. FHEM2FHEM helfen.
Einfach auf dem RasPi (mit PiFace) auch FHEM installieren und von dort per FHEM2FHEM auf das FHEM auf der FB die Daten abholen.

define <beliebiger_Name> FHEM2FHEM <IP-Adresse-der-FB>:7072 LOG:[b]PiFace[/b].*
Und in FHEM auf der FB einfach die PiFace-Ports als Dummy anlegen mit den Namen PiFace 1, PiFace 2 etc.
Dazu das passende webCmd mit on / off oder per eventMap auf Ein / Aus gemappt und der RasPi müsste dann brav schalten.

Ich vermute das du am RasPi noch ein notify anlegen musst das auf das FHEM2FHEM-Event triggert.
So in die Richtung:
define PiFace_schalten notify [b]PiFace[/b]:.* set [b]PiFace[/b] %EVENT
Die fett gedruckten Namen musst du an deine Gegebenheiten passend anpassen.
Namen kannst du frei vergeben müssen aber je FHEM-Installation einmalig sein.

Ungetestet da ich FHEM auf einem RasPi verwende.
Evtl. solltest du mal umstellen und FHEM auf den RasPi verfrachten und die FritzBox das machen lassen was sie am besten kann - Internet und Telefonie  8)
Ich hab auch 2 7390 im Einsatz aber FHEM läuft bei mir ausschliesslich auf den RasPi`s und die FB`s werden per CALLMONITOR angezapft.

Grüße

P.S.: Es geht sicher noch einfacher aber ich nehm gern den umständlichen Weg  ::)
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

daschauher

Danke Puschel74 :-)

Das hört sich sehr interessant an. Ich baue nämlich gerade ein Haus und habe anschließend vor so viel wie möglich zu automatisieren. Habe mich schon vor längerer Zeit für Fhem und Homematic entschieden. Nach neuestem Stand möchte ich noch den einen oder anderen Raspi mit einbinden und habe mich schon gefragt wie das funktionieren könnte. Ich glaube dein Tipp mit Fhem2Fhem könnte mich da näher bringen.

schönen Gruß