Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Adafruit MCP9601: Examples, Pinouts, and Specs

Image of Adafruit MCP9601
Cirkit Designer LogoDesign with Adafruit MCP9601 in Cirkit Designer

Introduction

The Adafruit MCP9601 (Manufacturer Part ID: 5165) is a high-precision I2C temperature sensor designed for accurate temperature measurement in a wide range of applications. It supports temperatures from -40°C to +125°C with a resolution of 0.0625°C. The MCP9601 also features an onboard thermocouple interface, making it ideal for projects requiring precise thermal monitoring and control.

Explore Projects Built with Adafruit MCP9601

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Battery-Powered Smart Sensor Hub with Adafruit QT Py RP2040
Image of wearable final: A project utilizing Adafruit MCP9601 in a practical application
This circuit features an Adafruit QT Py RP2040 microcontroller interfaced with an APDS9960 proximity sensor, an MPU6050 accelerometer and gyroscope, and an OLED display via I2C communication. It also includes a buzzer controlled by the microcontroller and is powered by a 3.7V LiPo battery with a toggle switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Sensor Hub with Adafruit QT Py RP2040 and OLED Display
Image of 512: A project utilizing Adafruit MCP9601 in a practical application
This circuit features an Adafruit QT Py RP2040 microcontroller interfacing with an MPU-6050 accelerometer, an Adafruit APDS-9960 sensor, and a 0.96" OLED display via I2C communication. It is powered by a 3.7V LiPo battery and includes a green LED with a current-limiting resistor connected to an analog pin of the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Smart Light with Proximity Sensor and OLED Display using Adafruit QT Py RP2040
Image of lab: A project utilizing Adafruit MCP9601 in a practical application
This circuit is a portable, battery-powered system featuring an Adafruit QT Py RP2040 microcontroller that interfaces with an OLED display, a proximity sensor, an accelerometer, and an RGB LED strip. The system is powered by a lithium-ion battery with a step-up boost converter to provide 5V for the LED strip, and it includes a toggle switch for power control. The microcontroller communicates with the sensors and display via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano-Based Sensor Data Logger with Alert System
Image of model rocket flight computer: A project utilizing Adafruit MCP9601 in a practical application
This circuit features an Arduino Nano microcontroller interfaced with BMP180 and MPU-6050 sensors via I2C communication for environmental and motion sensing. It includes a piezo buzzer and three LEDs (red, yellow, blue) for audio-visual feedback, controlled by digital pins on the Arduino. A pushbutton with a pull-up resistor, a micro SD card module for data logging, and a 9V battery for power supply are also part of the circuit.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Adafruit MCP9601

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of wearable final: A project utilizing Adafruit MCP9601 in a practical application
Battery-Powered Smart Sensor Hub with Adafruit QT Py RP2040
This circuit features an Adafruit QT Py RP2040 microcontroller interfaced with an APDS9960 proximity sensor, an MPU6050 accelerometer and gyroscope, and an OLED display via I2C communication. It also includes a buzzer controlled by the microcontroller and is powered by a 3.7V LiPo battery with a toggle switch for power control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of 512: A project utilizing Adafruit MCP9601 in a practical application
Battery-Powered Sensor Hub with Adafruit QT Py RP2040 and OLED Display
This circuit features an Adafruit QT Py RP2040 microcontroller interfacing with an MPU-6050 accelerometer, an Adafruit APDS-9960 sensor, and a 0.96" OLED display via I2C communication. It is powered by a 3.7V LiPo battery and includes a green LED with a current-limiting resistor connected to an analog pin of the microcontroller.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of lab: A project utilizing Adafruit MCP9601 in a practical application
Battery-Powered Smart Light with Proximity Sensor and OLED Display using Adafruit QT Py RP2040
This circuit is a portable, battery-powered system featuring an Adafruit QT Py RP2040 microcontroller that interfaces with an OLED display, a proximity sensor, an accelerometer, and an RGB LED strip. The system is powered by a lithium-ion battery with a step-up boost converter to provide 5V for the LED strip, and it includes a toggle switch for power control. The microcontroller communicates with the sensors and display via I2C.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of model rocket flight computer: A project utilizing Adafruit MCP9601 in a practical application
Arduino Nano-Based Sensor Data Logger with Alert System
This circuit features an Arduino Nano microcontroller interfaced with BMP180 and MPU-6050 sensors via I2C communication for environmental and motion sensing. It includes a piezo buzzer and three LEDs (red, yellow, blue) for audio-visual feedback, controlled by digital pins on the Arduino. A pushbutton with a pull-up resistor, a micro SD card module for data logging, and a 9V battery for power supply are also part of the circuit.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Industrial temperature monitoring
  • HVAC systems
  • Environmental sensing
  • IoT devices
  • Scientific experiments and data logging

