Analog to Digital Converter - MCP3002

The MCP3002 has a 10-bit analog to digital converter (ADC) with a simple to use SPI interface. Use this IC if your microcontroller does not have an ADC or have enough ADC lines. A great chip when you need to add additional ADC lines.

  • 2.7V to 5.5V supply
  • 10-bit resolution
  • 8-pin DIP package
  • 3 wire SPI interface
  • Up to 75,000 samples per second
  • Low power shutdown

Analog to Digital Converter - MCP3002 Product Help and Resources

Bark Back Interactive Pet Monitor

March 8, 2017

Monitor and interact with pets through this dog bark detector project based on the Raspberry Pi!

Python Programming Tutorial: Getting Started with the Raspberry Pi

June 27, 2018

This guide will show you how to write programs on your Raspberry Pi using Python to control hardware.

Core Skill: Soldering

This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.

2 Soldering

Skill Level: Rookie - The number of pins increases, and you will have to determine polarity of components and some of the components might be a bit trickier or close together. You might need solder wick or flux.
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.

3 Programming

Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
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.

  • I want to use this chip with the ESP 8266 Dev Board which lacks a sufficient 0-5v ADC. Is there a library for use with this chip? I have never used an SPI device without a library...How does one go about doing this?

  • emihackr97 / about 12 years ago / 9

    You should stock a more precise version, 16 bit or something, and with an external Reference.

    • rdnetto / about 12 years ago / 4

      Seconded, a 16-bit would be perfect for my current project.

      • Member #321906 / about 12 years ago / 3

        Thirded. Something like the Analog Devices AD7788 16-bit Sigma Delta.

        • xkcdFan1011011101111 / about 11 years ago / 3

          Fourtheded. I am heading over to digikey to buy one because sparkfun won't take my money. :(

          • adamj537 / about 10 years ago / 3

            Fifthed. A 16-bit ADC would be a nice addition to Sparkfun's catalog.

            • Member #599712 / about 10 years ago / 2

              Also want a 16-bit ADC, my arduino uno has 10-bit ADC which is not enough so I am looking for a external ADC

  • dincay / about 13 years ago / 5

    Not mentioned in review, this is a dual ADC. One IC gives you 2 analog lines

  • Member #240011 / about 13 years ago / 3

    Are there any tutorials or examples of this in use? Specifically, I would like to achieve the maximum sampling rate on both inputs when used with an arduino. I've got a lot of samples to take, then compress, then send over a bluetooth connection. Think HUGE multi-touch mousepad!

  • Member #623105 / about 9 years ago / 2

    I'd love to see this in the SparkFun Eagle library.

  • mbrown9412 / about 13 years ago / 2

    will there be a BOB for this?

    • MoriFi / about 13 years ago / 6

      its a DIP. do you really need a breakout board for one

      • I would enjoy a breakout board for interfacing with jumper cables. A standardized 8 pin breakout board is what we are looking for.

  • lostangel556 / about 14 years ago / 2

    Could i use to say, convert the analog uadio input from an headphone socket to something usable by the arduino?

    • Member #623945 / about 9 years ago / 1

      Seconded. That's exactly what I'm trying to do. Have you succeeded?

  • stevenvh17 / about 9 years ago / 1

    75 000 samples per second @ 2.7V, 200 000 @ 5V.

  • Is it possible to daisy chain multiple MCP3002 chips together?

  • j.tilghman / about 11 years ago / 1

    Datasheet PDF wont load or download. Broken ?

  • Member #324559 / about 12 years ago * / 1

    Help Please. I have tried bit-banging and the SPI lib. I've found some code for the 3008 and tried to modify that. I've tried it with all diff wiring configs. Used 2 Uno's and a Uno32 with 3 diff 3002's. Can you post any code? I'll even take .NET written for an ARM with good documentation.

  • MoriFi / about 13 years ago / 1

    Could you use this to transmit a raw analog feed (like video, audio, resistor values) over a serial modem and (not using this one of course) have them converted back to analog.

    • Azayles / about 13 years ago / 1

      You'd need a microcontroller to interface with the ADC and spit out "normal" serial data, but yeah that should work. It won't have a high enough sampling rate to decode video, however. At least not standard composite video.

      • MoriFi / about 13 years ago / 1

        ok thanks for that tip. Is there any out there that will? (for video)

Customer Reviews

5 out of 5

Based on 1 ratings:

Currently viewing all customer reviews.

7 of 8 found this helpful:

Works great

It's easy to use, the datasheet is excellent, and it is much faster that the built-in ADC on the Arduino. Just note that that it needs a low resistance source (see pages 11-12 of the datasheet for details), so use an op-amp if your source has high resistance, especially if you're sampling very quickly.