Hi all,
I wonder if you can help me determine what the cause of this problem may be. To start heres some background knowledge
I have the SM130 RFID module
And the evaluation shield
I've changed the firmware on the SM130 to I2C version 2.8 (i2c_28_b1.rme) using the sonmicro tools. Using their tools I can talk to the module (reset, read firmware versions etc). So thats all fine.
I've now got it on the evaluation shield and I'm testing it out using Marc Boons Arduino libraries and the sample sketches supplied with them
Here's the seek sketch I'm using
// SM130 - seek continuosly for tags and print type and id to serial port
// Marc Boon <http://www.marcboon.com>
// April 2009
// Controls a SonMicro SM130/mini RFID reader or RFIDuino by I2C
// Arduino analog input 4 is I2C SDA (SM130/mini pin 10/6)
// Arduino analog input 5 is I2C SCL (SM130/mini pin 9/5)
// Arduino digital input 4 is DREADY (SM130/mini pin 21/18)
// Arduino digital output 3 is RESET (SM130/mini pin 18/14)
// Following two includes are required for SM130
#include <Wire.h>
#include <SM130.h>
// Create SM130 instance for RFIDuino
SM130 RFIDuino;
void setup()
{
// Start I2C bus master (required)
Wire.begin();
// Using the serial port is optional
Serial.begin(115200);
Serial.println("RFIDuino");
// Reset RFIDuino, this will also configure IO pins DREADY and RESET
RFIDuino.reset();
// Read firmware version (optional)
Serial.print("Version ");
Serial.println(RFIDuino.getFirmwareVersion());
// Start SEEK mode
RFIDuino.seekTag();
}
void loop()
{
// Tag detected?
if(RFIDuino.available())
{
// Print the tag's type and serial number
Serial.print(RFIDuino.getTagName());
Serial.print(": ");
Serial.println(RFIDuino.getTagString());
// Start new SEEK
RFIDuino.seekTag();
}
}
The problem I'm having is that when the evaluation shield is on my Arduino Uno Rev 3 the Serial Monitor prints "RFIDuino Version I2C 2.8" as expected, has the green light on to show it's searching for a tag (great), I expose a tag, the found light (on the evaluation shield) flashes but then, no read out. Nothing, and the board won't go back to the seek state as seen in the code.
But when I try the same on a Arduino Diecimila board I have here, open the Serial Monitor, it constantly prints "Unknown Tag:" until I expose a tag. Like this:
RFIDuino
Version I2C 2.8
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Mifare 1K: 4252F239
Mifare 1K: 4252F239
Mifare 1K: 4252F239
Mifare 1K: 4252F239
Mifare 1K: 4252F239
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
Unknown Tag:
I'm pretty sure the sketch should make it print the version number then sit and wait. Only printing the tag if and when it's exposed.
Any ideas why I'd be getting these different behaviours and neither of them the right behaviour!?
Many thanks for any help.