RC522 RFID with WeAct Black Pill STM32F411CE

Wiring for the RC522 RFID reader (13.56 MHz) on the WeAct Black Pill STM32F411CE (STM32F411CE, 3.3 V logic), chosen with the same pin rules BoardPilot uses: default buses first, and no pins that are used for flash, USB, the debugger or booting.

Wiring

RC522 RFID pinRoleWeAct Black Pill STM32F411CE pinNotes
SDASPI chip selectA4 (PA4)This is the SPI chip select (CS), despite the SDA label
SCKSPI clockA5 (PA5)
MOSISPI MOSIA7 (PA7)
MISOSPI MISOA6 (PA6)
IRQInterruptA0 (PA0)Interrupt, optional. Leave unconnected
GNDGroundG
RSTInput to the partB12 (PB12)Reset, active LOW
3.3VPower3V33.3 V only. Never 5 V

Check before you power it on

Test code (Arduino)

// Library: MFRC522 (miguelbalboa)
#include <SPI.h>
#include <MFRC522.h>

MFRC522 rfid(PA4, PB12);  // SDA is the SPI chip select

void setup() {
  Serial.begin(115200);
  SPI.begin();
  rfid.PCD_Init();
  rfid.PCD_DumpVersionToSerial();  // 0x91 or 0x92 means the reader answers
}

void loop() {
  if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) return;
  for (byte i = 0; i < rfid.uid.size; i++) Serial.print(rfid.uid.uidByte[i], HEX);
  Serial.println();
  rfid.PICC_HaltA();
}

Arduino board: STMicroelectronics:stm32:GenF4:pnum=BLACKPILL_F411CE,usb=CDCgen,upload_method=dfuMethod. To upload over USB, hold BOOT0, press and release NRST, then release BOOT0 (DFU mode). An ST-LINK on the SWD pins also works.

Questions

Which WeAct Black Pill STM32F411CE pins do I use for the RC522 RFID?

SDA → A4 (PA4), SCK → A5 (PA5), MOSI → A7 (PA7), MISO → A6 (PA6), IRQ → A0 (PA0), GND → G, RST → B12 (PB12), 3.3V → 3V3.

Does the RC522 RFID work with the WeAct Black Pill STM32F411CE at 3.3 V?

Yes: the RC522 RFID runs at 3.3 V and the WeAct Black Pill STM32F411CE uses 3.3 V signals, so no level shifting is needed.

BoardPilot checks this wiring in 3D as you build it, and finds crossed or missing wires on the real board.

Download BoardPilot

Full WeAct Black Pill STM32F411CE pinout · RC522 RFID reader (13.56 MHz): all pins and data

The RC522 RFID on other boards

Other parts on the WeAct Black Pill STM32F411CE