Beiträge von sgaechter

    Hallo Pula. Kannst du mir sagen wo ich die Doku und ein Verdrahtungsbeispiel dazu finde? Bin auf I2c nicht so fit.


    .. Fällt mir gerade ein: dann kann ich die USB Anbindung für meine Soundkarte, die auch in der Aussenstation an einem Mini USB- Hub hängt wohl vergessen.... Doch wieder 2 Strippen...

    Hallo Snoopylix
    Bei der FB 7490 gibts pro Anrufbeantworter zwei Aufnahmemöglichkeiten. Einerseits den klassischen AB mit der Nummer **600: hier kann ein interner Anrufer kein Memo hinterlassen, da direkt die AB Ansage intern ertönt. Aber ein Memo hinterlegen ( beim ersten AB ist es die Nr. **605) geht mit einer internen Nummer. Ob es diese Option bei der 7270er auch schon gab, weiss ich leider nicht (mehr). Die 7390er hatte die Funktion schon.
    Was mich jedoch noch etwas stört, ist die Tatsache, dass die Nachricht in jedem Fall so lange aufzeichnet, wie in der doorpi.ini als "max_call_time" hinterlegt ist. Wäre schön, wenn da ein findiger Kopf eine Lösung über das Input level des Mikrosignals finden würde..
    Gruss Sven

    In the doorpi.ini you registered some keyboards to listen ro inputs wether the gpio or piFace? Then you have a section where you register the used ins for example:


    [gpiopins_InputPins]


    1 = call:11
    2 = call:12


    //the command “call:11“ defines the phone you want to call (in this case the number 11), if the input 1 gets pressed.


    Regards sven



    Gesendet von meinem E6653 mit Tapatalk

    Hallo zusammen.


    Bin gerade meine DoorPi am verfeinern. Dabei habe ich mir eine Aussenstation mit einem Arduino NANO und der Soundkarte zusammengebastelt.
    Am Arduino hängen die Klingeltaster, die Photodiode und mein Fingerleser. Von aussen nach innen funktioniert alles prima. Die Klingel Commands werden sauber übertragen, der Fingerleser öffnet meine Tür, Audio passt ohne Hall und Delay's.


    Ich will nun Outputs auf dem Arduino steuern. Der Sketch ist fertig und über Putty funktionieren die Commands sauber und der Ardu macht, was er soll.
    Aktuell habe ich DoorPi 2.5.1 mit dem USB_plain- Keyboard im Einsatz.


    Offensichtlich will aber DoorPi keine Commands abfeuern. Wenn ich einen gebridgeten Arduino an den Raspi und auf der anderen Seite an meinen PC hänge, sehe ich mit Hterm keinen der benötigten Commands.


    Vielleicht kann mir jemand von euch auf die Sprünge helfen.


    Hier der Auszug meiner Doorpi.ini und der Arduino Sketch:


    Und hier noch der Sketch, ab Linie 122 wird's interessand:



    Vielen Dank für die Hilfe.

    Ich habe meinen Fingarabdruckleser des Typs ZFM-20 (auch bekannt als "Arduino fingerprint sensor") an mein DoorPi geklemmt. da es dafür (noch) kein Keyboard gibt, habe ich mir das "virtuelle Keyboard" zu Nutze gemacht um die Freigabe des Fingerabdrucklesers zu implementieren.


    Was es Braucht:

    • Funktionierendes DoorPi, vorkonfiguriert auf Raspberry Pi B+ oder 3 (bei mir ist der 3-er im Einsatz)
    • Fingerabdruckleser des Typs ZFM-20 (ebay, AliExpress...)
    • USB-TTL-Konverter (z.B. mit dem CP2102-Chip) oder einen Arduino Nano mit gebrücktem GND-Rst, so kann dieser als USB-TTL fungieren.
    • wahlweise zwei LED's (grün / rot oder Dual-LED)
    • Kabel, Lötkolben, Widerstände...


    Vorbereitung der Hardware:

    • Fingerabdruckleser in entsprechend sinnvolles Gehäuse packen
    • Ich habe für die initialisierung des Lesevorganges einen Taster auf das Gehäuse gepackt. (zukünftig will ich den Leser anderweitig einbauen und die Auslösung dann über eine Lichtschranke realisieren.)
    • ebenfalls fanden die beiden LED's darauf platz (diese signalisieren den Lesvorgang erfolgreich / fehlerhaft)
    • PiFace Board ist von Vorteil, würde aber auch über GPIO mit entsprechenden Widerständen und Relais-Board funktionieren (war mir aber zu Umständlich)
    • Wie man den Fingerabdruckleser genau anschliesst und wie die Library dafür installiert wird, könnt ihr Bastian Raschke's Webseite entnehmen, da spare ich mir das Wiederkäuen.
    • Anschliessend Fingerleser gemäss Bastian's Anleitung testen.



    Vorbereitung der Software:

    • Die Python-Library für den Fingerabdruckleser hat ebenfalls einige Beispiele mitgeliefert:
    • Mit dem Beispiel "example_enroll.py" können die Finger entsprechend eingelesen werden
    • Das "example_search.py" habe ich entsprechend erweitert, damit das erfolgreiche Lesen eine Aktion in DoorPi auslöst
    • Ich habe das Script abgeändert und in "finger.py" umbenannt. Anschliessend habe ich es unter "/usr/local/etc/DoorPi/scripts/" abgelegt (ausführbar machen nicht vergessen, aber das wisst ihr sicher)

    Der CODE muss an diversen Stellen noch am jeweiligen System angepasst werden. Dies habe ich im Code kommentiert:


    Damit die Events von DoorPi verarbeitet werden können habe ich das "virtuelle Keyboard" aktiviert und mir folgende virtuelle Inputs erstellt (Kommentare mit "//" bitte bei allen folgenden Code's rauslöschen):



    Die virtuellen Inputs lösen die folgenden Events aus:




    EVENT_OnKeyPressed_onboardpins.3:

    • Dieser Event wird vom Input 3 getriggert. Hier hängt der Taster zum starten des Fingerlesevorgangs dran


    EVENT_OnKeyPressed_onboardpins.4

    • Minimale Sicherheit: Wenn jemand das Lesergehäuse vor der Haustür öffnet, werde ich über das Script "sabotage.sh" via Telegram informiert, anschliessend stoppt DoorPi und nichts geht mehr (Vorsicht, In diesem Fall braucht's noch einen Schlüssel oder einen ssh-Zugang auf die DoorPi um neu zu starten).


    EVENT_OnKeyPressed_webservice.dooropen:

    • Dieser Event wird von "finger.py" angestossen, wenn der Lesevorgang erfolgreich war
    • Zugleich wird die grüne LED für 3s. eingeschaltet (zeigt den erfolgreichen Lesevorgang an)


    EVENT_OnKeyPressed_webservice.redled:

    • Dieser Event schaltet die rote LED, wenn der Lesevorgang zu lange kein Ergebnis bringt (der Vorgang bricht nach 10s ab), oder der vorgehaltene Finger nicht verzeichnet ist.


    Wenn dann alles aufgebaut ist, kann mittels Knopfdruck der Lesevorgang gestartet werden: Ist der Finger korrekt, wird die Türe freigegeben.



    Das System hat noch einige leaks, so sind teilweise Wartezeiten zwischen Knopfdruck und Lesevorgang (der Leser wird zuerst initialisiert) sowie nach Abschluss des Lesevorgangs bis zum öffnen der Tür in Kauf zu nehmen.

    • Das hat mit dem Verarbeiten der Events zu tun. Je nach dem was DoorPi sonst noch treibt, geht's schneller.
    • Dieser Tatsache könnte mit einem DoorPi-Keyboard sicher abgeholfen werden - Leider reichen meine Python-Kenntnisse dafür (noch) nicht aus


    Zum Thema Sicherheit ist vorweg zu nehmen, dies ist ein Experimental aufbau! Bitte nicht bei der nächsten Sparkasse verbauen :)

    • Tauscht jemand den Leser mit einem baugleichen Modell mit vorgespeicherten Fingern, kann die Tür problemlos geöffnet werden. Deshalb habe ich den Sabotagekontakt vorgesehen.
    • Hier würde das Speichern und Abgleichen des Hash's, welcher die Library anbietet, entgegenwirken. Da hänge ich mich dann mal dran.


    Kritik und Verbesserungsvorschläge sind willkommen. :)

    Nun habe ich endlich eine DoorPi- interne Lösung für mein Dauertüröffnerproblem gefunden:


    Mittels Events, welche den Status des Eingangs abfragen, habe ich es hingekriegt:




    Code
    [EVENT_OnKeyPressed_onboardpins.2]
    10 = out:Tueroeffner,1,0
    
    
    [EVENT_OnKeyUp_onboardpins.2]
    10 = out:Tueroeffner,0,1
    
    
    [onboardpins_InputPins]
    2 = sleep:0

    Was das Ding macht:
    - Mit dem ersten Event schalte ich den Ausgang dauerhaft auf Ein, wenn der Eingang "HIGH" ist.
    - Mit dem zweiten schalte ich den Eingang wieder aus, sofern der Eingang wieder "LOW" ist.
    - Der Inboardpin muss natürlich initialisiert werden. Da er aber sonst (noch) keine Aufgabe hat, deklariere ich ihn mit "sleep:0"


    Emprovement's:
    Der zweite Event hat bei mir ca. 5 Sekunden Verzögerung, damit kann ich aber leben.
    Allenfalls liegt's auch dran, dass ich denselben Pin mit 10 s Verzögerung beim Öffnen der Tür über DTMF nutze..

    Hallo Ruhri.


    Dein Ansatz war schon mal gut, jedoch schaltet der Ausgang nie mehr aus, auch wenn der Eingang längst geöffnet ist. Der Ausgang wird erst zurückgestellt, wenn der Ausgang über einen anderen Event erneut geschaltet wird (Türöffner-Event über DTMF). Toggeln funktioniert leider nicht. Werde es wohl über ein externes Script lösen müssen.
    Danke für's mitdenken.

    Lies bitte den Thread 1 in aller Ruhe durch. Ich habe nichts davon geschrieben, dass der “Eingang geschlossen ist, und der Ausgan gröffnetwerden soll...
    Lediglich: while Input1 true --> output 1 true and output 2 blink.


    Wenn das DoorPi nicht kann, reicht mir diese Info. Dann löse ich es über ein Script ausserhalb DoorPi.

    Hallo zusammen.


    Ich möchte an meiner Haustüre, welche mit einem Türöffner im Rahmen ausgerüstet ist, eine Daueröffnung realisieren. Der Öffner ist auf Dauerspannung ausgelegt, der hält das somit aus. Aktuell habe ich dafür einen Arduino (wo auch der Fingerleser dran hängt) verwendet.


    Nun möchte ich das gerne über DoorPi realisieren. Wenn Eingang x geschlossen wird --> Ausgang "Türöffner" auf Ein schalten. Sobald der Eingang x wieder geöffnet wird, soll der Ausgang wieder geöffnet werden. Gleichzeitig möchte ich eine LED blinken lassen, die mir anzeigt, dass die Türe nun im Daueroffen-Modus ist. Wie realisiere ich das?
    Geht das ev. über einen DoorPi-Event, oder bleibt mir nur die Beuge über ein Script?


    Interessant wäre, wenn zum Schalten des Ausgangs auch ein URL- Aufruf (ähnlich XML-Api der Homematic) genutzt werden könnte. So könnte ich über meine Homematic einen Auf - Zu - Befehl abschicken usw.


    Danke für eure Hinweise.

    Wow! Cooles App.
    Was ich aber nicht ganz begreife, ist welche Door opener- URL ich hier hinterlegen muss. Könnte man dem Viewer nicht einfach DTMF- Töne beibringen? So wäre die App für zukünftige Erweiterungen vorbereitet (weitere Buttons hinzufügen, DTMF-Zeichen hinterlegen und schon kann der Viewer neben der Türe auch z.B. das Licht schalten).


    Was mir ebenfalls nicht ganz logisch erscheint, ist die Hinterlegng der URL der Kamera. Da sind zwei Eingaben vorgesehen, doch irgendwie kriege ich's mit mjpg- Streamer nicht ganz gebacken, das Bild anzuzeigen. Die URL meines Bildes lautet <IP-des-Pi's>:9000/stream_simple.html


    Danke für die Hilfe.

    Hallo zusammen.
    Ich nutze schon eit einem Jahr erfolgreich den Fingerscanner von Adafruit um die Türe zu öffnen. Als Controller nutze ich einen Arduino, der über ein Relais meine Tür freigibt. Im zuge der Vereinfachung der Systeme würde ich gerne den Fingeleser auch auf dem Raspi betreiben. Da DoorPi meine Tür eh schon bedient, wollte ich mal anfragen, ob ws eine Möglichkeit gibt, diesen mittels Keyboard gleich zu integrieren? Für den Fingeleser hat Bastian Raschke eine Python Library geschrieben. Leider bin ich noch ein Jung-Pythoner, darum mal die Frage an euch Profis, wie ichdas am schlausten angehe.


    Vielen Dank für eure Feedbacks.

    Hallo Nea.


    Vielen Dank. Es lag definitiv am Patch. Irgendwie hat er zwar den neuen Treiber installiert, denn ich konnte den modprobe-Befehl ohne Fehler ausführen, Jedoch scheint er sich irgendwo aufgehängt zu haben.


    Jetzt funktioniert's wie's muss
    Vielen Dank für die Hilfe.

    Hallo Nea.


    der Modprobe-Befehl bringt keinen Fehler. Beim starten des mjpg-Streamers scheint alles zu funktionieren:

    Code
    pi@doorPi:/usr/local/etc/DoorPi/tools $ mjpg_streamer -i "/usr/local/lib/input_uvc.so -d /dev/video0 -n -r 1024x768 -f 24 –q 80" -o "/usr/local/lib/output_http.so -n -w /usr/local/www -p 9000"
    MJPG Streamer Version: svn rev: 3:172M
     i: Using V4L2 device.: /dev/video0
     i: Desired Resolution: 1024 x 768
     i: Frames Per Second.: 24
     i: Format............: MJPEG
     o: www-folder-path...: /usr/local/www/
     o: HTTP TCP port.....: 9000
     o: username:password.: disabled
     o: commands..........: disabled


    Die Oberfläche ist über die IP auch erreichbar, jedoch wird kein Bild angezeigt. Habe es auch schon über VLC versucht. :huh:

    Hallo Nea.
    Super Beschreibung. Hat bei mir auch alles wunderbar geklappt, jedoch bleibt auf der Webseite der LiveStream leer. Kein Bild, obwohl die LED an der Kamera leuchtet. Wo genau könnte der Hund begraben liegen?
    Danke für eure Lösungsvorschläge.


    P.s.

    Code
    raspistill -o /tmp/test.jpg


    geht problemlos....