GUIDE

WLED & Home Assistant Integration

Complete guide to connecting WLED with Home Assistant — from auto-discovery to advanced automations, scenes, and expert tips.

Why WLED + Home Assistant?

WLED is one of the best-supported smart lighting systems in Home Assistant. The native integration exposes full control over brightness, colour, colour temperature, effects, and segments — all without cloud dependency, polling delays, or an intermediary hub.

Everything runs locally on your network. State updates are near-instant via WebSocket push, and WLED devices appear automatically in HA through mDNS discovery.

Local

No cloud

runs on your LAN

<100ms

Response time

WebSocket push

Segments

Full control

per-segment in HA

Auto

Discovery

zero config needed

Prerequisites

Before starting, make sure you have the following in place:

  • WLED installed and running — your ESP32 or ESP8266 must be on your Wi-Fi network and reachable by IP. Confirm by opening its web UI in a browser.
  • Home Assistant 2021.10 or newer — the native WLED integration was added in 2021.10. Any version after that has it built in, no HACS required.
  • Both devices on the same network — HA and WLED must be on the same subnet for mDNS discovery to work. VLANs with mDNS reflectors can also work but add complexity.
  • WLED device name set — in WLED go to Config → WiFi Setup and give your device a unique, descriptive name (e.g. living-room-strip). This becomes the HA entity name.

Method 1: Auto-Discovery (Recommended)

This is the easiest path and works for most setups. WLED broadcasts itself on the local network using mDNS. Home Assistant listens for these broadcasts and presents discovered devices automatically.

1

Check for the discovery notification

In HA, go to Settings → Devices & Services. If WLED is on your network, you should see a notification card saying "New devices discovered" with your WLED device listed. Click Configure.

2

Confirm the device

HA will show the device IP and name. Confirm it's the correct device and click Submit. The integration creates entities automatically.

3

Assign to an area

Assign the device to a room (area) during setup. This allows voice assistants, dashboards, and automations to find it by room name.

Not seeing the device?

mDNS can be blocked by firewall rules or VLAN isolation. Try adding the device manually (Method 2 below), or check that your router allows mDNS/Bonjour traffic between devices. Also confirm WLED's Config → Sync interfaces → Enable is turned on.

Method 2: Manual Setup via IP

Use this if auto-discovery doesn't work, or if you prefer to control exactly which devices are added.

1

Find your WLED device's IP address

Open the WLED web UI, go to Config → WiFi Setup. The current IP is displayed at the top. Assign a static IP via your router's DHCP reservation to prevent it changing.

2

Add the integration manually

In HA go to Settings → Devices & Services → Add Integration. Search for WLED and select it. Enter the device's IP address when prompted.

3

Verify entities are created

HA creates a light entity for each WLED segment, plus sensor entities for free heap, uptime, IP address, and Wi-Fi signal strength.

What Entities Are Created

The WLED integration creates several entity types automatically. Understanding them helps you build better automations.

Light entities

One light entity per segment. Each supports on/off, brightness, RGB colour, and colour temperature (if your strip supports it). The main segment is the primary entity.

Select entities

Dropdowns for Effect, Palette, and Preset. Use these in automations to trigger specific WLED effects or switch between saved presets.

Number entities

Sliders for Effect speed and Effect intensity. These control the Speed and Intensity parameters of the currently running effect.

Sensor entities

Diagnostic sensors for IP address, Wi-Fi signal, uptime, and free heap. Useful for monitoring device health and detecting connectivity issues.

Switch entities

Toggles for nightlight mode and sync send/receive. Enable nightlight mode for a gradual dim-to-off over a configurable duration.

Update entity

HA checks for WLED firmware updates and shows a notification when a newer version is available on GitHub.

Assigning a Static IP (Important)

If your WLED device's IP changes (DHCP reassignment after a reboot), Home Assistant loses the connection and shows the device as unavailable. Always assign a static IP before building automations.

