WLED: Change Preset without Turning On

Hey @three20three β€” I ran into this exact issue myself.

When you apply a WLED preset via automation (especially early in the day), it often turns on the LEDs unintentionally β€” even if "on": true isn’t in your preset, the default behavior in some cases is to power on.

:white_check_mark: Solution:

You can use this custom integration I built:
:link: WLED Live View Proxy for Home Assistant

It lets you send raw WLED JSON API commands via WebSocket, so you have full control. Best part:

You can paste your entire preset JSON (copied from WLED UI), and simply control whether it powers on β€” dynamically.


:bulb: Example: Apply preset without turning on

action: wled_liveviewproxy.send_command
data:
  targets:
    entity_id:
      - light.wlvp_wled_bead
  command:
    {
      "seg": [{
        "id": 0,
        "start": 0,
        "stop": 100,
        "grp": 1,
        "spc": 0,
        "of": 0,
        "on": "{{ is_state('light.dig_quad_v3', 'on') | lower }}",
        "frz": false,
        "bri": 255,
        "cct": 127,
        "set": 0,
        "col": [[255,0,255],[0,0,128],[255,255,255]],
        "fx": 44,
        "sx": 0,
        "ix": 0,
        "pal": 11,
        "c1": 128,
        "c2": 128,
        "c3": 16,
        "sel": true,
        "rev": false,
        "mi": false,
        "o1": false,
        "o2": false,
        "o3": false,
        "si": 0,
        "m12": 1
      }]
    }

:pushpin: This ensures the segment will only turn on if WLED is already on. Otherwise, the effect applies silently without lighting up the strip.