WLED
WLED
Prerequisites
This integration requires a WLED device running WLED 0.14.0 or newer.
You can install the latest version of WLED on your device by going to
the WLED web installer
Configuration
To add the WLED device to your Home Assistant instance, use this My button:
WLED can be auto-discovered by Home Assistant. If an instance was found, it will be shown as Discovered. You can then set it up right away.
Manual configuration steps
If it wasn’t discovered automatically, don’t worry! You can set up a manual integration entry:
-
Browse to your Home Assistant instance.
-
In the bottom right corner, select the
Add Integration button. -
From the list, select WLED.
-
Follow the instructions on screen to complete the setup.
Lights
This integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] adds the WLED device as a light in Home Assistant. Home Assistant treats every segment of the LED strip as a separate light entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more].
Only native supported features of a light in Home Assistant are supported (which includes effects).
Using WLED segments
WLED can split a single LED strip into multiple segments. These segments can be controlled separately in WLED and in Home Assistant as well.
If WLED has 1 segment defined (the default), that one segment controls the whole LED strip. Home Assistant creates a single light entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] to control the strip.
If WLED has 2 or more segments, each segment gets its own light entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] in Home Assistant. Additionally, a master light entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] is created. This master entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] controls the strip power and overall brightness applied to all segments.
Additionally, select and number entities described below will be created for each segment.
Select entities
This integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] provides select entities for the following information from WLED:
- Playlist
- Preset
- Color palette (per segment, disabled by default).
Number entities
This integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] provides number entities to control the following, segment-specific settings:
- Intensity
- Speed
Sensor entities
This integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] provides sensor entities for the following information from WLED:
- Estimated current (in mA)
- Uptime (disabled by default)
- Free memory (in bytes, disabled by default)
- Wi-Fi Signal Strength (in %, disabled by default)
- Wi-Fi Signal Strength (RSSI in dBm, disabled by default)
- Wi-Fi Channel (disabled by default)
- Wi-Fi BSSID (disabled by default)
- IP Address
Switches
The integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] will also create a number of switch entities.
Nightlight
Toggles the WLED Timer. Can be configured on the WLED itself under Settings > LED Preferences > Timed light.
Sync receive and sync send
Toggles the synchronization between multiple WLED devices. Can be configured on the WLED itself under Settings > Sync Interfaces > WLED Broadcast.
Firmware updates
The integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] has an update entity that provides information on the latest available version of WLED and indicates if a firmware update is available for installation.
The firmware update can be triggered and installed onto your WLED device directly from Home Assistant.
The update entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] will only provide updates to stable versions, unless you are using a beta version of WLED. In that case, the update entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] will also provide updates to newer beta versions.
Options
Options for WLED can be set via the user interface, by taking the following steps:
- Browse to your Home Assistant instance.
- Go to Settings > Devices & Services.
- If multiple instances of WLED are configured, choose the instance you want to configure.
- Select the integration, then select Configure.
Example automations
Activating random effect
You can automate changing the effect using an action like this:
action: light.turn_on
target:
entity_id: light.wled
data:
effect: "{{ state_attr('light.wled', 'effect_list') | random }}"
It is recommended to select an effect that matches the capabilities of your WLED device (e.g., 1D, 2D, or Sound Reactive). You can refer to the WLED effect list
Below is an example of how to select a random effect with an ID between 1 and 117, excluding retired effects:
action: light.turn_on
target:
entity_id: light.wled
data:
effect: "{{ state_attr('light.wled', 'effect_list')[1:118] | reject('equalto', 'RSVD') | list | random }}"
Activating random palette
Activating a random palette is very similar to the above random effect, and can be done by selecting a random one from the available palette select entityAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more].
action: select.select_option
target:
entity_id: select.wled_palette
data:
option: "{{ state_attr('select.wled_palette', 'options') | random }}"
Activating a preset
Activating a preset is an easy way to set a WLED light to a specific configuration. Here is an example action to set a WLED light to a preset called My Preset:
- action: light.turn_on
target:
entity_id: light.wled
- action: select.select_option
target:
entity_id: select.wled_preset
data:
option: "My Preset"
Automation using specific palette name
An automation to turn on a WLED light and select a specific palette and
set intensity, and speed can be created by first calling the light.turn_on
action, then calling the select.select_option
action to select the
palette, then call the number.set_value
action to set the intensity
and again to set the speed.
Here is an example of all of these put together into an automation:
- alias: "Turn on WLED rain effect when weather changes to rainy"
triggers:
- trigger: state
entity_id: sensor.weather_condition
to: "rainy"
actions:
- action: light.turn_on
target:
entity_id: light.wled
data:
effect: "Rain"
- action: select.select_option
target:
entity_id: select.wled_color_palette
data:
option: "Breeze"
- action: number.set_value
target:
entity_id: number.wled_intensity
data:
value: 200
- action: number.set_value
target:
entity_id: number.wled_speed
data:
value: 255