Introduction
.. image:: https://readthedocs.org/projects/adafruit-circuitpython-mcp9600/badge/?version=latest
:target: https://docs.circuitpython.org/projects/mcp9600/en/latest/
:alt: Documentation Status
.. image:: https://raw.githubusercontent.com/adafruit/Adafruit_CircuitPython_Bundle/main/badges/adafruit_discord.svg
:target: https://adafru.it/discord
:alt: Discord
.. image:: https://github.com/adafruit/Adafruit_CircuitPython_MCP9600/workflows/Build%20CI/badge.svg
:target: https://github.com/adafruit/Adafruit_CircuitPython_MCP9600/actions/
:alt: Build Status
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black
:alt: Code Style: Black
This is a CircuitPython driver for the MCP9600 thermocouple I2C amplifier.
In addition to the MCP9600 breakout, you will also need a thermocouple, which
can be found in the Adafruit store.
The MCP9600 supports several thermocouple types for different temperature
ranges. The "K" type is the default, with a range of -200C to +1372C.
Dependencies
This driver depends on:
Adafruit CircuitPython <https://github.com/adafruit/circuitpython>
_
Please ensure all dependencies are available on the CircuitPython filesystem.
This is easily achieved by downloading
the Adafruit library and driver bundle <https://github.com/adafruit/Adafruit_CircuitPython_Bundle>
_.
Installing from PyPI
On supported GNU/Linux systems like the Raspberry Pi, you can install the driver locally from PyPI <https://pypi.org/project/adafruit-circuitpython-mcp9600/>
_. To install for current user:
.. code-block:: shell
pip3 install adafruit-circuitpython-mcp9600
To install system-wide (this may be required in some cases):
.. code-block:: shell
sudo pip3 install adafruit-circuitpython-mcp9600
To install in a virtual environment in your current project:
.. code-block:: shell
mkdir project-name && cd project-name
python3 -m venv .venv
source .venv/bin/activate
pip3 install adafruit-circuitpython-mcp9600
Usage Example
This is a simple example showing the hot junction temperature (the
temperature at the tip of the thermocouple). You may need to adjust the
I2C frequency if you receive input/output errors.
.. code-block:: shell
import board
import busio
from adafruit_bus_device.i2c_device import I2CDevice
from adafruit_mcp9600 import MCP9600
i2c = busio.I2C(board.SCL, board.SDA,frequency=200000)
try:
# using default I2C register and "K" thermocouple
device = MCP9600(i2c)
print("temperature(C):",device.temperature)
except ValueError:
print("MCP9600 sensor not detected")
This example displays the ambient/room and hot junction temperatures at
1 second intervals. Turn on the Mu editor's plotter option to view the
temperatures in a real-time graph.
.. code-block:: shell
import board
import busio
import time
from adafruit_bus_device.i2c_device import I2CDevice
from adafruit_mcp9600 import MCP9600
i2c = busio.I2C(board.SCL, board.SDA, frequency=200000)
try:
device = MCP9600(i2c)
print("version:", device.version)
while True:
print((
device.ambient_temperature,
device.temperature
))
time.sleep(1)
except ValueError:
print("MCP9600 sensor not detected")
Documentation
API documentation for this library can be found on Read the Docs <https://docs.circuitpython.org/projects/mcp9600/en/latest/>
_.
For information on building library documentation, please check out this guide <https://learn.adafruit.com/creating-and-sharing-a-circuitpython-library/sharing-our-docs-on-readthedocs#sphinx-5-1>
_.
Contributing
Contributions are welcome! Please read our Code of Conduct <https://github.com/adafruit/Adafruit_CircuitPython_MCP9600/blob/main/CODE_OF_CONDUCT.md>
_
before contributing to help this project stay welcoming.