MCP3204 & MCP3208 12-Bit A/D Converters¶
The Microchip Technology Inc. MCP3204 & MCP3208 devices are successive approximation 12-bit Analog-to-Digital (A/D) converters with on-board sample and hold circuitry. This component is common for both device types. Configure both devices as MCP3204 and observe the maximum number of channels as per variant used.
Component/Hub¶
The MCP3204 component allows you to use MCP3204 or MCP3208 12-Bit A/D Converter (datasheet) in ESPHome. The MCP3204 is a 4-channel and MCP3208 is an 8-channel device. It uses the SPI Bus for communication.
Once configured, you can use any of the 4 or 8 pins (depending on device variant) as sensors for your projects.
Each pin will respond with a voltage calculated off of the reference_voltage
(default is 3.3V).
It calculates the voltage by multiplying the reference_voltage * value
on the pin (basically the percentage of VREF)
Most configurations will set the reference_voltage
= VREF pin
# Example configuration entry
mcp3204:
cs_pin: GPIOXX
reference_voltage: 3.3V
Configuration variables:¶
id (Required, ID): The id to use for this MCP3204 component.
cs_pin (Required, Pin Schema): The SPI cable select pin to use.
reference_voltage (Optional, float): The reference voltage. Defaults to
3.3V
.
Sensor¶
The mcp3204
sensor allows you to use your MCP3204 or MCP3208 12-Bit A/D Converter sensors with ESPHome.
First, setup a MCP3204 Hub for your MCP3204/8 sensor and then use this
sensor platform to create individual sensors that will report the voltage to Home Assistant.
# Example config of sensors.
# This is a small 1.5v solar panel power rail attached to pin 0
# of the MCP3204
sensor:
- platform: mcp3204 # Attached to pin 0 of the MCP3204.
id: solar_voltage
number: 0 # MCP3204 pin number
# In case MCP3208 is used. you can specify pin number > 4
- platform: mcp3204 # Attached to pin 7 of the MCP3208.
id: supply_voltage
number: 7 # MCP3208 pin number