#!/usr/bin/env python # -*- coding: utf8 -*- import RPi.GPIO as GPIO import MFRC522 # [1] Create an object of the class MFRC522 GPIO.setwarnings(False); MIFAREReader = MFRC522.MFRC522() # [2] Scan for cards (status,TagType) = MIFAREReader.MFRC522_Request(MIFAREReader.PICC_REQIDL) # [3] If no card found -> exit 1 if status != MIFAREReader.MI_OK: print 127; exit(127); # [4] Get the UID of the card (status,uid) = MIFAREReader.MFRC522_Anticoll() # [5] If no UID read -> exit 1 if status != MIFAREReader.MI_OK: print 127; exit(127); # [6] Print UID hexCode = []; hexCode.append( str(hex(uid[0]))[2:] ); hexCode.append( str(hex(uid[1]))[2:] ); hexCode.append( str(hex(uid[2]))[2:] ); hexCode.append( str(hex(uid[3]))[2:] ); if( len(hexCode[0]) == 1 ): hexCode[0] = '0' + hexCode[0]; if( len(hexCode[1]) == 1 ): hexCode[1] = '0' + hexCode[1]; if( len(hexCode[2]) == 1 ): hexCode[2] = '0' + hexCode[2]; if( len(hexCode[3]) == 1 ): hexCode[3] = '0' + hexCode[3]; suid = hexCode[0]; suid += '-' + hexCode[1]; suid += '-' + hexCode[2]; suid += '-' + hexCode[3]; print suid; exit(0);