#rfid #embedded-hal #mifare #no-std-driver

no-std mfrc522

A platform agnostic driver to interface the MFRC522 (RFID reader/writer)

11 releases (7 breaking)

0.8.0 Nov 24, 2024
0.7.0 Jan 13, 2024
0.6.1 Nov 4, 2023
0.6.0 May 19, 2023
0.1.0 Jan 17, 2018

#223 in Embedded development

Download history 242/week @ 2024-10-06 115/week @ 2024-10-13 16/week @ 2024-10-20 11/week @ 2024-10-27 15/week @ 2024-11-03 15/week @ 2024-11-10 29/week @ 2024-11-17 144/week @ 2024-11-24 150/week @ 2024-12-01 295/week @ 2024-12-08 90/week @ 2024-12-15 29/week @ 2024-12-22 23/week @ 2024-12-29 46/week @ 2025-01-05 41/week @ 2025-01-12 22/week @ 2025-01-19

139 downloads per month
Used in 3 crates

MIT/Apache

615KB
1.5K SLoC

Rust MFRC522 driver

This is a no_std driver for the MFRC522, an ISO/IEC 14443 A/MIFARE reader/writer IC.

This repository is an extension of japaric/mfrc522 and the new home of the mfrc522 crate.
For more information on the background of this repository, go here.

What works:

  • SPI communication with the MFRC522
  • Anticollision loop
  • Select for 4-byte and 7-byte UIDs
  • Mifare Classic authentication
  • Reading/writing data
  • Configurable timeout
  • Non-blocking API + support for the interrupt pin
  • Mifare Ultralight C 3DES authentication (no support planned)

Examples

In the examples/ directory, you can find examples for:

  • STM32L4 (no_std + embassy)
  • Raspberry Pi 2040 (no_std + rp-hal)
  • Raspberry Pi 4 (std)

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies