AVRFID
An inexpensive I2C HID RFID tag reader using custom designed multi-layer PCBs.
AVRFID is a cost-effective RFID reader implementation using an AVR microcontroller and custom-designed PCBs. It decodes HID Prox 125kHz FSK signals and provides I2C interface for host integration.
- Novel custom PCB design with minimal external components.
- Manchester encoding implementation for signal decoding.
- Published on hackaday.com with widespread community adoption.
Hardware Design
AVRFID's minimalist approach:
// Signal acquisition timing
#define SAMPLING_RATE 256000 // 256kHz sampling
#define ManchesterTiming 16 // 16 samples per bit
// I2C slave configuration
#define I2C_ADDRESS 0x50Manchester Decoding
Real-time signal decoding:
void decodeManchester(uint16_t samples[], int count) {
int bitCount = 0;
for (int i = 0; i < count - 1; i++) {
if (samples[i] != samples[i + 1]) {
// Edge detected
bitBuffer[bitCount++] = samples[i] > samples[i + 1];
}
}
}I2C Interface
Standard I2C protocol for host integration:
// I2C data format
struct RFIDData {
uint8_t cardId[4];
uint8_t checksum;
uint8_t timestamp[4];
};Community Impact
- Many reproductions by engineers worldwide
- Used in security research and access control systems
- Educational tool for embedded systems learning