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


Customer Comments

  • 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?

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

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

  • 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!

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

  • will there be a BOB for this?

    • 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.

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

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

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

  • Datasheet PDF wont load or download. Broken ?

  • 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.

  • 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.

    • 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.

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.