Technical Specifications

The following table outlines the key technical details of the Adafruit MCP9601:

Parameter Value
Operating Voltage 3.3V to 5V
Temperature Range -40°C to +125°C
Temperature Resolution 0.0625°C
Communication Protocol I2C
I2C Address (Default) 0x67
Thermocouple Support Type K, J, T, N, S, E, B, R
Current Consumption ~300 µA (typical)
Dimensions 25mm x 17mm x 3mm

Pin Configuration

The MCP9601 breakout board has the following pin layout:

Pin Name Description
1 VIN Power input (3.3V to 5V)
2 GND Ground connection
3 SCL I2C clock line
4 SDA I2C data line
5 ALERT Interrupt output for temperature threshold alerts (optional, open-drain output)

Usage Instructions

Connecting the MCP9601 to a Circuit

  1. Power Supply: Connect the VIN pin to a 3.3V or 5V power source and the GND pin to ground.
  2. I2C Communication: Connect the SCL and SDA pins to the corresponding I2C pins on your microcontroller. Use pull-up resistors (typically 4.7kΩ) if your microcontroller does not have internal pull-ups.
  3. Optional ALERT Pin: If you want to use the temperature threshold alert feature, connect the ALERT pin to a GPIO pin on your microcontroller.

Important Considerations

  • Ensure the I2C address (default: 0x67) does not conflict with other devices on the same bus.
  • Use a compatible thermocouple type (e.g., Type K) for accurate readings.
  • Avoid exposing the sensor to temperatures beyond its specified range (-40°C to +125°C).

Example Code for Arduino UNO

Below is an example of how to use the MCP9601 with an Arduino UNO. This code reads the temperature and prints it to the Serial Monitor.

#include <Wire.h>
#include <Adafruit_MCP9601.h>

// Create an MCP9601 object
Adafruit_MCP9601 mcp;

// Setup function
void setup() {
  Serial.begin(9600); // Initialize serial communication
  while (!Serial) delay(10); // Wait for Serial Monitor to open

  Serial.println("Adafruit MCP9601 Test");

  // Initialize the MCP9601 sensor
  if (!mcp.begin(0x67)) { // Default I2C address is 0x67
    Serial.println("Failed to find MCP9601! Check wiring.");
    while (1);
  }
  Serial.println("MCP9601 found!");
}

// Loop function
void loop() {
  // Read temperature in Celsius
  float temperature = mcp.readThermocoupleTemperature();

  // Print temperature to Serial Monitor
  Serial.print("Temperature: ");
  Serial.print(temperature);
  Serial.println(" °C");

  delay(1000); // Wait 1 second before next reading
}

Notes:

  • Install the Adafruit MCP9601 library from the Arduino Library Manager before running the code.
  • Ensure proper wiring between the MCP9601 and Arduino UNO.

Troubleshooting and FAQs

Common Issues

  1. Sensor Not Detected

    • Cause: Incorrect wiring or I2C address mismatch.
    • Solution: Verify the connections and ensure the I2C address matches the one in your code.
  2. Inaccurate Temperature Readings

    • Cause: Using an incompatible thermocouple type or poor connections.
    • Solution: Ensure the thermocouple type matches the configuration and check for secure connections.
  3. No Output on Serial Monitor

    • Cause: Serial Monitor not set to the correct baud rate.
    • Solution: Set the Serial Monitor to 9600 baud.

FAQs

Q: Can I use the MCP9601 with a 3.3V microcontroller?
A: Yes, the MCP9601 is compatible with both 3.3V and 5V logic levels.

Q: What thermocouple types are supported?
A: The MCP9601 supports Type K, J, T, N, S, E, B, and R thermocouples.

Q: How do I change the I2C address?
A: The I2C address is fixed at 0x67 for this breakout board. If you need multiple sensors, consider using an I2C multiplexer.

Q: Can I use the ALERT pin for over-temperature warnings?
A: Yes, the ALERT pin can be configured to trigger when the temperature exceeds a set threshold. Refer to the Adafruit MCP9601 library documentation for configuration details.