Go Down

Topic: Arduino UNO + USB Host Shield + third party RFID Reader (Read 2133 times) previous topic - next topic


Hi everybody, i'm just starting a new project: I want to connect a RFID Reader (a third party one) through my USB Host Shield from Sparkfun attached on an Arduino UNO r3.

As many of you suggested I installed the Oleg's libraries, and after some issues I figured out how get these to work. At this point i ran the "board_qc" (quality test) sketch and it seems to work without problem as it recognized many usb peripherals including my RFID reader. After that I load the "USB_desc" sketch and it provided my all the info about my RFID reader (I will post below the results).

At this point I think that my hardware is ok. What i want to do now is communicate with my RFID reader. What library should I use to read the data that passes through my USB host (and print that to serial monitor maybe)? There's some developers references somewhere?
I would like to do something simple (I though), something like:
Power supply ---> Arduino UNO ---> USB Host Shield <--- RFID Reader
and when a card passes through the reader i want to read that data (make some checks I think) and print to serial monitor (or whatelse).
I am asking two things mainly:
1. Is my hw config ok?
2. Where can I find some useful info about read usb's data?

There is the result of USB_desc:
Code: [Select]


Device descriptor:
Descriptor Length: 12
Descriptor type: 01
USB version: 0200
Device class: 00
Device Subclass: 00
Device Protocol: 00
Max.packet size: 08
Vendor  ID: 076B
Product ID: 5321
Revision ID: 0520
Mfg.string index: 01
Prod.string index: 02
Serial number index: 05
Number of conf.: 01

Configuration descriptor:
Total length: 005D
Num.intf: 01
Conf.value: 01
Conf.string: 03
Attr.: A0
Max.pwr: 7D

Interface descriptor:
Intf.number: 00
Alt.: 00
Endpoints: 03
Intf. Class: 0B
Intf. Subclass: 00
Intf. Protocol: 00
Intf.string: 00
Unknown descriptor:
Length: 36
Type: 21
Contents: 0001000703000000C0120000401F000004002A0000E74C06006AFE0000000700000000000000B00301000F010000FFFF000000010705

Endpoint descriptor:
Endpoint address: 83
Attr.: 03
Max.pkt size: 0008
Polling interval: 18

Endpoint descriptor:
Endpoint address: 84
Attr.: 02
Max.pkt size: 0040
Polling interval: 00

Endpoint descriptor:
Endpoint address: 05
Attr.: 02
Max.pkt size: 0040
Polling interval: 00


Thank you all very much, all help is appreciated. (I'm Italian, so don't expect a perfect english (I didn't check grammar errors  :smiley-red: ) )



You need find usb driver for Reader or build  it  by yourself.  It is mission impossible.

two ways to go.

1. find third party RS232 Reader and use RS232 TTL UART adaptor, connect with Arduino.
2. Use raspberry pi as shield  connect you RFID Reader. Most RFID Readers are compatible with Debian.

P.S.  make sure use Debian with raspberry pi , and not Arch Linux ARM.  I was able use Gemplus,OMNIKEY,SCM reader with Debian long time ago. Never tried  Arch Linux ARM.


Thanks, I have the OMNIKEY USB RFID reader.
So the easiest way is to get a Raspberry pi?


shortcut is get an old pc box and load debian , connect it with arduino with usb port, start testing code. once it done (worked) buy  a raspberry pi and move code to it.
debian ( debian ARM) at raspberry pi is almost same as X86 debian. at least you are not asked load Oracle 11g database.  :)

Go Up