RFID programmer

Thread Starter

Readro

Joined Jan 8, 2013
7
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
 

wayneh

Joined Sep 9, 2010
17,496
So you basically need an AM transmitter, of sorts, broadcasting at 125 kHz? And the keying turns this on and off?
 

WBahn

Joined Mar 31, 2012
29,978
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.
 

Thread Starter

Readro

Joined Jan 8, 2013
7
So you basically need an AM transmitter, of sorts, broadcasting at 125 kHz? And the keying turns this on and off?
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.

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.
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.
 

Thread Starter

Readro

Joined Jan 8, 2013
7
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.
 

Attachments

Thread Starter

Readro

Joined Jan 8, 2013
7
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.
 

Thread Starter

Readro

Joined Jan 8, 2013
7
It quickly damps the LC oscillation and limits the max dI/dt.
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.
 
Top