The most reliable method is a DHCP reservation on your router — find your WLED device's MAC address in WLED Config → WiFi Setup, then add a reservation in your router's DHCP settings. The device keeps using DHCP but always gets the same IP.

Alternatively, set a static IP directly in WLED under Config → WiFi Setup → Static IP. Set the IP, subnet mask (255.255.255.0 for most home networks), and gateway (your router's IP). Save and reboot.

Using Effects and Presets in Automations

The most powerful part of WLED in Home Assistant is triggering effects and presets from automations. Here are the most useful patterns.

Trigger a specific effect

Use the select.select_option service on the Effect select entity:

service: select.select_option
target:
  entity_id: select.living_room_strip_effect
data:
  option: "Fire 2012"

Activate a saved WLED preset

Create presets in the WLED UI (effects, colours, brightness all saved), then trigger them from HA:

service: select.select_option
target:
  entity_id: select.living_room_strip_preset
data:
  option: "Movie Mode"

Set colour and brightness together

Use the standard light.turn_on service:

service: light.turn_on
target:
  entity_id: light.living_room_strip
data:
  rgb_color: [255, 100, 0]
  brightness_pct: 80
  transition: 2

Adjust effect speed and intensity

Control how fast and how intense an effect runs using the number entities:

service: number.set_value
target:
  entity_id: number.living_room_strip_speed
data:
  value: 200

service: number.set_value
target:
  entity_id: number.living_room_strip_intensity
data:
  value: 150

WLED Scenes in Home Assistant

Home Assistant scenes are the cleanest way to save and recall WLED states. A scene captures the current state of one or more entities — colour, brightness, effect, speed, intensity — and restores it with one action.

Create a scene by going to Settings → Automations & Scenes → Scenes → Create Scene. Add your WLED light entities, set them to the state you want, and save. You can then activate the scene from a dashboard button, voice command, or automation.

A practical approach is to create WLED presets for complex multi-segment or effect configurations, then use a single HA scene to trigger the correct WLED preset on each device. This keeps the effect logic in WLED (where it belongs) and the scene logic in HA (where it's easy to automate).

Tips & Tricks

💡 Use WLED presets, not HA scenes, for effects

HA scenes can only set static colours — they cannot store WLED effect animations. For anything involving effects, palettes, or multi-segment configurations, create a WLED preset first, then trigger it from HA via the Preset select entity. This gives you the full power of WLED's effect engine from HA automations.

💡 Name your segments meaningfully

In WLED's UI, name each segment something descriptive like "Couch Left" or "Under Cabinet". These names appear directly in Home Assistant as entity names, making your dashboard and automations much easier to read.

💡 Reserve DHCP before adding to HA

Always assign a static IP or DHCP reservation before adding your WLED device to HA. An IP change will cause the integration to show "unavailable" and require re-adding. Do this once, correctly, and you will never deal with it again.

💡 Use the Adaptive Lighting integration with WLED

The HACS Adaptive Lighting integration automatically adjusts WLED's colour temperature and brightness based on time of day — warm white in the evening, cool white during the day. It works natively with WLED light entities and is one of the most popular HA add-ons for LED installations.

💡 Sync multiple WLED devices

WLED has a built-in UDP sync feature that lets multiple controllers mirror each other in real time. For HA, you can also group multiple WLED light entities into an HA Light Group — turning on the group turns all WLED devices on simultaneously with the same settings. Go to Settings → Devices & Services → Helpers → Light Group.

💡 Automation: turn on warm white at sunset

A classic automation: at sunset, turn WLED on at 60% brightness with warm white (2700K colour temperature). Pair with a motion sensor to only trigger if someone is home. Use WLED's Nightlight mode (available as a switch entity in HA) to automatically dim and turn off after a set time.

💡 Flash for notifications

Use the flash parameter of light.turn_on to briefly flash your WLED strips as a visual notification — doorbell, package delivery, washing machine done. Set flash: short for a quick blink or flash: long for a longer alert. WLED returns to its previous state automatically.

💡 Monitor device health

Use WLED's sensor entities (Wi-Fi signal, uptime, free heap) to monitor your controllers. Set an automation that alerts you if Wi-Fi signal drops below -80 dBm — a sign the controller is struggling to maintain connection and may need repositioning or a Wi-Fi extender.

💡 Use the REST API for advanced control

For anything the native HA integration doesn't expose (custom JSON state payloads, per-LED control, playlist triggers), use HA's rest_command to POST directly to WLED's JSON API at http://[IP]/json/state. This unlocks the full WLED API from within HA automations.

💡 MQTT as an alternative transport

If you run an MQTT broker (Mosquitto), you can enable WLED's built-in MQTT support under Config → Sync interfaces → MQTT. This allows publishing state changes to an MQTT topic and subscribing to commands — useful for complex multi-system setups or if you prefer MQTT over the native HTTP API. The native HA integration uses the HTTP API by default and is recommended for most users.

Troubleshooting Common Issues

Device shows as "unavailable" in HA

Most commonly caused by a changed IP address. Check the device's current IP in the WLED UI, then go to HA → Settings → Devices & Services → WLED integration → Configure, and update the IP. Assign a static IP or DHCP reservation to prevent recurrence.

Auto-discovery not working

Check that HA and WLED are on the same VLAN/subnet. Disable any firewall rules blocking mDNS (port 5353 UDP). Try adding the device manually by IP. Also confirm in WLED under Config → Sync interfaces that "Enable" is ticked.

Effects not working from HA

The Effect select entity in HA uses the exact effect names from WLED — including capitalisation and spacing. If an effect name in your automation doesn't exactly match the name in WLED's effects list, the select will silently fail. Go to HA Developer Tools → States, find your Effect select entity, and copy the exact option strings from the attributes.

Segments not appearing as separate entities

HA creates one light entity per WLED segment, but only if the segments are saved and enabled in WLED. Go to WLED's UI, create and save your segments, then reload the HA integration (Settings → Devices & Services → WLED → Reload) to pick up the new entities.

HA state doesn't reflect manual WLED changes

The native integration uses WebSocket to receive push updates from WLED — state changes made in the WLED app or web UI should appear in HA within a second or two. If they don't, the WebSocket connection may have dropped. Reloading the integration usually fixes this. If it persists, check the WLED device's memory (free heap sensor) — low memory causes WebSocket instability.

Frequently Asked Questions

Do I need HACS to use WLED with Home Assistant?

No. The WLED integration is built into Home Assistant core since version 2021.10. You do not need HACS, custom components, or any third-party add-ons to use the full WLED integration.

Can I control WLED via Google Home or Amazon Alexa through HA?

Yes. If you have the Google Home or Amazon Alexa integration set up in HA, WLED light entities are exposed automatically. You can then use voice commands like "Hey Google, turn on the living room lights to 50%" and it will control your WLED strip through Home Assistant.

Does WLED work with Home Assistant's energy monitoring?

Not directly — WLED doesn't have built-in power metering. However, if your smart plug or power circuit has a power meter (e.g. a Shelly or Sonoff with energy monitoring), you can add that entity to HA's energy dashboard alongside your WLED device for a real-world consumption view. Use the WLED Running Cost Estimator on this site for pre-installation estimates.

Can I use WLED with Home Assistant's Lovelace dashboard?

Yes. WLED light entities work with all standard HA dashboard cards — Light card, Tile card, Button card. For a more polished experience, the community-maintained lovelace-mushroom and button-card HACS cards offer richer WLED control widgets including effect and preset selectors.

Will HA control interfere with the WLED app?

No. Both HA and the WLED app communicate with the controller via the same HTTP/WebSocket API. They can both be used simultaneously — the last command wins. WLED pushes state changes to all connected clients in real time, so both HA and the WLED app stay in sync.