XL9535 I/O Expander ==================== .. seo:: :description: Instructions for setting up XL9535 digital port expanders in ESPHome. :image: xl9535.svg The XL9535 component allows you to use **XL9535** I/O expander in ESPHome. It uses :ref:`I²C Bus ` for communication. Once configured, you can use any of the **16** available pins for your projects. Within ESPHome they emulate a real internal GPIO pin and can therefore be used with many of ESPHome's components such as the GPIO Binary Sensor or GPIO Switch. .. note:: This I/O Expander chip is used in the *Lilygo T-RGB 2.1" Round Display* .. code-block:: yaml # Example configuration entry xl9535: - id: xl9535_hub address: 0x20 # Individual outputs switch: - platform: gpio name: XL9535 Pin 0 pin: xl9535: xl9535_hub number: 0 mode: output: true inverted: false Configuration variables: ************************ - **id** (**Required**, :ref:`config-id`): The id to use for this ``xl9535`` component. - **address** (*Optional*, int): The I²C address of the driver. Defaults to ``0x20``. Pin configuration variables: **************************** - **xl9535** (**Required**, :ref:`config-id`): The id of the ``xl9535`` component of the pin. - **number** (**Required**, int): The pin number. Valid numbers are 0-7 and 10-17. - **inverted** (*Optional*, boolean): If all read and written values should be treated as inverted. Defaults to ``false``. - **mode** (*Optional*, string): A pin mode to set for the pin at. One of ``INPUT`` or ``OUTPUT``. See Also -------- - :ref:`i2c` - :doc:`switch/gpio` - :doc:`binary_sensor/gpio` - `XL9535 datasheet `__ - :apiref:`xl9535/xl9535.h` - :ghedit:`Edit`