Coin Acceptor - Programmable (3 coin types)

Are you trying to make a quick dime from electronics? Why limit yourself to dimes? This coin acceptor will take three different kinds of coin! Whether you're building your own arcade cabinet or just charging admission to your house, this programmable coin acceptor makes it easy to monetize your next project.

The sensors in this coin acceptor use the thickness, diameter and fall time of the coins to identify them and it's fully programmable so you're not limited to any particular type of currency. Simply use the buttons and 7-segment display on the side of the unit to select a coin profile, insert a bunch of coin samples (or the same one, over and over) and you're good to go! After you've programmed the coin profiles, the coin acceptor will recognize them and report when each type is inserted, rejecting other coins.

So maybe you won't get rich building your own vending machines but access control using different sizes of tokens might be cool, or even a virtual vending machine where you can buy MMORPG items. There are a ton of cool coin-operated projects just *waiting *to be built!

Coin Acceptor - Programmable (3 coin types) Product Help and Resources

Interrupt Based Arduino Example Code

There is example code to get the COIN pin working with Arduino's interrupt pins => . You need to modify the code and change some settings on the coin acceptor to be able to recognize the currency and correctly total the amount. The example code currently adds a certain amount whenever it sees the first pulse for only one coin. It is not able to distinguish between multiple coins.

There is another example code online that is able to distinguish the different coins here => .

For more information on how to use hardware interrupts with Arduino, check out our Processor Interrupts with Arduino tutorial.

10kOhm Pull-Up Resistor and Pulse Width

If you are receiving a coin acceptor with the 6x LEDs on the side, the new coin acceptor requires a 10kOhm pull-up resistor [ ] attached to the Arduino's interrupt pin to recognize the pulses. Comparing the pulse width and length with our older coin acceptors, it is different compared to previous version. This should not be too much of an issue if you are just counting the rising/falling edge of the pulse.

Core Skill: DIY

Whether it's for assembling a kit, hacking an enclosure, or creating your own parts; the DIY skill is all about knowing how to use tools and the techniques associated with them.


Skill Level: Noob - Basic assembly is required. You may need to provide your own basic tools like a screwdriver, hammer or scissors. Power tools or custom parts are not required. Instructions will be included and easy to follow. Sewing may be required, but only with included patterns.
See all skill levels

Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

2 Programming

Skill Level: Rookie - You will need a better fundamental understand of what code is, and how it works. You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL.
See all skill levels

Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

3 Electrical Prototyping

