Questions?

Skills

SparkFun RFID Evaluation Shield - 13.56MHz

Description: This board is an evaluation platform for the SM130 RFID module. It includes an XBee header, PCB trace antenna, and has the layout to be used as a shield for an Arduino. There is a small prototyping area as well. This board can also be used as an antenna to the SM130 RFID module. Be sure to check the schematic for information on the connections.

Customer Comments

FYI I’ve had Luck sawing this board in half to create a remote antenna. I left the the trimmer capacitors on the antenna half and brought ground and the two antenna lines direct to the SM130 module pins. In my case these pass through a DB25 cable (Antenna ground is connected to the cable shield at both ends). It’s a little hard to explain without detailed build instructions. Performance appears to be largely unaffected but I’ve modified all the boards that I have so a side-by-side comparison is not possible. A handy mod to the next rev of this board would be to make it perforated so the user could easily relocate the antenna.

Hi! The sketch provides the pin 13 is used as the Reset. Can it be changed? I saw number 13 in the Software serial library(since this one is used and not a specific library for this product), is this the pin the sketch is talking about? Is it safe to change it? or do you know a line of code or a library which implements altering the reset? By the way, I’m concerned with this pin since I’m using an ethernet shield which is on SPI and uses the pin 13. Or can I just leave it alone? :) Thanks for the replies. That would be a great help for my college final year project. :)

Is it possible to change the reset to any other GPIO pin? Can it be done manually? Like if it’s intended for D13, I would redirect it to any other pin? Or should I configure it first via software? Or is it hard wired to 13 and cannot be changed? thanks for the reply. I’m using another device which is in SPI, particularly the RC522 RFID Reader which is hardwired to 11,12 and 13 for MISO, MOSI and SCK.

Does anyone know what the field strength of this is? I bought some sticker tags but the reader is reading them. It could be the field strength isn’t enough. Also, maybe (And likely) I don’t fully understand the requirements of MIFare compliance.

First off, thanks for providing the example code! It’s definitely great for getting started. That said, I’d like to note my disappointment with the almost total lack of comments. The code would be more useful with better documentation.
Please let me know if I’m missing something.

did you receive yours? I’m wondering what exactly comes with and what doesn’t… since it states: “RFID module, XBee, headers or arduino board” However it doesn’t explain whether it comes with the XBee explorer and no one seems to want to answer this… I’d appreciate it if you could provide this info.

iClass is a protocol like mifare. If your cards are like my school IDs, they are likely 13.56MHz but the reader isn’t registering them because the protocols don’t match. I’m working to see if I can overcome this but I’m not having any luck. I’m also just starting on it so if I make a breakthrough, I’ll post again about it.

I’m having trouble using this board with Ethernet shield. If someone can point me how to properly set pins I would be grateful. Ethernet part of my sketch works fine, but when I add RFID board, there is some obvious pin collision because, even if I don’t setup RFID sketch parameters, “found” LED activates at the same time as “TX” LED on Eth. shield.
Thanks in advance!

Here are the changes to do for the “Tag ID Example code” if you are usind Arduino 1.0 or later :
Replace “NewSoftSerial” with “SoftwareSerial” (twice)
and change the lines like “rfid.print(255, BYTE);” with “rfid.write(byte(255));” (10 times in this code)
And now it will work !

I did this and I get the “START” message but that’s it. The “Found” and “Search” LEDs don’t do anything and nothing new appears more on the serial terminal. I testing it with the tag SEN-10128 but have also tried various cards in my wallet.

Note: be sure include the NewSoftSerial lib, http://arduiniana.org/libraries/newsoftserial/

Usage: Sketch prints ‘Start’ and waits for a tag. When a tag is in range, the shield reads the tag,
blinks the ‘Found’ LED and prints the serial number of the tag to the serial port. It then attempts to
authenticate memory block 0x01. If this is successful it will display the “Success” status message and
the contents of memory block 0x01. It will then ask for a 4-byte input to write to the tag. After receiving
a 4-byte input, it will attempt to write this data to the tag and return the write status.

This code uses the default transport key to authenticate the Value Block 0x01. If you have already written
a key to this block in your MIFARE tag, the code may not work properly.

I just ordered one of these and got an RFID worker working in one evening. A few useful notes:

The SM130 will read MiFare cards. This means that it’s compatible with NFC-enabled Android phones, such as the Galaxy Nexus!

The SM130 operates over either serial (UART) or I2C. This eval board only gives you access to the serial lines.

XBee is totally optional. If you just want a quick way read NFC tags, this board is the way to go.

