Posts by ADB

    Hallo und guten Morgen.


    Gleiches Projekt, welches erweitert werden soll.

    Gewünscht wäre, dass an einem Raspberry Pi mehrere Fingerprint-Sensoren (sowie ein Keypad) angeschlossen werden können.


    Das Konverter-Modul zwischen Fingerscanner und dem Raspberry hat zusätzlich noch einen MicroUSB-Anschluss. Sollte es nicht möglich sein, an den 4 USB-Ports des RP3 jeweils einen solchen Fingerprint anzuschliessen und entsprechend einzubinden?

    Theoretisch müsste doch im Script nur der nachfolgende Eintrag angepasst werden:


    Code
    ser = serial.Serial("/dev/ttyS0", 19200)

    Ersetzen durch z.B.:


    Code
    ser = serial.Serial("/dev/ttyUSB0", 115200)


    Rein das Anpassen dieser Zeile scheint den Fingerprint-Scanner nicht zu erkennen -> der Scanner wurde dabei an jedem Port angeschlossen und ein Verbindungsaufbau versucht.


    Mit:

    Code
    ls -l /dev/serial/by-id

    müsste doch eigentlich aufgelistet werden, welches Gerät an welcher Schnittstelle angeschlossen ist. Leider wirft es die nachfolgende Meldung zurück:


    ls: Zugriff auf '/dev/serial/by-id' nicht möglich: Datei oder Verzeichnis nicht gefunden


    Bin ich auf dem Holzweg?

    Verdammt, jetzt ärgere ich mich aber über mich selbst. Schließ doch erst einmal das Modul richtig an (Seiten 4,6 und 22 Deiner Anleitung). In Deinem ersten Post hab ich’s glatt übersehen...


    TX (Modul) gehört an RX (RPi Pin 10 - BCM 15)

    RX (Modul) gehört an TX (RPi Pin 8, BCM 14)


    Du sprichst mir aus der Seele!! Habe mich natürlich zu sehr darauf fixiert, dass der RX auf RX gehört und TX auf TX - in dieser Art natürlich eine etwas "einseitige" Kommunikation. Sorry!

    Im Nachhinein ist man immer schlauer und es wird mir wohl für immer in Erinnerung bleiben! :shy:


    Nachdem ich die Anschlüsse auf Pin 8 und 10 getauscht und die seriellen Einträge im Code wieder angepasst hatte, hat das System (kurz bevor ich das Tuch werfen wollte) doch noch funktioniert. Wie so oft: Der Fehler liegt zwischen dem Stuhl und der Tastatur. :lol:


    Auch die Parameter der seriellen Schnittstelle scheinen auch mit der Original-Konfiguration zu funktionieren:

    Code
    ser = serial.Serial("/dev/ttyS0", 19200)

    Aktuell fehlt mir die Zeit, um noch weiter mit dem Code des Fingerprints zu basteln. Der Fingerprint-Reader soll in einem zukünftigen Projekt eingesetzt werden und dafür musste ich natürlich zuerst wissen, ob er überhaupt funktioniert.


    Zur Erkennungsrate kann ich nur sagen: Top! Auch auf dem obersten "Compare Level".

    In wie fern das System gegen Manipulation sicher ist, kann ich aktuell nicht sagen. Aber man soll ja den Zugang zu einem Objekt grundsätzlich nie nur über ein einziges System gewähren -> und schon gar nicht über einen Finger, den man (bei Verlust) nicht mehr ersetzten kann. :lol:


    Bedanke mich recht herzlich für eure Unterstützung!

    müsste denn der pi-Benutzer nicht bereits Root-Rechte durch das "Vorwort" sudo erhalten und entsprechend auch die Berechtigung auf die serielle Schnittstelle erhalten?


    Habe auch noch folgende zwei Tipps versucht:

    https://pi-buch.info/die-serie…e-auf-dem-raspberry-pi-3/

    https://maker-tutorials.com/ua…m-raspberry-pi-aktiveren/


    Es scheint ja so, als würden die Schnittstellen sich gegenseitig noch bekämpfen...


    Leider jedoch auch dabei keinen Erfolg.


    Habe es auch ein weiteres Mal mit dem USB-Kabel (statt den einzelnen Drähten von UART). Auch da kein Fortschritt.

    Wie kann ich herausfinden, welche Schnittstelle die richtige ist (z.B. ttyUSB0, ttyUSB1...)?

    Und welche Bitrate hat die Verbindung über USB?

    Leider immer noch diesselbe Fehlermeldung.


    Wenn ich den Code von Main.py anschaue...

    ...müsste dieser Fehler nicht angezeigt werden, wenn es Probleme beim Reset (Schalten der GPIO) gibt?


    Hier wäre dann auch noch der Code von der "Capacitive_Fingerprint_Reader.py"



    Was kann ich sonst noch überprüfen?

    Nach der Anleitung von dieser Seitehabe ich folgendes eingegeben:


    Zum Testen, ob die serielle Schnittstelle auch wunschgemäß arbeitet, verbinden Sie die GPIO-Ports TX und RX des UART miteinander (Pins 8 und 10 der Stiftleiste). Dmit wird jedes gesendete Byte gleich wieder auf den Empfang zurückgegeben. Dann starten Sie das Teminalprogramm Minicom (ggf. muss das erst nachinstalliert werden) im lokalen Modus, d. h. ohne Senden von Init-Strings etc.:

    Code
    minicom -b 9600 -o -D /dev/ttyAMA0

    Jedes Zeichen, das Sie eintippen wird nun als Echo auf dem Bildschirm angezeigt (sofern alles in Ordnung ist). Einen Zeilenvorschub erreichen Sie übrigens mit "Strg-J" (Linefeed). Beenden läßt sich Minicom mit der Tastenfolge "Strg-A" und "q".




    Im Terminal-Programm heisst es nach dem Eingeben des Befehls:


    Willkommen zu minicom 2.7

    Optionen: I18n

    Übersetzt am Apr 22 2017, 09:14:19

    Port /dev/ttyAMA0

    Drücken Sie CTRL-A Z für Hilfe zu speziellen Tasten



    Auch wenn ich RXD und TXD (Pin 8 & 10) miteinander verbinde und anschliessend irgendwelche Zeichen im LXTerminal eingeben will, erscheint leider gar nichts - d.h. der Cursor im Terminal bewegt sich beim Eingeben der Zeichen überhaupt nicht.

    Starte ich das "minicom" überhaupt so richtig?

    Danke für deine Antwort.

    Eigentlich ist so ein Konverter gar nicht notwendig.

    Wenn die Platine vom oben erwähnten Link genauer betrachtest, siehst du, dass dort bereits ein Mikro-USB-Anschluss auf der Rückseite verbaut ist.

    Auch diese Möglichkeit habe ich natürlich versucht. In den Code-Einstellungen wurde bei dem Versuch noch folgendes angepasst:

    Code
    ser = serial.serial('/dev/ttyusb0' 9600)


    Theoretisch spielt es eigentlich keine Rolle.

    Was müsste ich denn sonst noch anpassen, damit ich per USB den Scanner zum Laufen kriege?

    Danke für eure Antworten.


    Ich muss gestehen, dass ich bereits vor einigen Tagen einige Versucht mit einer Raspberry-Kamera unternommen habe und so wie es aussieht, schlussendlich doch noch ein anderes System installiert - wenn ich dies jedenfalls richtig interpretiere.


    Beim Befehl

    Code
    cat /etc/os-release"

    ...wird jedenfalls folgendes angezeigt:

    PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"

    Name="Raspbian GNU/Linux"

    Version_ID="9"


    Mit den nachfolgenden Befehlen sollten die Libraries aus dem Link doch eigentlich installiert worden sein...?


    Code
    chmod 777 build
    ./build


    ...und...


    Code
    ./configure
    make
    sudo make check
    sudo make install

    ...usw.


    Und betreffend...


    Code
    ls -la /dev/serial*


    ...folgendes:


    Code
    lrwxrwxrwx 1 root root 5 Mär 21 07:02 /dev/serial0 -> ttyS0
    lrwxrwxrwx 1 root root 7 Mär 21 07:02 /dev/serial1 -> ttySAMA0


    .



    Quote

    AUf dem Pi3B+ musst Du BT sowie evt. die serielle Konsole komplett abschalten, wenn Du die vollständige UART nutzen willst.

    Reicht es aus, oben rechts in der Leiste Bluetooth über "Turn Off Bluetooth" zu deaktivieren?

    Und unter "Raspberry-Pi-Konfiguration" wird "Serial Console" deaktiviert, nehme ich an...?


    Aktuell sind diese beiden (Bluetooth + Serial Console" deaktiviert und ein Aufrufen der main.py möchte trotzdem noch nicht korrekt ausgeführt werden...

    Guten Morgen.


    Vor Kurzem habe ich meinen ersten Raspberry Pi 3B+ und dazu ein Fingerprint Scanner gekauft und darauf gleich mal das "Rasphian Jessie" als Betriebssystem installiert.


    Pi: https://www.bastelgarage.ch/ra…ew-raspberry-pi-3-model-b

    Betriebssystem: http://downloads.raspberrypi.o…ages/raspbian-2018-11-15/

    Fingerprint Scanner: https://www.bastelgarage.ch/ka…kleser?search=fingerprint


    Gemäss der nachfolgenden Dokumentation wurde der Fingerprint-Scanner an den Pi angeschlossen:

    https://www.waveshare.com/w/up…Reader_User_Manual_EN.pdf


    Anschluss Scanner am PI:

    VCC am Pin 2 (+5V)

    GND am Pin 6 (GND)

    TXD am Pin 8 (GPIO 14)

    RXD am Pin 10 (GPIO 15)

    Wake am Pin 16 (GPIO 23)

    RST am Pin 18 (GPIO 24)


    Anschliessend die nachfolgenden Schritte von der nachfolgenden Anleitung (ab Seite 22) durchgeführt:

    https://www.waveshare.com/w/up…Reader_User_Manual_EN.pdf


    ...und die in dieser Doku verlinkten Libraries installiert:

    https://www.waveshare.com/wiki…ries_Installation_for_RPi


    Im Raspberry-System habe ich unter "Raspberry-Pi-Konfiguration" sind "I2C", "Serial Port", "Serial Console" und "GPIO-Fernzugriff" aktiviert. Als Versuch wurden auch alle Schnittstellen einmal aktiviert.


    In der Datei "/boot/config.txt" ist "enabled_uart=1" vorhanden.


    Den Demo-Code von der offiziellen Site wurde heruntergeladen. Im Code steht "ser = serial.Serial("/dev/ttyS0", 19200), welches ja gemäss der Doku passen sollte.


    Der GPIO 24 wird gemäss der Messung mit dem Multimeter gegen GND auch wirklich auf HIGH und wieder auf LOW zurückgeschaltet. Auch habe ich versucht, den Scanner nur an 3.3V anzuschliessen - ohne Erfolg.


    Speicherorte:

    bcm2835-1.39 -> /home/pi/Downloads/bcm2835-1.39

    Capacitive_Fingerprint_Reader_Code -> /home/pi/Downloads/Capacitive_Fingerprint_Reader_Code/RaspberryPi/python3/

    RPi.GPIO-0.6.5 -> /home/pi/Downloads/RPi.GPIO-0.6.5

    spidev-3.4 -> /home/pi/Downloads/spidev-3.4

    wiringPi -> /home/pi/Downloads/wiringPi


    Sind die Dateien in einem speziellen Verzeichnis abzulegen?


    Wechsle ich über das LXTerminal ins Verzeichnis /home/pi/Downloads/Capacitive_Fingerprint_Reader_Code/RaspberryPi/python3/ und gebe dort den nachfolgenden Befehl ein, wird stets eine Fehlermeldung ausgegeben:


    Befehl: “sudo python3.5 main.py"

    Fehlermeldung: "***ERROR***: Please ensure that the modul power supply is 3.3V or 5V, the serial line connection ist correct, the baud rate defaults to 19200, and finally the power is switched off, and the power on again"


    Unter diesem Link steht auch noch folgender Eintrag:

    Note: the serial port on Raspberry Pi 3 Model B is unusable, because Pin 14 and Pin 15 is connected to the on-board Bluetooth model.


    Bluetooth habe ich über das Menü oben rechts "Turn Off Bluetooth" deaktiviert - leider auch ohne Erfolg.


    im LXTerminal gibt der Befehl "ls /dev/ttyS0" den Wert "/dev/ttyS0" zurück. Die Schnittstelle scheint demnach in Ordnung zu sein...?


    Hat jemand eine Idee, was schief laufen kann oder was ich noch testen kann, um dem Problem auf die Pelle zu rücken?


    Mit dem DemoTool unter Windows (über USB) funktioniert der Scanner - ein Defekt kann demnach ausgeschlossen werden.


    Danke bereits im Voraus.


    Gruss

    ADB