Fingerprint und Motorschloss

  • Hallo liebe Pi-Gemeinde,


    ich bin absoluter Neuling, habe nicht nicht wirklich viel Ahnung vom Raspi, und gar keine von Python.

    Ich möchte meine Haustür mit einem Motorschloss und einem Fingerprint ausstatten. Da ich eine Dreifachverriegerlung habe, kommt ein klassischer "Türsummer" nicht in Frage.

    Dazu habe ich viel gelesen, verglichen und abgewägt, und möchte nun das Motorschloss von Eqiva mit einem Fingerprint mit Wiegandverschlüsselung nehmen. Das Motorschloss hat beste Bewertungen beim Warentest, ist dazu günstig und sieht gut aus. Einziges Problem, eigentlich kann es nur vom Smartphone bedient werden, ich möchte es aber eben per Fingerprint öffnen. Dazu habe ich gefunden, dass es möglich ist, das Motorschloss mit dem Raspi anzusteuern. Hierzu muss ich zwar auch noch weitere Recherche betreiben.

    Hier in diesem Thema soll es um die andere Seite gehen: Den Raspi als Wiegand-Reader einzusetzen. Hierzu habe ich bereits Schaltpläne gefunden, und auch einen Code. Allerdings nicht zusammenhängend, und mir fehlt so irgendwie der Übergang zwischen Hard- und Software.

    Daher habe ich ein wenig experimentiert. Ich habe auf dem Raspi (Raspberry Pi 3) den Code eingegeben. Ich habe aber noch nicht den Fingerprint angeschlossen, weil ich ihn noch nicht habe. Zuerst habe ich übersehen, dass Google den Code ins Deutsche übersetzt hat, so dass er nicht weit in der Umsetzung kam. Anschließend habe ich die Übersetzung deaktiviert, und erneut ins Python hineinkopiert. Das Ergebnis beim Run sieht etwas anders aus, was mich hoffen lässt, dass es nun daran liegt, der der Fingerprint noch nicht angeschlossen ist.

    Ich hänge mal den Code und zwei Screenshots vom Raspi an.

    Was ich jetzt gern wüßte, liege ich richtig mit der Vermutung, dass ich erst den Fingerprint anschließen muss?

    Ist die Vorgehensweise richtig: Den Code einfach in Python zu kopieren, und auf Run zu klicken?

    Gibt der Code, wenn er läuft, einen elektrischen Impuls auf einen GPIO aus, der eigentlich dann den Türsummer aktiviert? :helpnew:

    Perfekt wäre es natürlich, wenn sich hier jemand findet, der Erfahrung mit dem Thema hat, und mir vielleicht sogar einen kompletten Code, also mit Übertragung ins Motorschloss anbieten kann. Hierfür würde ich mich selbstverständlich, nach vorheriger Vereinbarung, finanziell erkenntlich zeigen. (soweit das hier nicht verboten ist (?) )




    Im Anhang:

    - Wiegand.png : Der Anfang des von Google übersetzten Codes.

    - Wiegand_e.png : Der selbe Code, aber im orignalen Englisch

    Auf beiden Bildern sind im Ausgabefenster beide Versionen nacheinander gestartet worden.

    - WiegandCode.txt : Der komplette Code


    WiegandCode.txt

  • Hallo,


    wenn du hier Fragen zu einem Code hast, dann ist es für alle am einfachsten, wenn du diesen in Code-Tags postest. Dazu drückst du den </> Button und in das erzeugte Fenster kopierst du dann deinen vollständigen Code. Wie du vielleicht schon gesehen hast, ist der Code in Python immer unterschiedlich weit eingerückt, genau genommen immer im 4-Leerzeichen-Takt. Das ist sehr wichtig für die Funktion und das Lesen des Codes. Diese Einrückungen bleiben durch die Code-Tags auch erhalten. Das sieht mit deinem Code dann so aus:


    Schau dir mal die letzten Zeilen, nach 'pi.stop()' an. Ich weis nicht was du da noch kopiert hast, aber das gehört nicht in den Code. Das sagt dir auch die Fehlermeldung die du nach 'run' erhalten hast.


    Es macht durch aus Sinn, sich mit der Programmierung zu beschäftigen bzw. über benötigte Module und ihre Anwendung zu recherchieren. Einen fertigen Code für das Lesegerät auszuführen ohne das es angeschlossen ist macht weniger Sinn, weil ja so nichts funktionieren kann.

    Wenn du dein Lesegerät so wie im Programmbeispiel angeschlossen hast, dann *kann* es funktionieren, wenn du den Code kopierst und auf Run klickst. Das Problem ist, dass du gar nicht weist was passiert und es auch nicht auf deinen Anwendungsfall anpassen kannst.


    Entweder du musst dir jemand suchen, dem du genau beschreibst was das Programm alles können muss und du vertraust darauf dass das dann alles auch funktioniert oder du lernst programmieren. Deine Fragen lassen zum einen vermuten, dass du das lernen willst und zu anderen hast du auch indirekt nach einer fertigen Lösung gefragt. Je nach dem wie deine Entscheidung entgültig ausfällt wird sich dieses Thema dann weiter entwickeln.


    Hoffe das hilft dir etwas weiter.



    Grüße

    Dennis

    🎵🎸Die Nordsee schlägt dir ins Gesicht, trotzdem hast du verloren, du bist nicht weit gekommen, du läufst weiter nach vorn 🎵🎸

  • Hallo Dennis,


    vielen Dank für Deine Hilfe. Ich habe auf dem Raspi nachgeschaut. Hier stand im Code nach dwe Zeile 122 nur das Copyright, ohne die vielen Nullen dahinter. Ich habe ihn trotzdem erstmal gestartet, und bekam, wie erwartet, wieder die Fehlermeldung aus Zeile 122.

    Dann habe ich das Cpyright gelöscht und erneut gestartet, jetzt meldet er in Zeile 108, das er Wiegand nicht findet, was ja auch logisch ist. Ich halte das erstmal für ein gutes Zeichen.

    Aber warum ist er vorher über die 108 hinweggegangen und hat erst die 122 als falsch gemeldet?



    Ich würde jetzt fortfahren mit Teil 2 (Raspi zu Schlossmotor) und den Fingerprint oder einen günstigen Rfid-Leser zum testen besorgen und anschließen.

  • Dazu habe ich gefunden, dass es möglich ist, das Motorschloss mit dem Raspi anzusteuern. Hierzu muss ich zwar auch noch weitere Recherche betreiben.

    Hier in diesem Thema soll es um die andere Seite gehen

    Ich habe aber noch nicht den Fingerprint angeschlossen, weil ich ihn noch nicht habe.


    Das ist alles sehr durcheinander... was liegt dir denn gerade überhaupt vor (außer dem Pi)? Hast du das Schloss schon oder fehlt dir das auch noch?


    Zu Beginn würde ich mir erstmal das Schloss besorgen und herausfinden, wie ich das überhaupt öffnen und schließen kann - ohne Schnickschnack wie Fingerabdruck oder RFID-Karte, vergiss das erstmal komplett, denn das kommt später. Wenn du in der Lage bist, mit zwei einfachen Befehlen das Schloss alle 10 Sekunden zu öffnen und zu schließen, kannst du dir Gedanken über den Fingerabdruck machen. Erst dann (!), kannst du dir das entsprechende Gerät zulegen und dort erstmal wieder mit der Basis anfangen: Wie sieht der Code aus, um meinen Finger zu erkennen und mir dann ein einfaches "OK" zu liefern?


    Wenn du nun das Schloss über ein Programm öffnen und schließen kannst und in der Lage bist einen Fingerabdruck zu überprüfen, kannst du beide Welten miteinander verbinden und sie zusammenführen: Wenn Fingerabdruck erkannt -> öffne Tür.




    jetzt meldet er in Zeile 108, das er Wiegand nicht findet, was ja auch logisch ist. Ich halte das erstmal für ein gutes Zeichen.

    Das heißt nicht, dass das Gerät nicht angeschlossen ist, sondern dass dir das ganze Modul fehlt und du es nachinstallieren musst.


    Ich würde jetzt fortfahren mit Teil 2 (Raspi zu Schlossmotor) und den Fingerprint oder einen günstigen Rfid-Leser zum testen besorgen und anschließen.

    Wie gesagt, kümmere dich erstmal nur um die Ansteuerung des Schlosses per Code. Alles andere kommt später.


    Hier ist ein Programm, um so ein Eqiva Schloss per Bluetooth zu öffnen: https://github.com/oyooyo/keyble



    Wie kommst du eigentlich auf den Fingerabdruck-Scanner mit "Wiegand-Verschlüsselung"? Es gibt zahlreiche andere Geräte, die du direkt an den Pi anschließen kannst und für die es auch schon fertige Bibliotheken gibt, mit denen sich die Abdrücke leicht überprüfen lassen. https://github.com/bastianraschke/pyfingerprint

    Kelvin

  • Hallo Kelvin,


    vielen Dank für Deine Antwort.

    ich bin absoluter Neuling, habe nicht nicht wirklich viel Ahnung vom Raspi, und gar keine von Python.

    mein Problem, und bitte versteh das nur als konstruktive, nicht als "beleidigende" Kritik: In diesen Foren scheinen im wesentlichen Leute zu schreiben, die vom Fach sind. Da wird mit Fachbegriffen und Abkürzungen um sich geworfen, die ein absoluter Laie auf dem Gebiet, wie ich einer bin, nicht versteht. Außerdem werden gewissen Grundfunktionen einfach vorausgesetzt.

    Ich möchte meine Haustür mit einem Motorschloss und einem Fingerprint ausstatten. Da ich eine Dreifachverriegerlung habe, kommt ein klassischer "Türsummer" nicht in Frage.

    Dazu habe ich viel gelesen, verglichen und abgewägt, und möchte nun das Motorschloss von Eqiva mit einem Fingerprint mit Wiegandverschlüsselung nehmen. Das Motorschloss hat beste Bewertungen beim Warentest, ist dazu günstig und sieht gut aus. Einziges Problem, eigentlich kann es nur vom Smartphone bedient werden, ich möchte es aber eben per Fingerprint öffnen. Dazu habe ich gefunden, dass es möglich ist, das Motorschloss mit dem Raspi anzusteuern. Hierzu muss ich zwar auch noch weitere Recherche betreiben.

    Das ist alles sehr durcheinander... was liegt dir denn gerade überhaupt vor (außer dem Pi)? Hast du das Schloss schon oder fehlt dir das auch noch?

    Hiermit wollte ich nur das gesamte Projekt erklären, dass ich, wie Du richtig erkannt hast in 2 Teile gegliedert habe.


    Zu Beginn würde ich mir erstmal das Schloss besorgen und herausfinden, wie ich das überhaupt öffnen und schließen kann - ohne Schnickschnack wie Fingerabdruck oder RFID-Karte, vergiss das erstmal komplett, denn das kommt später.

    Dass ich das Projekt von der anderen Seite beginne, hat folgenden Grund: Den Code den ich gefunden und auch hier gezeigt habe, verspricht auf jeden Fall ein Ausgangssignal, mit dem ich eine LED zum leuchten bringe. Wenn ich diese Schaltung nicht hinbekomme, kommt ein Wiegand-Decoder und das ABUS HomeTec mit Fernbedienung. Letztere wird geöffnet und mit dem Signal des Decoders kurzgeschlossen. Das ist einfachste Elektronik, da bin ich ausreichend bewandert. Ich möchte aber aus verschiedenen Gründen (Kosten, Optik, Bewertung) lieber das Eqiva benutzen.

    Wie kommst du eigentlich auf den Fingerabdruck-Scanner mit "Wiegand-Verschlüsselung"?

    Das ist einfach zu beantworten. Gegooglet nach Fingerprint Wandmontage, und schon finden sich zahlreiche Produkte, die nahezu alle mit dem Wiegandprofil arbeiten.

    jetzt meldet er in Zeile 108, das er Wiegand nicht findet, was ja auch logisch ist. Ich halte das erstmal für ein gutes Zeichen.

    Das heißt nicht, dass das Gerät nicht angeschlossen ist, sondern dass dir das ganze Modul fehlt und du es nachinstallieren musst.

    Das ist doch mal eine hilfreiche Information. Leider habe ich noch nicht gefunden, wo ich das Modul bekomme und wie ich es installiere.

    Kannst Du mir da vielleicht noch ein Stückchen weiterhelfen - oder sonst wer?


    Danke und Gruss


    wennerfaellt

  • Hallo,


    wo hast du denn den Code her? War da keine weitere Anleitung dabei?

    Ich habe für 'wiegand' auf die schneller nur so etwas gefunden:

    https://github.com/jorke11/wiegand_raspberry


    Du benätigst auch 'pigpio' das steht aber in der Beschreibung.

    Allerdings basiert die Anleitung auf Python2. Das sollte man nicht mehr verwenden, da es seit über einem Jahr nicht mehr durch die Entwickler unterstützt wird. Schau mal ob du für Python3 etwas findest.


    Aber ohne dein Gerät wirst du mit dem gezeigten Code auch nicht viel anfangen können, da du ihn so nicht testen kannst.


    Entweder du musst dir jemand suchen, dem du genau beschreibst was das Programm alles können muss und du vertraust darauf dass das dann alles auch funktioniert oder du lernst programmieren. (...) Je nach dem wie deine Entscheidung entgültig ausfällt wird sich dieses Thema dann weiter entwickeln.


    Wie gesagt, wenn du es lernen willst, musst du noch ein paar Schritte zurück gehen und erst die Python-Grundlagen lernen.

    Das kannst du mit dem offiziellen Python-Tutorial machen.


    Grüße

    Dennis

    🎵🎸Die Nordsee schlägt dir ins Gesicht, trotzdem hast du verloren, du bist nicht weit gekommen, du läufst weiter nach vorn 🎵🎸

  • Hallo Hyle,


    vielen Dank. Ich bin ein Stück weitergekommen. Jetzt bekomme ich immernoch eine Meldung aus Zeile 108, aber ohne "no module named'wiegand' und zusätzlich eine Fehlermeldung aus Zeile 7, in der aber nur 3 Anführungszeichen stehen???

  • Du hast 'wiegand' für MicroPython installiert. Ich weis nicht ob du MicroPython auf dem Pi hast. Wenn du das nutzen willst, musst du es installieren.

    Ich habe diese Anleitung nicht getestet:

    https://lookslikematrix.de/ras…opython_raspberry_pi.html


    zusätzlich eine Fehlermeldung aus Zeile 7, in der aber nur 3 Anführungszeichen stehen???

    Lese die Fehlermeldung genau, die Zeile 7 bezieht sich nicht auf deine geöffnete Python Datei, sondern auf deine installierte 'wiegand.py'. Die ist für MicroPython geschrieben und das fehlt dir.

    Schau doch nach einem Python3 Modul, installiere es und starte dann dein Projekt.


    Grüße

    Dennis

    🎵🎸Die Nordsee schlägt dir ins Gesicht, trotzdem hast du verloren, du bist nicht weit gekommen, du läufst weiter nach vorn 🎵🎸

  • Ne. Klammere dich doch nicht so an den Code. Nehm lieber die Ratschläge von Kelvin an und steige langsam in das Thema ein.


    Du musst Zeile für Zeile verstehen lernen und so kannst du dein Projekt langsam umsetzen.


    Nur weil du ein Poster eines Sportwagen hast und dir Werkzeug bestellt hast, kannst du das Auto noch lange nicht bauen.


    Bitte geh strukturiert Stück für Stück voran und dann macht es echt Spass. :thumbup:

    🎵🎸Die Nordsee schlägt dir ins Gesicht, trotzdem hast du verloren, du bist nicht weit gekommen, du läufst weiter nach vorn 🎵🎸