I have no clue what the intended purpose of the UART select pads is.

If you’re using this with an Arduino Mega (or the Android ADK), be aware that D7-D8 do not support change interrupts, and therefore are not suitable for serial communication. You’ll need to use jumper wires to connect to different I/O pins. (See http://arduino.cc/hu/Reference/SoftwareSerial for supported pins.)

The RFID module needs to be manually reset after powering on your Arduino, which seems to be commonly omitted from sample code. (This can be done using D13, or the RFID reset button on the eval board.)

The RFIDuino library is compatible with Arduino 1.0, whereas the example code provided is not. You can grab it here: https://github.com/marcboon/RFIDuino

From looking at the schematic (I don’t have this board… yet) it appears that the I2C is also connected and you can just choose which one to use.

Also, the two pairs of serial jumpers seem to allow either the xbee or sm130 to be connected to the hardware serial or to two digital pins (7&8 for sm130 and 9&10 for xbee) for software serial allowing for maximum flexibility. You could stack another shield using the hardware serial if needed. Hope this helps others and someone correct me if I’m wrong.

Hi,
Thanks for the comment. Can you explain a little more about point c. I am attempting to update firmware, and running into a timeout. No response error. I can’t seem to find my way around this issue.
Thanks,

It depends on the tag and sometimes, what material you have in between the tag and reader. With the transparent tag (in the related items) and nothing in between, I was getting about an inch or better.

Basically, you want to make a coil that will provide a strong enough magnetic field to create induction for the tag. The greater the area and more turns your coil has the more magnetic flux and the longer the range (among other factors). The hard part is tuning the coil to the desired frequency/s. This is achieved by some caps and resistors that form filters at the antenna inputs. All I did was get some variable caps and resistors and physically tune the antenna until you pick up the signal. Once it works, measure the values with a DMM and use the closest standard values compnents. I’m sure this is not the best way, but it works. Or if you want to take an even bigger shortcut, just copy the eagle files.

Hi everyone,
I’m wrinting an open online guide to using the SM130 with the arduino shield (also available on sparkfun) check it out if you are looking for help with the SM130 or add to the document if you have anything to share.
the document can be found here
Have fun!

I have built exactly this; Arduino Uno with this RFID Evaluation Shield, the SM130 Mifare module, XBee Explorer Regulated and an XBee Pro ZB.
Also an XBee Explorer dongle and another XBee Pro ZB.
I built a simple Aurdino program using the NewSoftSerial lib.
Communication between both XBee units works perfectly.
The RFID reader works fine aswell, EXCEPT that I get the damn Firmware message from time to time (like it thinks I requested it? Which I have not, or it resets itself randomly??).
Apart from that the RFID reader works fine (on its own, that is when I use Serial.print() to show the swiped tags etc.).
If I add xbee.print() it gets all fucked and allt that is printed to both Serial and sent over the XBee communication is the Firmware version over and over and over again with about 1 seconds interval. The RFID reader gets totaly blocked and does not accept tags.
I put it in SEEK mode, it returns Firwmare version.
I put it in SEEK mode, it returns Firwmare version.
I put it in SEEK mode, it returns Firwmare version.
I put it in SEEK mode, it returns Firwmare version.
I put it in SEEK mode, it returns Firwmare version.
over and over. This only happens randomly once every 15-20 seconds with out the xbee.print() code, but when I add it thats ALL I get, and not tags what so ever…
wtf? bug??
code:

Hi All! I bought this shield and connected it to my Arduino UNO, what else should I do to make a simple test of TAG identification? should I write some code to enable the RFID Module? what about the jumpers located near the protoboard? thanks a lot for your help

This board actually barely runs into the USB port on the duemilanove preventing it from fully seating. As far as I can tell all the pins still make a good connection, it just seems like an easily preventable oversight.

I purchased this board and SM130 module and used the “Tag ID Example Code” as the framework to my program. The code works fine, but the range is really limited. I could get it to work at ¼-inch away from the antenna, and that’s about it! I also found that the transparent tags work better than the “laundry” tags. The “laundry” tags barely works even when making physical contact with the antenna. Not sure if the code is hindering the range, but I’ve found it this set up to have very limited use given the poor range. If anyone can think of something to help please let me know. Thanks.

SparkFun is an online retail store that sells the bits and pieces to
make your electronics projects possible. Whether it's a robot that can
cook your breakfast or a GPS cat tracking device, our products and
resources are designed to make the world of electronics more accessible.

In addition to products, SparkFun also offers
classes and online tutorials to help educate
individuals in the wonderful world of embedded electronics.