RFID Reader ID-12 (125 kHz)

Replacement:SEN-11827. This part has a new rev that accepts a lower voltage input, go check it out! This page is for reference only.

This is a very simple to use RFID reader module from ID Innovations. With a built in antenna, the only holdup is the 2mm pin spacing (breakout board available below). Power the module, hold up a card, and get a serial string output containing the unique ID of the card.

  • 5V supply
  • 125kHz read frequency
  • EM4001 64-bit RFID tag compatible
  • 9600bps TTL and RS232 output
  • Magnetic stripe emulation output
  • 100mm read range
  • 25x26mm

RFID Reader ID-12 (125 kHz) Product Help and Resources

SparkFun RFID Starter Kit Hookup Guide

May 5, 2015

Learn the basics of how to get started with the SparkFun RFID Starter Kit.


Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • Eurisko / about 16 years ago / 6

    A great device, at a good price. I managed to get it on a breadboard, although the 2mm pin spacing presented a bit of a challenge.
    The ID-12 easily detected all 4 of the RFID cards I tried, my indicator LED flashing as each card was read.
    Next, I interfaced the ID-12 to my PC through a serial connection, and used Windows Hyperterminal to display the incoming ASCII data.
    The ID-12 performed perfectly, and I highly recommend it.

  • Demonlove / about 13 years ago / 4

    In case you're a dolt like me that doesn't know how to read a datasheet, here's a quick synopsis on what you need to do to get this module working in ASCII mode with an Arduino:
    Pins 1 and 7 to Arduino GND (ground)
    Pins 2 and 11 to Arduino 5V
    Pin 9 to Arduino Pin 0 (RX)
    Then you can just read serial data as usual (9600 baud). As mentioned earlier, the breakout board plus soldering some Xbee headers and 0.1 headers make this very easy.
    The newest datasheet on id-innovations site (http://www.id-innovations.com/EM%20moudule%20SERIES%202007-10-9_wfinal%20v22.pdf) also mentions the following regarding Pin 9:
    "There is no need for a 1k protection resistor, but a 1k resistor will make the circuit safer for testing and reduce EM noise."

  • JQP / about 16 years ago / 4

    These are the real deal, complete, self contained modules, a cinch to use at an unbeatable price. Also, based on my tests, these are fully compatible with EM4100 tags, not just EM4001 which was an older, now obsolete standard.

  • ITHelp / about 13 years ago / 2

    Hey SparkFun,
    There's another version of these chips that can read HID tags as well as the EM4001/4100 tags. (I have one in front of me; The sticker on the bottom reads "ID-12 HE". I contacted ID Innovations and was able to get a couple of sample chips, although the shipping from China was $50 for two. :-P)
    I'd love to see you guys carry the HE chips, if for no other reason but to make it a lot cheaper for when we start building out more of the RFID cabinet locks we're working on. :-)
    Almost forgot to mention: These chips are supposed to pass on the raw output in case you need to check for a different standard as well. (Like HID's Corporate 1000 perhaps.) Really pretty nice units; I'll post my findings with them once the 2mm breakout board arrives.

    • Member #235463 / about 13 years ago / 1

      Hello ITHelp, I'm interested on knowing how the ID-12 HE worked with the HID tags.
      Do you have a contact in ID Innovations as I'm interested in getting some samples too if they can read HID and EM tags?

      • ITHelp / about 13 years ago / 1

        We're actually still trying to get everything working - Turns out there is a bug in their reader and it won't return the proper values for our tags.
        Their e-mail address is help@id-innovations.com, but they sometimes take a day or two to get back. We paid $50 to have two sample modules shipped. (They came expedited from China.)
        Other than the modules not returning the expected values they are working quite nicely. I used the NewSoftSerial library to keep my hardware serial pins open for debugging.

        • Member #245861 / about 12 years ago /

          Hello ITHelp,
          Did you finally find how to make it return expected values? I'm working on a project where we would like to build a RFID system using our HID offices badges.

          • jma89 / about 11 years ago / 1

            Sorry for the delay 245861. I no longer work where I was building that project, but I did get the units to send the proper output once we received units with corrected firmware from the manufacturer. My previous employer has at least 6 working modules, but I have no idea if they ever finished the project. (I was the only one with any clue as to how they worked.)

            They sent the corrected units last summer and said they were working on the datasheet and general distribution-type stuff. I'm rather surprised the chips aren't available yet, but a quick e-mail to help@id-innovations.com might yield some results. Sorry that I can't help more than that.

  • Member #57306 / about 13 years ago / 2

    A guide, with code, to connecting this to an Arduino is available at....

  • benuk / about 14 years ago / 2

    The datasheet for this is incorrect, it states the TTL signal in inverted, it is not!

  • JPFlash / about 14 years ago / 2

    So I noticed that in the datasheet they make mention of the RW(read/write) series that is supposed to work with the Temec Q5 tag (Q5555 mentioned elsewhere). According to the document, there should exist an ID-2RW, ID-12RW, and an ID-20RW reader. It seems the information surrounding where to purchase these readers and tags is a little elusive. Personally, I think it would be awesome to work with a rewritable tag, but where do you find these products? I've tried finding rewritable tags in general, but have had no luck. To the guys at SparkFun, any chance you will carry the RFID read/write series with a rewritable tag in the future?

  • Vedran / about 14 years ago / 2

    Hi, I see that you do not have this component, you'll get it again? when?
    Do you have a delivery to Croatia?

  • J.Peeters / about 14 years ago / 2

    Is it possible to hook up a self build antenna to this RFID module?

  • Origin / about 14 years ago / 2

    My comments:
    - connect D0 to pin 5-yellow of a TTL-232R USB cable and use 'screen /dev/ttyUSB0' (or similar) to see output (you can also use the 5V provided by pin 3-red)
    - no pull-up needed on D0
    - pins required some bending and shoving to get it to fit in a breadboard - use the breakout board and headers

  • Daniel Eriksson / about 14 years ago / 2

    Does anyone know what temperature range the ID-12 can handle?

    • jefftoaster / about 12 years ago / 1

      Did anyone ever find this out? Couldn't find it in the datasheet...

  • zGhost / about 15 years ago / 2

    What about those 10.56MHz cards they have at TI, any modules out there for those?

  • JustinMaynard / about 15 years ago / 2

    Anybody want to comment on what kind of range they are getting. I'm using a small 21mm circular tag and only getting a range of about 12mm when i was hoping for what the specs say 12cm.

  • Member #23518 / about 17 years ago / 2

    An amazingly simple and fun device. They go well with XBee radios to create wireless RFID readers.
    Quick note: Even though it is not immediately clear in the datasheet, you DO need a pull-up resistor on the data pins even in ASCII mode.

  • Member #55947 / about 11 years ago / 1

    There's an alternative product that can read both 125 and 134 kHz tags available from http://www.priority1design.com.au , which also offers a wide range of RFID receivers for various protocols.

  • Member #55947 / about 11 years ago / 1

    Just a note that will spare anyone else from making this stupid mistake: Practically all of the RFID tags that are designed for implantation into animals or for general-purpose product tagging (such as those made by TI and others) are designed to operate at 134 kHz. If you are making an RFID reader that must operate with existing 134 kHz tags, the ID-12 absolutely will not work for you. I have a pretty diverse collection of implantable tags, and none of them generates any output from the ID-12. (I've designed a reader based on the TI TMS3705 chip, operates at the correct frequency for those tags, and with some help from TI tech support and a fair amount of blood, sweat and tears, it works well.) I'd hoped to be able to use a premade module, and obviously I made the bet that hope trumps reason. Epic fail!

    • Mozler / about 11 years ago / 1

      Hopefully you're still around. I have a 134kHz Homeagain implementable chip which I was hoping to read with this. I was hoping you can share more details of your TI based reader and what you had to do to make it work? In particular, I'm worried about distance since these implantable chips are sooo small. I'm hoping to use it in a cat access control system.

  • Member #64935 / about 11 years ago * / 1

    Hello all! I bought this reader because of how compact it is and easy to use, especially because SparkFun has the USB shield (SEN-09963). I have it connected to an ATMega32 via FTDI's VDIP2 USB module and displays the data on a 16x2 LCD. The reader works great with the cards (RTL-11506) from SparkFun but I am not able to read EM4100 cards. The specific EM4100 card that I am using is "Item code 32399" from Parallax. I noticed a couple of posts that said they were able to. Is there something I am missing?


    • Member #64935 / about 11 years ago * / 1


      For anyone who is interested here are some resources I found in regards to tag compatibility with this reader:

      Basic RFID IC List

      LF RFID Tag Form Factors

      'UNIQUE' Data Format - Industry de facto standard

      RFID IC's

      So as the datasheet for this reader points out it should be compatible with any LF ( 125 kHz ) 64-bit IC based tag. Hopefully the info in the list above will help anyone looking for tags for this reader in their project. The key point is to make sure you have the correct frequency and memory / protocol, in which is illustrated in the above "RFID IC's" link.

      One last note, here is a company that I found that sells some of HID's tags AND was one of few that does not specify a min. qty of 1000 or more:


      NOTE: This company is based in the UK so watch for shipping charges, currency, and "Value Added Tax."

    • Member #64935 / about 11 years ago * / 1

      Well I think I found my problem, apparently HID makes several versions of the "World Tag" and the one that I bought is chip type "Titan" which is a 1024 bit EEPROM ( EM4150 / EM4450? ). The ID-12 from SparkFun can only read 64 bit ( EM4100 / EM4102 / EM4200 / ATA5575M1 ):

      HID - World Tag

      I am surprised that Parallax does not offer this datasheet on their website. So for anyone interested in using these tags from HID with the readers from ID Innovations that are offered at SparkFun you will need the "Unique" world tag. I wish mfg's would make it simpler on pairing tags to readers -- AND -- specify not only the air interface protocol but also the memory format like HID.

      I hope somebody finds this useful and good luck finding a distributor!

  • Member #331563 / about 11 years ago / 1

    Has anyone tried to get this working with the Raspberry Pi? Adafruit has one that works with the pi, but this one seems more compact and a better asthletic fit for my project. Anyone done it yet?

  • Member #400839 / about 11 years ago / 1

    hi all, i want to read a card no continouslly when the card is close to sparkfun RFID for the ID-20 and ID-12 and a trigger if the card moves away from the sparkfun RFID

  • BMSMAN / about 11 years ago / 1

    Does anyone have a drawing on how to hook this up to a Leonardo? I've tried the Serial1 changeover but still nothing. Any thoughts?

  • charlesfries / about 11 years ago / 1

    Can I use this thing directly with an Arduino? Or do I need to buy the USB reader?

    • MikeGrusin / about 11 years ago / 1

      These (and the ID-20) will indeed work directly with an Arduino. Pin 9 on the reader outputs TTL serial at 9600 baud; run this into the RX pin on the Arduino. Ground reader pins 1 and 7, and apply 5V to pins 2 and 11, and you should be all set.

  • KarlP / about 11 years ago / 1

    I've made an alternative breakout here, which should be a better fit on breadboards.

  • Member #340931 / about 12 years ago / 1

    I ordered and promptly received ID-12 parts for building my own 125 kHz RFID reader. I was surprised that such good looking parts didn't have any piece of paper revealing a schematic. I hunted all over and found pieces of information here and there and felt almost lucky that I was able to actually get a working device that would read a card/chip and display the card/chip number on a computer screen. I was very pleased with the results.

    However, I still think it wouldn't be that hard for SparkFun to offer a schematic that includes the values of parts used, along with hints about using RS232 with a PC. Something like this would be far more useful than any video.

    Next, I ran across a "build your own" RFID Reader DETECTOR (www.instructable.com/id/RFID-Reader-Dectector-and-Tilt-Sensitive-RFID-Tag/). But the device described was 13+ mHz, not 125 kHz. After doing a little coil/capacitor/frequency math, I successfully built my own "detector" (http://www.instructables.com/id/RFID-Reader-Detector-Easy-to-Build/). This device easily worked with my ID-12 - a LED lights up when the Detector is at 4 to 5 inches away or closer to the ID-12 module. This device uses only a few cheap parts but might give added enjoyment to the owners of an ID-12 Reader...

  • chrshe / about 12 years ago / 1

    Is it possible to specify the frequency used by the reader? I have a project that needs to be able to read on 3 different frequencies and it would be awesome to be able to set the freq programatically.

  • Blueblast88 / about 12 years ago / 1

    This thing is great! easy to use, easy to hook up to your favorite micro-controller....dont ask me about the programming i got it online...but it would be great if you guys made a shield and a library for this thing....for arduino of course.

  • Member #261748 / about 12 years ago / 1

    Hi everyone
    recognizer on the card around?
    1 2 3 4 numbered cards, and I can I get this card?
    I put all the layout and send it to me?
    For example,
    ID12 RFID Reader
    How much will it cost money?
    Thank you all
    PS: I'm sorry my English is not good for your mistakes

  • Member #235463 / about 13 years ago / 1

    I read the Datasheet but I did not find my answer. Do you get some kind of "event" or "acknowledgment" after the card is out of range too?
    The reason I'm asking that is because I have an application in which the tag will be in range for long periods of time but I want to know when the tag is out of range so I can take some actions.
    Any info is appreciated.

    • ITHelp / about 13 years ago / 1

      You can play around with the CP (card present) pin a bit and see if that yields anything useful.

  • Member #232935 / about 13 years ago / 1

    Does It exist a library for C18 for pic?

  • Member #229175 / about 13 years ago / 1

    will this reader read the EM4100 Tags ?

  • Member #151952 / about 13 years ago * / 1

    Hello all,
    this is my video:
    enjoy, i need yo make some more improvements on the code in order to use the GLCD.
    I also need to add a keypad after passing the RFID to use the keypad with 4 to 6 digits code.

  • dtrump / about 13 years ago / 1

    I'm using the ID-12 for a project that will use 16 of them connected to a PC via Sparkfun level converters. I need to know not only when a tag "arrives" but when it is taken away from the reader. I've figured a way to reset it by sending a character from the host, but is there a way to have the reader continuously send tag data while a tag is within reading range? Having used a Parallax board in the past, that was what I was expecting.

    • ITHelp / about 13 years ago / 1

      There's a CP (Card Present) pin on the units. Perhaps some experiments with this will yield something useful?

  • kleetus / about 13 years ago / 1

    Hopefully this is not too dumb of a question, but when are these coming back into stock?

  • Mark Fickett / about 13 years ago / 1

    I used this in a project, and included notes on hooking up the ID-12 with the rest of the project notes. No disagreement with what others have said; I used NewSoftSerial to read serial from a pin on the Arduino other than 0 (so I could still print debug information to my computer); and I tested it both with SparkFun's cards and with 3cm diameter EM4102 tags from Trossen.

  • iGeoCacher / about 13 years ago * / 1

    This is a nice little device. The one thing that I found unclear from the data sheet is a "minimalist" set of connections to get the device to work. So I'll note that here: * Power: Pin 11 to 5VDC, Pin 1 to GND. * Enable: Pin 2 MUST be tied high. Can't just let it float. ASCII * Output: Pin 7 must be grounded. * Data: Take your TTL output on Pin 9. I fed mine into a Roving Networks module to connect the RFID unit to my home network.
    The other thing that faked me out at first was not having any "known" 125kHz RFID cards. I had a "badge" that I THOUGHT might work but I see now that there are TWO RFID standards (at least) and I think my badges are probably the 13mHz MIFARE kind. Do yourself a favor and if you buy one of these, spend another two bucks and get one of the SparkFun RFID cards so you'll have a known test article.
    I'm toying with the idea of using this for access to the pool my wife manages in the summer. see: http://www.youtube.com/watch?v=aUsNaK867cE for a video of my circuit board construction for this unit. Also shows direct ink jet printing process I use in some detail. If anyone has questions about modding an Epson Arttisan 50 printer to do this, just drop me a line. Unfortunately, I didn't think to video the process (g). It isn't hard and it works VERY well. If there's enough interest, I may try to create some how-to video for that in retrospective.
    (note, in my use case I had 6V power so I used a 5.1 V 1W zener in series with a 220 ohm 1 W resistor to take the 6 down to 5. This is what you see in the video on the module. I have this little WiFi breadboard that I use to test various devices such as the RFID, GPS modules etc. which supplies two grounds, RX,TX,3.3V regulated and VBATT. This way I can test a lot of different modules that output RS232 easily with my home network.)

  • aaronlum / about 13 years ago / 1

    Do you Sparkfun guys know when the ID-12 be back in stock?? Thanks.

  • Member #57306 / about 13 years ago / 1

    Arduino fans...
    If you are new to serial comms with a second device, i.e. something in addition to the PC where you're writing your program (sketch), you may find the general notes at...

    ...useful. It talks of connecting a second PC to your Arduino, but you can just substitute the RFID reader in place of the "second PC". And the "RS-232" issues are not the issue they are, if you are using a 5v Arduino, 5v reader.

    I made a false start in RFID with the Phidget reader. Good device, but depends on USB and a propietary library in the reading PC.

    Older and wiser, a little research has sent me to Sparkfun, where I anticipate Good Things! And the price was better than a nice alternative over at Parallax.

    At least one post above suggests connecting the RFID reader to the Arduino's D0 line. This will "work", but sets you up for hassles, as that line is ALSO trying to communicate with your development PC. It really isn't at all hard... and has some other benefits... to create a second serial port, using NewSoftSerial. This whole theme is explained at....

  • Zurich / about 13 years ago / 1

    The datasheet says for card format, "EM 4001 or compatible" Is EM 4002 compatible?

    • Zurich / about 13 years ago / 1

      Sorry, should have asked: is any 125khz card compatible?

      • Generally speaking, yes.

        • ITHelp / about 13 years ago / 2

          A word of warning for those hoping to use their door badges from their employer with the ID-2/12/20 line: Make sure your tags are EM40xx compatible first. We're trying to build an RFID-backed check-in/check-out system at my workplace and it's turning into a beast thanks to our tags being HID proprietary and not a general standard. (The ID-20 we ordered wouldn't read our tags at all, but our tags would "jam" the SparkFun tags we ordered, so we knew it was a formatting issue.)
          If I hear back from the maker of the ID-2/12/20 I'll post it here. (I'm hoping they have a way to configure the readers to use different parity setups/bit lengths.)

  • Youradept / about 13 years ago / 1

    Tell me please! It is big question!
    Can 125KHz RFID reader read card with frequency 13,56 MHz ?
    I wanted to buy ID-20 BUT I found out that my cards cab be read by 13,56MHz!
    please send me request! I am waiting for you

  • Thinker / about 13 years ago / 1

    what is minimum reset pulse , if you want to change from eg ASCII to Wiegand , if the power is already applied ?

Customer Reviews

No reviews yet.