esphome-docs/components/output/mcp4725.rst
Otto Winter 6053f490b5
Update svg2png and seo.py (#1380)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2021-11-16 15:19:33 +13:00

58 lines
1.7 KiB
ReStructuredText

MCP4725 Output
==============
.. seo::
:description: Instructions for setting up MCP4725 outputs on the ESP.
:image: mcp4725.jpg
The MCP4725 output component allows to use `12bit external DAC
<https://learn.sparkfun.com/tutorials/mcp4725-digital-to-analog-converter-hookup-guide/all>`__
in order to have analog output(s) on any board by using I2C. Devices default address is ``0x60``
and configurable alternative is ``0x61``.
.. code-block:: yaml
# Example configuration entry
# Set a global i2c connection
i2c:
sda: 21
scl: 22
scan: true
# Set the output with default (address: 0x60 / global i2c)
output:
- platform: mcp4725
id: dac_output
on_...:
then:
- output.set_level:
id: dac_output
level: 100%
Configuration variables:
------------------------
- **id** (**Required**, :ref:`config-id`): The id to use for this output component.
- **address** (*Optional*, int): Manually specify the I2C address of
the DAC. Defaults to ``0x60``.
- All other options from :ref:`Output <config-output>`.
Usage with voltages higher than 3.3v
------------------------------------
In order to drive analog modules with voltages higher than 3.3v, use a `TTL bi-directionnal level
converter <https://learn.sparkfun.com/tutorials/bi-directional-logic-level-converter-hookup-guide/all>`__
Be careful about what converter you use, some of of them have channels labeled with `RX` and `TX`,
in this case only `TX` channels are bi-directional (so you must use 2 `TX` channels for I2C to work).
See Also
--------
- :doc:`/components/output/esp32_dac`
- :doc:`/components/output/esp8266_pwm`
- :ghedit:`Edit`