Skill Level: Competent - You will be required to reference a datasheet or schematic to know how to use a component. Your knowledge of a datasheet will only require basic features like power requirements, pinouts, or communications type. Also, you may need a power supply that?s greater than 12V or more than 1A worth of current.
See all skill levels


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.

  • Member #172553 / about 4 years ago / 1

    can this coin acceptor tell the difference between modern bimetal coins and the older silver coins?

    • santaimpersonator / about 4 years ago / 1

      Hi there, it sounds like you are looking for technical assistance. Please use the link in the banner above, to get started with posting a topic in our forums. Our technical support team will do their best to assist you.

      That being said, you have to train it to identify specific coins; you can't train it to identify silver coins in general. For example, you could train it to specifically identify silver dimes, but you couldn't use the same settings to detect silver dollars. You should also note, this is a hobbyist product... it probably won't be 100% accurate/reliable (i.e. you may end up accepting some normal dimes and/missing some silver dimes).

  • Member #817347 / about 7 years ago / 1

    Hey, I'm wondering if anybody can help me. I ordered this and its a little different unit then in the picture. Mine has the 6 LEDS on the side. I've read a couple comments and reviews saying other people have this one. When I am programming it I follow the manual instructions until the point you are supposed to feed the coins into the slot to sample. When I do this nothing happens. The program is just stuck.

    Is this different to program then the datasheet posted? or am I doing something wrong? Please help! I want it to work!! Thanks

  • jr10 / about 11 years ago / 6

    This is the sort of thing that makes you want to invent a project to justify buying it.

    • free-bee / about 11 years ago / 5

      Electronic piggy bank. All you need left is a coin sorter that is controlled via serial command (hint hint). Wouldn't that be fun? Use an Arduino to keep track of your saved coins and to control the coin sorter.

      • throw on an ethernet shield and have a little hosted page that shows how much you've saved so far, and you could set goals and have a light go off on the piggy bank when you've reached the savings goal ;-)

    • exactly, it looks like you read my mind.

  • manonthemoon / about 10 years ago * / 3

    This can be implemented with a binary counter like 74HC393, so you don't have to tie up the processor time of a microcontroller. Connect the GRAY wire from the Coin Acceptor to one of the inputs of the 74HC393, then program the Coin Acceptor to use 1, 2 and 4 pulses for the three different coins. This will output 0001, 0010, or 0100 from the binary counter pins. If you have a microcontroller, you can just check the state of these three pins on the 74HC393, and the microcontroller can do other stuff than just check for pulses.

  • Grintor / about 11 years ago / 3

    Some things need to be mentioned about this thing. The datasheet is dead wrong about current draw. It says 65mA. In reality, I am reading about 160mA nominal, and when you put a coin in it spikes to more than 250mA. Also, the "coin inhibitor" feature is not something you can control by normal means. It has an internal sensor at the exit of the device, if the coin fails to leave the exit and stays inside the device, it will inhibit. It will also inhibit when the device has no power. Other than that, the only way to inhibit manually is to cut the wires to the solenoid on the side and bypass it through a transistor you control. Or kill power to it... But when you return power to it again, it beeps loudly.

  • roakey / about 11 years ago / 3

    Just being inquisitive, could you expand upon the "fall time" parameter, since the last time I checked all things on earth (or any planet for that matter) fell at exactly the same rate? :)

    • ChickMagneto / about 11 years ago / 2

      Actually I believe it is the fall time, literally. F=ma so when the force is restricted to merely gravity, yes acceleration is constant. These and many other types of coin detectors use a property of conductors and magnetism known as eddy currents. Essentially, on the way down the metal, conducting coin passes a magnet. This magnet induces a current in the conductor, drawing from the force of gravity to push the electrons along. The specific properties of the coin itself, hence the differentiation between coins, determines the conductivity and therefore the amount of force is "stolen" from gravity, making the coin fall slower. Hence the fall time.

    • abitkin / about 11 years ago / 2

      I believe fall time is really roll time.

      And as for exactly the same rate, that's only true without an atmosphere. That's why on the moon a hammer and a feather will have exactly the same fall time but not so on earth.

      In this case wind resistance (drag) and the resulting terminal velocity should be negligible; however, if you're going to criticize things on being technically correct, you should be technically correct.

      The force is the same, but the resulting drag is different resulting in a different fall time in this case, although the difference is so small you'd have a hard time measuring it.

  • Member #599974 / about 10 years ago / 2

    I can't figure out how to wire the coins cable. am I suppose to directly connect it to the gpio?

    This is what I did: - the coins wire is connected to the gpio directly - when i drop a coin, i don't see or detect anything (or maybe it's just fast) - i make the gpio as input

  • MetabolicCloth / about 11 years ago / 2

    are there dimensions available for this?

  • Dedokta / about 11 years ago / 2

    Can someone explain what the signal pulse would be for the two coin types? I'd like to use this with an Arduino and am not sure what to detect.

  • Well that was a fast replacement....

  • skpacman8629 / about 9 years ago / 1

    Is there a dimensional drawing for this anywhere? I want to make sure it's going to fit in my project before I buy one

  • jchernus / about 9 years ago / 1

    Any advice on how to program an Arduino to read the Coin and Counter lines? I'm new to this, and can't seem to see the signals. Thanks!

  • lion_ts / about 10 years ago / 1

    Hi guys, probably it's stupid question - I see the "Curr.:USD" mark on the side of the unit; so, may I train it to recognize other kind of coins (metal disks, UK or FR coins, etc.)?

  • Member #600299 / about 10 years ago / 1

    I'm new to this whole thing... I'm working on a Bartop Mame and I thought this would be a great addition, however I don't know how to work this at all. My questions are: is it possible to power this through my current desktop power supply? Can it connect directly to my motherboard and or usb, if not what devices should I buy to make it work with Windows 7? If someone could please reach out to me and tell me how to get this up and running, I bestow upon you a lifetime of gratitude.

    Thank you.

  • nsayer / about 10 years ago / 1

    Does the acceptor fail-reject? That is, if you remove power from the unit, does it reject all incoming coins? How long after power is applied does it start to accept coins (is there an initialization delay)? I am considering having the unit's power under software control, so that if a coin has been inserted, you can't insert another one until the current "transaction" is complete.

  • JerZ / about 10 years ago / 1

    Hmmm, I could make the kids' X-Box run off of "homework complete" tokens! ..... To Shapeways!....... Mwahahaha!

  • zodiak / about 10 years ago / 1

    I got one of these and it just beeps. Constantly. I left it on for ~1 minute, constant beeping. Any ideas/suggestions? I'd love to use this, but having issues.....

  • I went to the datasheet, and removed the /datasheets/Components/General/3.jpg Which ended bizarrely.

  • The engineering club at my school needs a fundraiser. We really like old arcade games in that club. You guy have a coin acceptor. Are you thinking what I'm thinking?

  • Lil Dutchie / about 11 years ago / 1

    When will these be back in stock

  • Asuraku / about 11 years ago / 1

    What are the dimensions?

  • mftkoehler / about 11 years ago / 1

    I asked and didn't get an answer in the forums, so I hacked together my own country oscilloscope (Arduino with a sketch using an interrupt to detect transitions) to determine that this device is properly set up with a 10K pullup resistor to +5V, at which point, it idles at 0V and cleanly outputs 30ms positive pulses in the default configuration.

    • Member #475033 / about 10 years ago * / 1

      Should be able to use a pull-down resistor as well.

  • Lil Dutchie / about 11 years ago / 1

    I don't get it.... the video says there is a 2 coin acceptor and a 6 coin acceptor, but the website says a 3 and a 6....

    • The 2 coin acceptor was discontinued, and this one replaced it...

      • Lil Dutchie / about 10 years ago / 2

        So does the 3 coin acceptor work with PWM or serial..anyone know?? Datasheet didn't mention much about that

        • ThorntonDan / about 10 years ago / 1

          I just purchased one of these and hooked it up. You can train up to 3 coins. You can configure how many pulses it sends out per coin type, from 1 to 50. I have it set on the short pulse setting and the pulse is about 40ms. It is nearly 150ms on the slow setting. This is sent out on the white signal wire at 5v. There is a counter line, I haven't investigated this.

  • iRow / about 11 years ago / 1

    Is there an Arduino sketch that returns a boolean value to build something like a gumball machine?

  • abitkin / about 11 years ago / 1

    So when set to fast speed, the pulse is 30 ms with 130 ms peak to peak time. This means that for the maximum of 50 pulses you'll have to wait about 6.5 seconds to get all the data.

  • free-bee / about 11 years ago / 1

    Just got mine today. I mounted it to the side of the shipping box. Pro tip: if you do what I did, mount it as center as possible. I mounted it towards the top and couldn't tighten one of the screws. My only complaint so far is the face could be widened some so the screws won't extend beyond the side. The only thing left for me to do is connect an Arduino to it and start programming.

    • free-bee / about 11 years ago / 1

      I connected the white wire to a 4040 counter and it worked. Set it to NC and added a reset button for the 4040. Two voltage regulators, 6 LED assemblies (for now) and an old laptop charger made a piggy bank (as planned) that counts in binary. A bit more planning would have made it readable, but still.

      • ajayver / about 9 years ago / 1

        What is the difference between NC and NO modes?

        • free-bee / about 9 years ago / 2

          NC - Normally Closed: The signal on the output will be held high (5 V) until it starts a "strobe*" cycle. The output will be brought low (0 V) and back high again for the amount you programmed for a particular coin (ie, five times for a nickle, ten for a dime, twenty-five for a quarter).

          NO - Normally Open: The same as above, but it will be held low. The transition will go from low-high-low.

          *for lack of a better phrase

  • abitkin / about 11 years ago / 1

    So while the data sheet is truly atrocious, I was able to set mine up last night.

    I still need to check the voltage for signaling. I have a microprocessor I'm going to hook this up to, but the pins are not 12v tolerant.

    • free-bee / about 11 years ago / 1

      Using an o-scope, I determined the output to be ~5 volts. I put it on a 5V circuit and didn't fry anything.

      • abitkin / about 11 years ago / 1

        That's what my multi-meter said last night when I changed it to nc.

        So I guess I'm good.

  • BiOzZ420 / about 11 years ago / 1

    any chance for a backpack? only way IM aware of interfacing with this is an interrupt! and there no fun for the rest of the code XP

    • MikeGrusin / about 11 years ago / 3

      You don't like interrupts? I LOVE interrupts! We'll try to get some example code going.

    • nsayer / about 10 years ago / 1

      I think you definitely want a coin acceptor to be an interrupt source. You don't want to miss those pulses and have angry customers demanding refunds! Your ISR should increment a "credit" counter as appropriate. loop() can check the counter and when the count is zero, can do what the arcade industry traditionally called an "attract mode." When the count is non-zero, then you decrement the counter and perform service (whatever that means for your device).

