NOTE: This binding is provided by the MQTT binding, and therefore no explicit installation is necessary beyond installing the MQTT binding.
Devices that use Home Assistant MQTT Discovery are automatically configured with this binding.
Components that share a common device.identifiers will automatically be grouped together as a single Thing.
Each component will be represented as a Channel Group, with the attributes of that component being individual channels.
Discovery
Any device that publishes the component configuration under the homeassistant prefix in MQTT will have their components automatically discovered and added to the Inbox.
You can also manually create a Thing, and provide the individual component topics, as well as a different discovery prefix.
Supported Components and Channels
The following components (and their associated channels) are supported.
If a component has multiple channels, they are put together in a channel group with the component's ID.
If a component only has a single channel, that channel is renamed with the component's ID, and placed directly on the Thing, without a group.
Note that most channels are optional, and may not be present.
Note also that just because these tables show that a channel may be read/write, full functionality is dependent on the device.
If a device has multiple device triggers for the same subtype (the particular button), they will only show up as a single channel, and all events for that button will be delivered to that channel.
Channel ID
Type
R/W
Description
{the subtype from the component}
Trigger
N/A
A trigger channel that receives triggers (typically button presses) from the device.
This is a special component, that will show up as additional properties on the Thing, and add a button on the Thing to initiate an OTA update.
The json-attributes channel for this component will always appear as part of channel group, and not be renamed to match the component itself.
Channel ID
Type
R/W
Description
json-attributes
String
RO
Additional attributes, as a serialized JSON string.
If the valve is on (open), or not. For a valve with position (a Dimmer), 100% is full open.
json-attributes
String
RO
Additional attributes, as a serialized JSON string.
Supported Devices
See the Home Assistant documentation for a broad list of devices that should be supported by this binding.
It's not feasible to test every component from every device, so there may be issues with specific devices.
Please report an issue on GitHub if you find a device that is not working as expected, and not otherwise noted as a limitation above.
ESPHome
Configure your device to connect to MQTT as described in the documentation, and make sure discovery is not set to false.
Assuming you're not running Home Assistant in parallel, you should also remove any api: block in your configuration.
Tasmota
To activate Home Assistant discovery support on your Tasmota device you need to do the following:
Configuration → MQTT: You must have unique Client name and Topic (should be the default).
Configuration → Other: The Device Name will be used to identify the newly found device.
And you need to enable MQTT, of course.
Console: Enter SetOption19 1.
Your Tasmota device should now show up in your inbox.