RFID Readers with Netduino
Up until now, all I had done with the Netduino was blink the built-in LED, but after seeing a question on the Netduino forum regarding two RFID readers I had laying around, I got inspired and did a few tests.
The question on the forum was about reading distance, so that will be the focus of this post.
The two readers in quetion are:
- Parallax 125kHz RFID reader with UART interface
- ID Innovations ID-20 125kHz RFID reader, also via the UART interface
I got the Parallax reader from the Maker Shed Store and the ID-20 from Sparkfun, but they are both available from other sources too.
I started out with some code by ATXcoder in the Netduino forum but did a few modifications, since I was getting double reads. Using a logic analyzer I found that the Parallax module actually sends out two reads in some cases, so the extra code is just to ignore that.
The same code was also slightly modified to work with the ID-20 module. The major changes was setting the baud rate to 9600 instead of 2400 and changing the buffer size to 16 bytes, since the ID-20 has different, and more, control characters in addition to a checksum.
After trying the two readers with the same tags (both the credit card style and a keychain tag) I must say, that they perform pretty much the same. Both have some variation over time. You can have a read at 3 inches and right after it won’t read the same tag until it get to about 2 inches away.
Downloads
Here is the Visual Studio 2010 solution, with two Netduino projects, one for each reader. Ideally these would be wrapped up in nice little classes, but I haven’t gotten to that yet. Feel free to use.
Demo video
I have made a little video showing both readers using both of the two tag types. Both tags are EM4100 family passive tags that I got from the Maker Shed Store. The distance indications on the paper is inches.