

The M5Stack UHF-RFID is a compact RFID reader module designed for UHF (Ultra High Frequency) tags, enabling wireless identification and data transfer. This module is compatible with M5Stack systems and features a built-in antenna for efficient scanning. It is ideal for applications requiring long-range RFID reading, such as inventory management, asset tracking, and access control systems.








The M5Stack UHF-RFID module is designed to provide reliable and efficient RFID tag reading. Below are its key technical specifications:
| Specification | Details | 
|---|---|
| Operating Frequency | 840 MHz - 960 MHz (UHF band) | 
| Communication Interface | UART (default baud rate: 115200 bps) | 
| Operating Voltage | 5V DC | 
| Current Consumption | ~200 mA (typical) | 
| Reading Distance | Up to 1 meter (depending on tag type) | 
| Antenna | Built-in UHF antenna | 
| Dimensions | 54 x 54 x 13 mm | 
| Compatibility | M5Stack Core series | 
The M5Stack UHF-RFID module connects to M5Stack systems via the Grove port. Below is the pin configuration for the Grove connector:
| Pin | Name | Description | 
|---|---|---|
| 1 | VCC | Power supply (5V) | 
| 2 | GND | Ground | 
| 3 | RX | UART Receive (to MCU TX pin) | 
| 4 | TX | UART Transmit (to MCU RX pin) | 
Hardware Setup:
Software Setup:
Below is an example of how to use the M5Stack UHF-RFID module with an Arduino UNO. This code reads RFID tag data and prints it to the serial monitor.
#include <SoftwareSerial.h>
// Define RX and TX pins for SoftwareSerial
#define RX_PIN 10  // Connect to TX pin of UHF-RFID module
#define TX_PIN 11  // Connect to RX pin of UHF-RFID module
// Initialize SoftwareSerial for communication with the RFID module
SoftwareSerial RFID(RX_PIN, TX_PIN);
void setup() {
  Serial.begin(9600);  // Start serial communication with PC
  RFID.begin(115200);  // Start communication with RFID module
  Serial.println("M5Stack UHF-RFID Reader Initialized");
  Serial.println("Waiting for RFID tags...");
}
void loop() {
  if (RFID.available()) {
    // Read data from the RFID module
    String tagData = "";
    while (RFID.available()) {
      char c = RFID.read();
      tagData += c;
    }
    // Print the received tag data to the serial monitor
    Serial.print("RFID Tag Data: ");
    Serial.println(tagData);
  }
}
No Data Received:
Short Reading Distance:
Module Not Detected:
Q: Can the M5Stack UHF-RFID module read multiple tags simultaneously?
A: Yes, the module supports anti-collision algorithms, allowing it to read multiple tags within its range.
Q: What is the maximum reading distance of the module?
A: The module can read tags up to 1 meter away, depending on the tag type and environmental conditions.
Q: Is the module compatible with non-M5Stack systems?
A: Yes, the module can be used with other microcontrollers (e.g., Arduino, ESP32) via the UART interface.
Q: How do I change the UART baud rate?
A: The baud rate can be configured by sending specific commands to the module. Refer to the M5Stack UHF-RFID command set documentation for details.
By following this documentation, you can effectively integrate and use the M5Stack UHF-RFID module in your projects.