Raspi MFRC522 | Weder read noch write möglich

  • Hallo liebe Forenmitglieder,

    Ich arbeite momentan an einem Projekt zum Abschluss meines Fach-Abis. Es geht darum ein Reservationsystem für Meetingräume, samt physischem Modell auf die Beine zu stellen.

    Ich hänge gerade am lesen und schreiben von RFID-tags. Wenn ich das "Write.py" skript ausführe, werde ich nach dem text gefragt den ich darauf schreiben möchte und sobald ich bestätige soll ich den RFID-Tag an den RC522 Scanner halten:

    New data:Hallo

    Now place your tag to write

    Halte ich die Karte oder den Tag an den Scanner, passiert nichts. Breche ich den Vorgang mittels CTRL + C ab, werden mir unverständliche Zeilen angezeigt:

    ^CTraceback (most recent call last):

    File "/home/schni015/pi-rfid/Write.py", line 11, in <module>

    reader.write(text)

    File "/usr/local/lib/python3.9/dist-packages/mfrc522/SimpleMFRC522.py", line 62, in write

    id, text_in = self.write_no_block(text)

    File "/usr/local/lib/python3.9/dist-packages/mfrc522/SimpleMFRC522.py", line 66, in write_no_block

    (status, TagType) = self.READER.MFRC522_Request(self.READER.PICC_REQIDL)

    File "/usr/local/lib/python3.9/dist-packages/mfrc522/MFRC522.py", line 259, in MFRC522_Request

    (status, backData, backBits) = self.MFRC522_ToCard(self.PCD_TRANSCEIVE, TagType)

    File "/usr/local/lib/python3.9/dist-packages/mfrc522/MFRC522.py", line 217, in MFRC522_ToCard

    n = self.Read_MFRC522(self.CommIrqReg)

    File "/usr/local/lib/python3.9/dist-packages/mfrc522/MFRC522.py", line 162, in Read_MFRC522

    val = self.spi.xfer2([((addr << 1) & 0x7E) | 0x80, 0])

    KeyboardInterrupt

    Eigentlich werden diese zeilen ja nur angezeigt wenn am Ende auch eine Fehlermeldung folgt aber da ist keine Fehlermeldung.

    Kann mir vielleicht jemand weiterhelfen?

  • Hallo,

    die Fehlermeldung ist, dass das Programm unerwartet mit Strg+C abgebrochen wurde. Dass da keine Meldung kommt, kann man noch einbauen, ist aber gerade nicht so wichtig.

    Hast du mal den Code, denn du da ausführst?

    Grüße

    Dennis

    P.S. Willkommen im Forum

    🎧 With the music execution and the talk of revolution, it bleeds in me and it goes 🎧

  • Hallo nscheer,

    ich nehme an, du hast das Script Write.py von pimpmylifeup, welcher auch das Python-Paket für den MFRC522 geschrieben hat.

    Achte darauf, dass alle Pins richtig angeschlossen sind, und die Software richtig eingerichtet ist.

    Häufig muss das Betriebssystem nach Einrichten neu gestartet werden.

    Ein guter Ansatz ist, das Betriebssystem (falls nicht geschehen) neu aufzusetzen und einen "reinen" Zustand zu haben.

    Dann nach dem Artikel alles aufsetzen und verbinden.

    Vielleicht im ersten Schritt auch den Leser direkt über Jumper-Kabel an das Pi schließen, ohne zusätzliche andere Komponenten.

    Auch hilfreich ist uns mitzuteilen, welchen Leser du verwendest, bzw. welchen Code.

    Aus Erfahrung kann ich sagen, dass dieses Repo (mit dem Artikel/Code) mit dem "Standard" Amazon Reader bei mir dann funktioniert hat, es kann aber manchmal auch Probleme beim Aufsetzen geben.

    Grüße

    Andre

  • Der Code der Read.py:

    #!/usr/bin/env python

    import RPi.GPIO as GPIO

    from mfrc522 import SimpleMFRC522

    reader = SimpleMFRC522()

    try:

    id, text = reader.read()

    print(id)

    print(text)

    finally:

    GPIO.cleanup()

    Der Code der Write.py:

    #!/usr/bin/env python

    import RPi.GPIO as GPIO

    from mfrc522 import SimpleMFRC522#!/usr/bin/env python

    reader = SimpleMFRC522()

    try:

    text = input('New data:')

    print("Now place your tag to write")

    reader.write(text)

    print("Written")

    finally:

    GPIO.cleanup()


    Die Codes der SimpleMFRC522 und der MFRC522 sind viel zu lang um sie hier rein zu pasten. Ich habe nichts an den dateien geändert, sind also noch die Originalen von der Installation von mfrc522.

    Ich werde denke ich versuchen den Raspi neu aufzusetzen.

  • Auf der Github-Seite gibt es ein Beispielcode:

    Was passiert wenn du den ausführst und die Karte an den Reader hälst? Bekommst du eine Ausgabe?

    Grüße

    Dennis

    🎧 With the music execution and the talk of revolution, it bleeds in me and it goes 🎧

  • Ist SPI aktiviert ?

    Sind die MISO, MOSI, CLK, CE , +3,3V und GND korrekt angeschlossen ?

    Sind am Reader Schalter vorhanden, um von SPI auf UART umzustellen und richtig geschaltet ?

    Funktionieren andere SPI-Geräte ?

    Lassen sich die Tags an einem anderen Reader (z.B. Smartphone) auslesen ?

    Sind die Tags 125kHz oder 13,56MHz ?

    Beispiele gibt es genug auf github.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!