1
\$\begingroup\$

I'm having a hard time figuring out how to emulate 13.56Mhz RFID Mifare tags using Arduino and basic components i have tested some ideas but i couldn't read bytes due to difference in protocols and frequencies i even opened a new Mifare 1k tag and soldered its coil to the circuit to avoid errors in induction calculation and i have calculated the frequency but im out of luck, i already found many similar projects for 125khz but i have the rc522 RFID reader so i can't test 125khz yet,

and for 125khz i found this:

(www.instructables.com/id/RFID-Emulator-How-to-Clone-RFID-Card-Tag-/)

Also

(www.instructables.com/id/Stupid-Simple-Arduino-LF-RFID-Tag-Spoofer/) This is the code i have used

int coil_pin = 9;
void setup(){
    Serial.begin(9600);
    //Set pin as output
    pinMode(coil_pin, OUTPUT);

   //Start it as low
   digitalWrite(coil_pin, LOW);
}

//Does manchester encoding for signal and sets pins.
//Needs clock and signal to do encoding
void set_pin_manchester(int clock_half, int signal)
{
   //manchester encoding is xoring the clock with the signal
   int man_encoded = clock_half ^ signal;

   //if it's 1, set the pin LOW (this will tune the antenna and the reader 
    sees this as a high signal)
   //if it's 0, set the pin to HIGH  (this will detune the antenna and the 
    reader sees this as a low signal)
 if(man_encoded == 1)
 {
     digitalWrite(coil_pin, LOW);
 }
 else
 {
      digitalWrite(coil_pin, HIGH);
 }
      Serial.println(man_encoded);

 }

 void loop()
 {
 //this is the card data we're spoofing.  It's basically 10 hex F's
 int data_to_spoof[64] = {1,1,1,1,1,1,1,1,1, 1,1,1,1,0 ,1,1,1,1,0, 1,1,1,1,0  
 ,1,1,1,1,0, 1,1,1,1,0 ,1,1,1,1,0, 1,1,1,1,0 ,1,1,1,1,0, 1,1,1,1,0 
 ,1,1,1,1,0, 0,0,0,0,0};
 for(int i = 0; i < 32; i++)
 {
     set_pin_manchester(0, data_to_spoof[i]);
     delayMicroseconds(5);

     set_pin_manchester(1, data_to_spoof[i]);
     delayMicroseconds(5); 
   }
 }

The schematics enter image description here

Also tried this, with difference in capacitor and inductor values as i'm working with 13.56Mhz

enter image description here

I appreciate any help

\$\endgroup\$
  • \$\begingroup\$ "i've tested some idea" is anything but a clear problem statement. \$\endgroup\$ – Dmitry Grigoryev Jul 26 '17 at 14:50
  • \$\begingroup\$ seriously man: i even open a new Mifare 1k tag and solder its coil to the circuit to avoid error in induction \$\endgroup\$ – Ninja Jul 26 '17 at 15:03
  • \$\begingroup\$ it's a lot of trial and errors for the last couple days even me can't remember all what i tested \$\endgroup\$ – Ninja Jul 26 '17 at 15:04
  • \$\begingroup\$ Welcome to EE.SE. Can we encourage you to capitalise and punctuate properly for legibility and credibility. Your Arduino compiler wouldn't let you away with it. \$\endgroup\$ – Transistor Jul 26 '17 at 15:28
  • \$\begingroup\$ sure i will review it \$\endgroup\$ – Ninja Jul 26 '17 at 15:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.