diff --git a/components/sensor/images/mcp9600.jpg b/components/sensor/images/mcp9600.jpg new file mode 100644 index 000000000..955adb28c Binary files /dev/null and b/components/sensor/images/mcp9600.jpg differ diff --git a/components/sensor/mcp9600.rst b/components/sensor/mcp9600.rst new file mode 100644 index 000000000..6236961dd --- /dev/null +++ b/components/sensor/mcp9600.rst @@ -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 `__, +`Adafruit`_) to measure the temperature of a connected thermocouple while also measuring the ambient temperature around the sensor with ESPHome. :ref:`I²C ` is +required to be set up in your configuration for this sensor to work. + +.. warning:: + + The :ref:`I²C ` 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 `. + +- **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 `. + +- **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 `__ by `Adafruit `__ +- `SparkFun MCP9600 Library `__ by `SparkFun `__ +- :ghedit:`Edit` diff --git a/images/mcp9600.jpg b/images/mcp9600.jpg new file mode 100644 index 000000000..a3d496605 Binary files /dev/null and b/images/mcp9600.jpg differ diff --git a/index.rst b/index.rst index eb8c19b1b..910f04f19 100644 --- a/index.rst +++ b/index.rst @@ -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