RFID programmer

Discussion in 'The Projects Forum' started by Readro, Jan 8, 2013.

  1. Readro

    Thread Starter New Member

    Jan 8, 2013
    7
    1
    Hi, I'm a little bit daunted posting on here with my comparatively feeble electronics knowledge, but here goes.

    I'm looking to make a 125 kHz RFID programmer. I made one with an Arduino using an off-the-shelf module but it's not as versatile as I need it to be. So I thought I'd try and make a circuit myself. The programmer needs to create a nice 125 kHz signal for its antenna (typically a coil and capacitor at resonance for obvious reasons, wavelengths are pretty big). To communicate with the chip in the RFID tag, the field needs to be modulated with on-off keying.

    I've been reading around the internet, looking at what other people have been done for RFID projects. Some seem to have had success using a PWM input into an LC tank and using the coil as the antenna. Obviously there's no amplification stage but I don't need a huge read range so I don't think it's absolutely necessary. I thought maybe I could use an output from an IC, connected to the base of a transistor to do the keying.

    Now, part of me thinks I ought to go for a traditional oscillator design, like a Colpitts. But then I wonder whether I might be getting a bit out of my depth. I know what inductor and capacitor values I need for resonance, but it seems a bit overwhelming.

    I appreciate that this post might sound like me babbling on but I suppose I'm asking for any advice or thoughts that might help me. I feel that this is doable but I probably need a shove in the right direction.

    Many thanks,

    Rob
     
  2. wayneh

    Expert

    Sep 9, 2010
    12,086
    3,024
    So you basically need an AM transmitter, of sorts, broadcasting at 125 kHz? And the keying turns this on and off?
     
  3. WBahn

    Moderator

    Mar 31, 2012
    17,715
    4,788
    You might look at the ProxMark III. It's a pretty sophisticated circuit, but it is open source so you can look at how various parts of it were implemented.
     
  4. Readro

    Thread Starter New Member

    Jan 8, 2013
    7
    1
    Essentially, yes. The programmer needs to turn the carrier on and off in order to send a series of ones and zeros to the tag. This allows you to send instructions to the tag, including an instruction to save data to one of its memory locations.

    The original ProxMark seems to generate a carrier in a similar way that I was considering, i.e. blast a square wave at a resonant LC circuit. That gives me confidence that I'm heading in the right direction.
     
  5. Readro

    Thread Starter New Member

    Jan 8, 2013
    7
    1
    This is what I was thinking of. The square wave into the base of the transistor is there to mimic the logic output from a future IC that will do the keying. The 125kHz square wave will probably be created by a separate IC to make things easier.

    When I run it on a circuit simulator, I seem to get a voltage spike across the coil when the transistor is switched off.
     
  6. Readro

    Thread Starter New Member

    Jan 8, 2013
    7
    1
    Apologies for making three posts in a row, but I've been playing with some more simulations. A 1k resistor in parallel with the LC section seems to smooth the transition out a bit and remove the spikes but I'm not entirely sure why.
     
  7. wayneh

    Expert

    Sep 9, 2010
    12,086
    3,024
    It quickly damps the LC oscillation and limits the max dI/dt.
     
  8. Readro

    Thread Starter New Member

    Jan 8, 2013
    7
    1
    Many thanks! :)

    Also, I've been looking into FSK demodulation as in the future I'd like the programmer to be able to verify that a programming operation has been successful. It looks a bit beyond me at the moment. I was hoping there'd be an easy way to do it but I don't think there is.
     
Loading...