Customer Reviews

3.5 out of 5

Based on 11 ratings:

Currently viewing all customer reviews.

1 of 1 found this helpful:

Works decently

The coin acceptor is working decently, a better datasheet or example code would be extremely helpful for setup for people that don't have access to an oscilloscope.

2 of 2 found this helpful:

Horrible pin arrangement and connector

I bought this for an arcade project that I was working on. By the time I got everything together the last 3 things to hook up was this product and my raspberry pi 3 and monitor. My code is sound, everything looked good. For some reason my call to wait_for_edge was constantly triggering even though a coin wasnt deposited. My buttons were going crazy, throwing errors everywhere. Everything is soldered, everything is heatshrinked, I know my code is good. I stayed up last night, determined to find the problem, until 4 am. Magically my code just started working and everything was smooth. But why? I chalked it up to I was tired and missed something and didn't remember correcting it. The next day I went back after it. The same problem occurred. At midnight tonight I have finally truly found the problem after the magic smoke came out of my brand new pi 3. This device and it's terribly thought out pin arrangement and poor pigtail cable, had a small short somewhere in the connector. It crossed the 12v lead to the output pin and that turned into over a $60 loss with my new pi and this coin acceptor.

Ps, it's not made of metal like it looks like in the picture, that's chromed plastic.

