So, here's a synopsis of what I am trying to do. I want to put 3 RC522 readers side by side inside of a book, facing the cover, that will be constantly on, using a Rpi zero W. When an RFID chip gets waved over the book, I want any module to read it, send the RFID tag number over to the code, and then I will perform whatever task I want (the RFID reading will be paused while the code executes). Then, the next RFID tag will be waved over, rinse and repeat. I am building this for the average user and want to make it super easy for the chip to be detected wherever on the book cover it is placed, hence three modules. I am not worried about collision since there won't be more than 1 unique chip present at a time.

So far, I've enabled the SPI1-3CS overlay to enable 3 CS lines. So, when I have two plugged into SPI1, it tends to work ok. When I have three, none of the other readers work at all, even if I'm not even using the third. It's almost like by it being attached, it's somehow ruining the others. I've checked individually that all of the RC522 modules work. I am also running them all off the 5v line with a step down regulator to get the 3.3v out. I am using the MFRC522-python library.

How can I get all three of them to run?

1 Answer 1


So, after digging some more and finding this article: https://forum.arduino.cc/index.php?topic=477085.0, it looks like the issue has to deal with interference somewhat.

I decided to just run the third one on spi0 and things are working the way I want them to.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.