Support for MCP9600 sensor (#2217)

Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
This commit is contained in:
MrEditor97 2022-08-25 04:49:35 +01:00 committed by GitHub
parent a98b66b199
commit 2e34f4772b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 71 additions and 1 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 KiB

View File

@ -0,0 +1,69 @@
MCP9600 Thermocouple Amplifier
===========================================
.. seo::
:description: Instructions for setting up the MCP9600 thermocouple amplifier
:image: mcp9600.jpg
:keywords: MCP9600
The ``mcp9600`` sensor platform allows you to use your MCP9600 and MCP9601
(`datasheet <https://cdn-learn.adafruit.com/assets/assets/000/105/040/original/MCP960X-Data-Sheet-20005426%281%29.pdf>`__,
`Adafruit`_) to measure the temperature of a connected thermocouple while also measuring the ambient temperature around the sensor with ESPHome. :ref:`I²C <i2c>` is
required to be set up in your configuration for this sensor to work.
.. warning::
The :ref:`I²C <i2c>` bus must be set to a minimum of ``100khz`` due to the limitations of the MCP9600 and MCP9601.
.. figure:: images/mcp9600.jpg
:align: center
:width: 80.0%
MCP9600 Thermocouple Amplifier
.. _Adafruit: https://www.adafruit.com/product/4101
.. code-block:: yaml
# Example configuration entry
sensor:
- platform: mcp9600
hot_junction:
name: "Thermocouple Temperature"
cold_junction:
name: "Ambient Temperature"
thermocouple_type: K
address: 0x67
update_interval: 60s
Configuration variables:
------------------------
- **hot_junction** (*Optional*): The information for the Hot Junction temperature sensor.
- **name** (**Required**, string): The name for the temperature
sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **cold_junction** (*Optional*): The information for the Cold Junction temperature sensor.
- **name** (**Required**, string): The name for the temperature sensor.
- **id** (*Optional*, :ref:`config-id`): Set the ID of this sensor for use in lambdas.
- All other options from :ref:`Sensor <config-sensor>`.
- **thermocouple_type** (*Optional*): Set the thermocouple type. Options are:
K, J, T, N, S, E, B and R type thermocouple. Defaults to ``K``.
- **address** (*Optional*, int): Manually specify the I²C address of
the sensor. Defaults to ``0x67``.
- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the
sensor. Defaults to ``60s``.
See Also
--------
- :ref:`sensor-filters`
- :apiref:`mcp9600/mcp9600.h`
- `Adafruit MCP9600 Library <https://github.com/adafruit/Adafruit_MCP9600>`__ by `Adafruit <https://www.adafruit.com/>`__
- `SparkFun MCP9600 Library <https://github.com/sparkfun/SparkFun_MCP9600_Arduino_Library>`__ by `SparkFun <https://www.sparkfun.com/>`__
- :ghedit:`Edit`

BIN
images/mcp9600.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -380,7 +380,8 @@ Thermocouple
MAX31855, components/sensor/max31855, max31855.jpg, K-Type
MAX31856, components/sensor/max31856, max31856.jpg, All types
MAX31865, components/sensor/max31865, max31865.jpg, Platinum RTD
MAX6675, components/sensor/max6675, max6675.jpg, K-Type
MAX6675, components/sensor/max6675, max6675.jpg, K-Type,
MCP9600, components/sensor/mcp9600, mcp9600.jpg, All types
Weight