Member #235294

Member Since: June 29, 2011

Country: United States

  • Product DEV-10406 | about 3 years ago

    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:

    include

    NewSoftSerial rfid(7, 8);
    NewSoftSerial xbee(10, 9);
    // commands
    byte SEEK[] = { 0x82 };
    // methods
    void send_command(byte command[], byte length);
    void rfid_read(void);
    void rfid_print(void);
    void setup() {
    Serial.begin(19200);
    Serial.println(“Start”);
    xbee.begin(9600);
    rfid.begin(19200);
    delay(10);
    send_command(SEEK, 1);
    }
    void loop() {
    rfid_read();
    }
    // [FF] [00] [LENGTH] [COMMAND] [DATA] [CHECKSUM]
    void rfid_print(byte buf[], byte length) {
    Serial.print(“PACKET LENGTH (DEC): ”);
    Serial.print(length, DEC);
    Serial.print(“ COMMAND: ”);
    Serial.print(buf[0], HEX);
    Serial.print(“ DATA: ”);
    for(byte i=1; i

No public wish lists :(