MCP4728 Component
The MCP4728 output component allows to use 12bit external quad DAC
in order to have analog outputs on any board by using I²C. Devices default address is 0x60.
# Example configuration entry
# Set a global I²C connection
i2c:
sda: 21
scl: 22
scan: true
# Set the component with default (address: 0x60 / global I²C)
mcp4728:
- id: dac_outputConfiguration variables
id (Optional, ID): The id to use for this output component.
address (Optional, int): Manually specify the I2C address of the DAC. Defaults to
0x60.store_in_eeprom (Optional, boolean): Use SEQ_WRITE mode to also write to EEPROM sequentially. Defaults to
false.
MCP4728 Output
The MCP4728 output component exposes 4 MCP4728 channels of a global MCP4728 as float outputs.
# Individual outputs
output:
- platform: mcp4728
id: ac_dimmer_1
mcp4728_id: dac_output
channel: A
vref: vdd
power_down: normal # default
- platform: mcp4728
id: ac_dimmer_2
mcp4728_id: dac_output
channel: B
vref: vdd
power_down: gnd_1k
- platform: mcp4728
id: ac_dimmer_3
channel: C
vref: internal
gain: X1
power_down: normal # default
- platform: mcp4728
id: ac_dimmer_4
channel: D
vref: internal
gain: X2
on_...:
then:
- output.set_level:
id: ac_dimmer_1
level: 100%Configuration variables
id (Required, ID): The id to use for this output component.
mcp4728_id (Optional, ID): Manually specify the ID of the MCP4728. Use this if you have multiple MCP4728 chains you want to use at the same time.
channel (Required, string): Chose the channel of the MCP4728 chain of this output component. One of
A,B,CorD.vref (Optional, string): Chose the VREF source. One of
vddorinternal. Defaults tovdd.gain (Optional, string): Chose the GAIN multiplier for internal VREF. One of
X1orX2. Only useful whenvdd=internal. Defaults toX1.power_down (Optional, string): Chose the power down mode. In power down mode (value different from
normal) the output pin will be connected to GND using a resistor (1kOhm, 100kOhm or 500kOhm). One ofnormal,gnd_1k,gnd_100korgnd_500k. Defaults tonormal.All other options from Output.
Output voltage range will be different depending on the vref source and gain.
When vref=vdd, output voltage will range from 0.000V to VDD.
When vref=internal, output voltage will range from 0.000V to 2.048V with gain=X1 and from 0.000V to 4.096V with gain=X2.