Posted on 2004-11-16
Last Modified: 2012-05-18

First time on the post so I hope you can help.

I have never used, but I am undertaking a project using RFID tags and have just purchased a demo kit with a reader and tags to play with.

I have chosen to use to experiment with as I have some understanding of as it seems a lot alike.

I have order visual studio on the way so have not played with yet but would like some advice before I start

Fist of all, how to I get my program to communicate with the reader? This is my main question. I don’t truly understand yet how to do this. It uses a com port and works at the moment with a vb program that come with it. But I want to design my own, so I need to know where to begin or any sample code anyone know which will help me understand and be able to get the reader to commutate with my program ie. Read a tag ID.

In layman’s terms would be good lol.

Anyone’s help on this matter would be much grateful, thanks.
Question by:pigmentarts
    LVL 5

    Assisted Solution

    by:Ignacio Soler Garcia
    Now I am very busy, latter I will give you more information. From now I must tell you that there is no serial comunication built in Framework (in 2.0 will be) and now you have to use third party solutions. I have worked a lot with this one and it works great:

    Stay tunned, to be continued... :)

    LVL 12

    Author Comment

    Sounds difficult, well I wait in anticipation for your response.
    LVL 27

    Assisted Solution

    Glad to see you come on board!
    To Start your new adventure here is where I found good examples for getting started in VB.Net


    Link for ASP programs...

    LVL 5

    Accepted Solution

    It is not that difficult if the reader has a command language API.  Look though the documentation.  If they got a VB6 program to work with it, most likely there is either a command language of some sort.  If not, look closely at the VB6 program.  It is probably installing some sort of API dll that it is making calls to.  Look for doucmentation on that dll.  

    If both of those routes fail, contact the manuafacturer.

    Once you have the API or command language, it is pretty straight-forward writing a VB.NET program that communicates with the reader.
    LVL 12

    Author Comment

    Thanks for you help, still waiting for  SoMoS to get back waiting very interesting to what he has to say.

    Read the links looks straight forward, having difficulty understanding why I would need to know the command language, I assumed .net got around this barrier of working with different technologies (COM, WIN32 API).

    That’s why I have chosen .Net and not the old VB as with the old VB you have to work directly with the components, but in .net you use a object which simply knows how to do this with out having to touch the ins and outs of WIN32 etc. Please someone correct me if I am wrong or have it misunderstood, like I said I am very new to this, in fact not even touched code yet.
    LVL 12

    Author Comment

    PS Need more info, have a com to USA cable, it is easyer to use this and not the COM ports?
    LVL 12

    Author Comment

    don't know if its API but i found the program that come with it using these setting (see below) if that means anything and anyone can help, still need to know the answer to my question about how to read a RFID tags which connects to the computer using a COM port, i only need to read them and manipulate the data obtained in a database.

    Port 1
    settings 9600,n.8,1]
    key suffix [enter]
    discard 0
    reader RFID

    don't know if the above tells anyone anything about how the program is reading the tag, but i really need to do the same in mine.

    ps thanks for the warm welcome, i know that i will have many, many, question very soon once i start so thanks in advance for putting up with me.

    LVL 5

    Expert Comment

    The reason you would need the command language is so you could send commands to the device.

    Like FindTHisIDTag or DetonateRFIDDevice

    If the device is worth its salt, it comes with an API .dll that you can include in your .NET project and make calls to.  If it's really good, the .dll will be .NET and not COM.

    Some day you will be able to sit in your easy chair while your computer determines that it needs a component, orders it by itself, walks out and signs for it when FEDEX arrives, unpacks it, hooks it up, writes the code to interface with it, makes the cold calls to sell the software, and distributes and supports it.

    That day is not today.  Do the work.  It's why you get a paycheck :)
    LVL 5

    Expert Comment

    by:Ignacio Soler Garcia
    Hey, I'm sorry but I'm in a rush and out of experts-exchange for a while ... But keep in mind that if the library is a COM component (we can talk about COM technology and serial COMM ok?) is better to work with VB6. don't support very well COM components (it supports some of them and it don't others ...
    LVL 12

    Author Comment

    i understand why i VB6 would be better, but the problem is laster on .net is going to be a lot more powerful in my project so i really want to stick to my guns and try it in .net it only has to read the device.

    PS i contacted the business who sold me the RFID reader like TRUENEUTRAL stated, but they said:

    Our team of developers spend thousands of
    pounds creating code that only we use. So sorry about that!
    I will send you a data sheet for the ID12 reader, which is in the demo kit
    this tells you all the specifications that I can legally notify you of
    without breaking company policy.

    LVL 5

    Expert Comment

    Those specs they are sending should include the format of the output of the device.  If you just need to capture it, it should not be very difficult in .NET.

    Typically these devices send some info to the COMM port.  You just need to set up a listener on the COMM port in .NET and catch what comes out.

    The specs should tell you what the output means.

    If they only spent thousands, and not hundreds of thousands, this is likely a low end device.  Do not expect much from it.  Sort of like buying a KIA :)

    LVL 12

    Author Comment

    right o this may be a bit long but i hope TRUENEUTRAL can help, here is the details they sent, so now how do i capture it.

    PS i only need to read the TAG ID.


    The ID-2, ID-12 and ID-20 are hybrid RFID reader
    modules that provide simple, consistent and
    flexible implementation of this technology into
    existing swipe card based ID equipment.

    The ID-2, ID-12 and ID-20 are readers for the
    popular EM4001 format 125KHz tags. Read
    ranges of 1-15 cm are possible with ISO cards
    (25cm with a well tuned matched antenna on the
    ID-2). With CMOS/TTL Serial, Wiegand26 and
    NEW with this series, Magnetic ABA Track 2
    format, swipe cards can be emulated. Furthermore,
    the readers are encapsulated for environmental
    protection and potential damage or changes during
    manufacture or handling.

    All three readers
    support ASCII, Wiegand26 and Magnetic ABA
    Track2 data formats.

    Parameters ID-2 ID-12 ID-20
    Read Range N/A (no internal antenna) 12+ cm 15+ cm
    Dimensions 21 mm x 19 mm x 6 mm 26 mm x 25 mm x 7 mm 40 mm x 40 mm x 9 mm
    Frequency 125 kHz 125 kHz 125 kHz
    Card Format EM 4001 or compatible EM 4001 or compatible EM 4001 or compatible
    Encoding Manchester 64-bit, modulus 64 Manchester 64-bit, modulus 64 Manchester 64-bit, modulus 64
    Power Requirement 5 VDC @ 13mA nominal 5 VDC @ 30mA nominal 5 VDC @ 55mA nominal
    I/O Output Current +/-200mA PK - -
    Voltage Supply Range +4.6V through +5.4V +4.6V through +5.4V +4.6V through +5.4V

    Pin Description & Output Data Formats

    No. Description ASCII Magnet Emulation Wiegand26
    Pin 1
    Zero Volts and Tuning Capacitor
    GND 0V GND 0V GND 0V
    Pin 2 Strap to +5V Reset Bar Reset Bar Reset Bar
    Pin 3
    To External Antenna and Tuning
    Antenna Antenna Antenna
    Pin 4 To External Antenna Antenna Antenna Antenna
    Pin 5 Card Present No function Card Present No function
    Pin 6 Future Future Future Future
    Pin 7 Format Selector (+/-) Strap to GND Strap to Pin 10 Strap to +5V
    Pin 8 Data 1 CMOS Data One Output
    Pin 9 Data 0 TTL Data (inverted) Clock Zero Output
    Pin 10 2.7 kHz Logic Beeper / LED Beeper / LED Beeper / LED
    Pin 11 DC Voltage Supply +5V +5V +5V

    Pin Description & Output Data Formats
    Pin No. Description ASCII Wiegand26
    Pin 1 Zero Volts and Tuning Capacitor Ground GND 0V GND 0V
    Pin 2 Strap to +5V Reset Bar Reset Bar
    Pin 3 To External Antenna and Tuning Capacitor Antenna Antenna
    Pin 4 To External Antenna Antenna Antenna
    Pin 5 Format Selector (+/-) Strap to GND Strap to +5V
    Pin 6 Data 1 CMOS One Output
    Pin 7 Data 0 TTL Data (inverted) Zero Output
    Pin 8 2.7 kHz Logic Beeper / LED Beeper / LED
    Pin 9 DC Voltage Supply +5V +5V

    hope someone and make sense of this for me, thanks
    LVL 5

    Expert Comment

    Looks like they gave you the hardware specs.

    Is this device hooked to the COMM port while in use?  Or is it one of those things you walk around with and scan stuff and then hook to a COMM port to download the stored data?

    They gave you pin numbers as if you were going to program some sort of chip to interface with it.  Fun stuff!  But not the documentation you need.

    If the device is hooked to the COMM port while in use, you should just be able to listen on the COMM port and catch whatever it sends.  Then it will just be a matter of interpreting the data.

    If the device is portable, it should have a setting to push the data to the COMM port once hooked up, and again, you are just listening for bytes.

    What good it the @#$% thing if it can't interface with a computer?  If the interface is proprietary, they you should not be doing this anyway.  However, I suspect that you spoke with the resident hardware geek on the phone when you really needs to speak to the software interface guy.

    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Join & Write a Comment

    Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
    It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
    This video is in connection to the article "The case of a missing mobile phone (". It will help one to understand clearly the steps to track a lost android phone.
    Illustrator's Shape Builder tool will let you combine shapes visually and interactively. This video shows the Mac version, but the tool works the same way in Windows. To follow along with this video, you can draw your own shapes or download the file…

    755 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    24 Experts available now in Live!

    Get 1:1 Help Now