Wie kann ich zwei MFRC522-RFID-Reader gleichzeitig mit einem Raspberry Pi 3 Model B verwenden? Hallo zusammen, ich versuche seit über einem Monat, zwei MFRC522-RFID-Reader gleichzeitig mit meinem Raspberry Pi 3 Model B (Version 1.2) zu betreiben, leider ohne Erfolg. Mein Ziel ist es, dass beide Reader parallel arbeiten und unabhängig voneinander Tags erkennen und auslesen können. Ich verwende Python mit dem spidev -Modul und habe jedem Reader eine eigene SPI-Schnittstelle zugewiesen: Reader 1: SPI0 (Bus 0, Device 0), RST auf GPIO25 Reader 2: SPI1 (Bus 1, Device 0), RST auf GPIO17 Beide Reader sind korrekt verkabelt. SPI1 ist über Device Tree aktiviert, und ich verwende keine gemeinsamen CS-Pins. Ich habe eine eigene Klasse für MFRC522 geschrieben, um jeweils ein SPI-Device und einen RST-Pin zu verwenden. Hier ist der relevante Python-Code: python import spidev import RPi.GPIO as GPIO import time class MFRC522:     def __init__(self, spi_bus, spi_device, rst_pin):         self.spi = spidev.SpiDev()         self.spi.open(spi_bus, spi_device)         self.spi.max_speed_hz = 1000000         self.spi.mode = 0         self.rst = rst_pin         GPIO.setwarnings(False)         GPIO.setmode(GPIO.BCM)         GPIO.setup(self.rst, GPIO.OUT)         GPIO.output(self.rst, 1)         self.reset()     def reset(self):         GPIO.output(self.rst, 0)         time.sleep(0.1)         GPIO.output(self.rst, 1)         time.sleep(0.1)     def send(self, addr, val):         self.spi.xfer2([(addr << 1) & 0x7E, val])     def read(self, addr):         val = self.spi.xfer2([((addr << 1) & 0x7E) | 0x80, 0])         return val[1]     def scan_for_tag(self):         self.send(0x01, 0x0C)  # PCD_TRANSCEIVE         self.send(0x0D, 0x87)  # BitFramingReg         self.send(0x0C, 0x26)  # Request idle         time.sleep(0.01)         return self.read(0x0A) != 0  # FIFOLevelReg     def get_uid(self):         self.send(0x0D, 0x87)         self.spi.xfer2([0x93, 0x20])  # Anticollision         time.sleep(0.01)         resp = self.spi.xfer2([0x93, 0x20] + [0]*5)         uid = resp[2:6]         return ':'.join([hex(x)[2:].upper().zfill(2) for x in uid])     def cleanup(self):         self.spi.close()         GPIO.cleanup(self.rst) # Konfiguration der Reader reader1 = MFRC522(spi_bus=0, spi_device=0, rst_pin=25)  # SPI0 reader2 = MFRC522(spi_bus=1, spi_device=0, rst_pin=17)  # SPI1 try:     print("Starte RFID-Scanner (STRG+C zum Beenden)")     while True:         if reader1.scan_for_tag():             uid1 = reader1.get_uid()             print(f"Reader 1 UID: {uid1}")         if reader2.scan_for_tag():             uid2 = reader2.get_uid()             print(f"Reader 2 UID: {uid2}")         time.sleep(0.5) except KeyboardInterrupt:     print("\nBeende...") finally:     reader1.cleanup()     reader2.cleanup() Das Problem: Keiner der beiden Reader erkennt zuverlässig Tags. Der zweite reagiert manchmal, oft aber gar nicht oder liefert keine UID. Ich habe bereits unterschiedliche Polling-Intervalle, Resets und sogar die Versorgungsspannung überprüft, aber ohne Erfolg. so habe ich meine MFRC522 Reader angeschlossen: Hat jemand Erfahrung damit oder Ideen, wie ich beide MFRC522 zuverlässig gleichzeitig betreiben kann? Gibt es vielleicht Timing-Probleme, Konflikte zwischen den SPI-Bussen oder brauche ich spezielle Initialisierung? Ich bin für jede Hilfe dankbar!