Evaluation shield + RFID module + Anduino Uno

Hello there and thank you for taking the time to look at my topic.

Basically I have a very limited knowledge of electronics and I would like some guidance on assembling my project. After a long phone call to a UK stockist, I bought all the parts I would need to construct a 13.56mhz Minfare RFID reader/writer. I have soldered all the parts in which I knew where they had to go and downloaded ggrfid.ino (cannot find source) which is meant to enable the reader. I will post pictures below of what I have and if someone could tell me what parts still need to be added to the evaluation shield or the Andruino and where, that would be fantastic!

I know many of you will tell me to go stick my head in a book, but I'm very keen to get this working and it seems to be straight forward for most people (not me). Also the last image is of screen I took my an old digital radio.

Many thanks.

hello,

the ggrfid.ino was created for the mifare RFID MFRC522 model so I doubt it's going to be of any use, you'll have to do some digging on the Sparkfun product pages for more info on your module.

the arduino ino file can be found here:

you'll have to make a folder for it named the same as what the sketch is called and drop it in with the rest of your sketches.

If that doesn't work out two of the comments were linked to some tutorials on these pieces:

in the pictures you show no tags?
hopefully somebody who has one will see this to help you out some more.

cheers,

Thanks for the reply :slight_smile:

I forgot to say but I have 3 read/write RFID tags for 13.56mhz. I had a look at the links you gave me and I'm very confused. What exactly is the anduino.ino file for the evaluation shield for?
Also I looked at guide Sonmicro SM130 RFID module.doc - Google Docs and it appears I am missing lot's of components, although I was told by coolcomponents exactly what to buy :frowning: That link also explained how to update the RFID module (do I need to do that) which I have already soldered, and do I need to set-up my board as in the way it is in the first picture in the above link, or is my way okay? Sorry for the noob questions.

Regards.

the .ino file is just the name of the sketch (like.mp3), download that file and make a folder for it named the same as the sketch ("RFID_Eval_13_56MHz") and put it in the same spot as the rest of your sketches (my documents/arduino) then open up the arduio IDE and it should be there. I would try this out before touching any kind of firmware stuff (hopefully you don't have too!).

cheers

Sorry for being such a noob but I put that .ino file in my sketches but what do I do with it? I tried uploading it to my Andurino but it encountered errors. I also still have no idea whether my setup in the pictures is correct or whether I need to add things.

Thank you.

It would appear that I have to setup correct as I have got the device to read RFID tags using modified sample code for Anduino 1.0. I will display the code below, however if some clever chap can tell me what code needs to be added on and where to write data from one RFID tag to another, that would be great.

/*
RFID Eval 13.56MHz Shield example sketch v10

Aaron Weiss, aaron at sparkfun dot com
OSHW license: OSHW - Definition of Free Cultural Works

works with 13.56MHz MiFare 1k tags

Based on hardware v13:
D7 -> RFID RX
D8 -> RFID TX
D9 -> XBee TX
D10 -> XBee RX

Note: RFID Reset attached to D13 (aka status LED)

Note: be sure include the SoftwareSerial lib, NewSoftSerial | Arduiniana

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
and the XBee port.

06/04/2013 - Modified for compatibility with Arudino 1.0. Seb Madgwick.

*/
#include <SoftwareSerial.h>

SoftwareSerial rfid(7, 8);
SoftwareSerial xbee(10, 9);

//Prototypes
void check_for_notag(void);
void halt(void);
void parse(void);
void print_serial(void);
void read_serial(void);
void seek(void);
void set_flag(void);

//Global var
int flag = 0;
int Str1[11];

//INIT
void setup()
{
Serial.begin(9600);
Serial.println("Start");

// set the data rate for the SoftwareSerial ports
xbee.begin(9600);
rfid.begin(19200);
delay(10);
halt();
}

//MAIN
void loop()
{
read_serial();
}

void check_for_notag()
{
seek();
delay(10);
parse();
set_flag();

if(flag = 1){
seek();
delay(10);
parse();
}
}

void halt()
{
//Halt tag
rfid.write((uint8_t)255);
rfid.write((uint8_t)0);
rfid.write((uint8_t)1);
rfid.write((uint8_t)147);
rfid.write((uint8_t)148);
}

void parse()
{
while(rfid.available()){
if(rfid.read() == 255){
for(int i=1;i<11;i++){
Str1*= rfid.read();*

  • }*
  • }*
  • }*
    }
    void print_serial()
    {
  • if(flag == 1){*
  • //print to serial port*
  • Serial.print(Str1[8], HEX);*
  • Serial.print(Str1[7], HEX);*
  • Serial.print(Str1[6], HEX);*
  • Serial.print(Str1[5], HEX);*
  • Serial.println();*
  • //print to XBee module*
  • xbee.print(Str1[8], HEX);*
  • xbee.print(Str1[7], HEX);*
  • xbee.print(Str1[6], HEX);*
  • xbee.print(Str1[5], HEX);*
  • xbee.println();*
  • delay(100);*
  • //check_for_notag();*
  • }*
    }
    void read_serial()
    {
  • seek();*
  • delay(10);*
  • parse();*
  • set_flag();*
  • print_serial();*
  • delay(100);*
    }
    void seek()
    {
  • //search for RFID tag*
  • rfid.write((uint8_t)255);*
  • rfid.write((uint8_t)0);*
  • rfid.write((uint8_t)1);*
  • rfid.write((uint8_t)130);*
  • rfid.write((uint8_t)131);*
  • delay(10);*
    }
    void set_flag()
    {
  • if(Str1[2] == 6){*
  • flag++;*
  • }*
  • if(Str1[2] == 2){*
  • flag = 0;*
  • }*
    }
    Many thanks.
    EDIT: Also this if my RFID module: http://www.coolcomponents.co.uk/catalog/rfid-module-sm130-mifare-1356-p-679.html

Well I'm really stuck at the moment. If someone who knows what they are doing and could add to the code I posted above to make it read and write, I will happily offer a financial reward in the form of Paypal.

Thank you.