I'm sorry to hear about your issues with the coin acceptor. We do not usually see any issues with the coin acceptor. This sounds like an isolated incident.

If you can provide an email to with your order number with your coin acceptor and Pi3, we can assist you further.

1 of 1 found this helpful:

not high end but gets the job done

The output pins seemed to be rather fragile on my acceptor, output pulse wasnt really reliable until i soldered a connection straight to PCB. That pretty much solved all the issues i had before though

1 of 1 found this helpful:

Great Acceptor for the Price

I found an Instructable that had step by step instructions for the Arduino. Easy peasy lemon squeezy. I look forward to my finished project. Thanks

1 of 1 found this helpful:

Not straigntforward, but it works!

Programming can be a nuisance and at one point while trying to reprogram it it stopped working and blinked "00" with every valid coin. I toggled one of the switches on the back and it worked again after another reprogramming. I might be ordering more of these soon!

Great product

I had some issues figuring out how to read the pulse width modulation and how much is the pulses of a coin when it's inserted, but since I've learned it, the rest was a piece of cake, I would rather like it even more if it was metal instead of plastic, But with the price, you cannot argue that it is a good deal

Türkiye den ve 2 günlük kargo ile aldım fakat

sanırım ürün sorunlu çıktı, çünkü, ürün ile gelen talimatları ve web site de yayınlanan talimatları ve de özel bir şahsın ki o şahıs bu ürünü görsel olarak anlatmış, ürünü satanlar bile 3 para tanıyan ürünü son hali ile anlatmamış veya tanıtmamışlar, velhasıl önce bu şirkete bozuk paraları gönderip bizim paralara göre ayarlatıp sipariş vermek sanki daha mantıklı olabilirdi sanki. ürün fiyatına yakın da kargo bedeli ödedim fakat bu yurt dışından ürün siparişi verirken son tecrübem olsun, çok zaman harcadım fakat olmuyor. Türkiye den sipariş verirken önce iletişime geçin TL ile ayarlatıp göndermelerini rica edin.

I think the product appeared to be problematic because the instructions that came with the product and the instructions posted on the website and that of a private person that person explained this product visually and even those who sold the product did not describe or advertise the product that recognized 3 money, It might have been more logical to send money and order it according to our paralle. I paid close to the price of the product but also the cost of cargo, but when I ordered this product from abroad, I spent a lot of time, but it is not my last experience. Turkey also ask them to send orders with ayarlatıp per contact while ago.

Output Pulse

My system is looking for an out put signal from the device. However it does not see the pulse. I am looking for a 24VDC pulse, what does your system provide ? I am currently having to add a micro switch to the unit and connecting it to a 24VDC circuit and a common. Is there any way to use your output signal to get to a 24VDC pulse?

That sounds like a good question for our tech support team. I'd suggest contacting them for assistance on this.

Works well but ...

This coin acceptor works well if you set it well. The instructions are not clear, I used video tutorial on Youtube. But worst was to wire it properly to work on my computer : there is no instructions to wire a coin acceptor on the entire Internet ! (and I searched in English, French, even Spanish and German !). Things to know : - Grey wires are unuseful, don't use them. - Red and black wires must be connected to 12V plug adapter, you'll have to use this little thing : - White wire is for the electric signal the coin acceptor will send. To use this signal with your computer, you'll need an encoder. I used a Zero Delay Arcade Encoder, it converts signals from arcade button to commands for your computer, signals from your coin acceptor will be recognised as button arcade signals. - white wire to the encoder, don't forget to connect a black wire from this to the 12V plug. - On the PC, use JoytoKey software, it maps signals from the encoder to keyboard keys. Insert a coin in the acceptor, a line of command on the software will appear yellow during a second, that's the one you have to map to a key. Now your coin acceptor is compatible with keyboard shorcuts of your softwares. Sorry if it was clear enough, English is not my mother tongue. I hope I could help someone ^^

not very reliable

I programmed this using 20 coins for a sample. I programmed for nickel, dime, and quarter. I tried both accuracy level 5 and also 8. It does okay with nickels and dimes but still rejects about 1 in every 10. Quarters are horrible. It rejects them more than 50% of the time.

Sorry to hear about the issue with the coin acceptor!

Have you reached out to our technical support department @ - they're usually very good at helping figure out what is wrong in a setup.

Dead After One Year of Sitting In a Box

I received this coin acceptor in January of 2016. It sat in a sealed box until now (June 2017), never used. Now, I opened it and it's dead (no lights or signs of life when connected to the 12V and ground pins). Since the Sparkfun return window is 90 days, I am out of luck. If you buy this, be sure to open it and make sure that it works within 90 days.