Skip to content

Document workarounds for WLED HA integration limitations#314

Open
mik-laj wants to merge 4 commits intowled:mainfrom
mik-laj:patch-1
Open

Document workarounds for WLED HA integration limitations#314
mik-laj wants to merge 4 commits intowled:mainfrom
mik-laj:patch-1

Conversation

@mik-laj
Copy link
Copy Markdown
Contributor

@mik-laj mik-laj commented May 8, 2026

The WLED HA integration has known limitations that can be worked around using WLED's JSON API. This PR adds a new section documenting practical workarounds with YAML examples.

These workarounds are documented here rather than in the HA integration docs to keep them maintainable. The HA team is limited in its ability to maintain them due to limited knowledge of the WLED JSON API.

Summary by CodeRabbit

  • Documentation
    • Updated Home Assistant integration documentation with explicit guidance on configuring WLED through the Home Assistant integration.
    • Added new "Workarounds for known integration limitations" section covering solutions for custom palette visibility, AudioReactive usermod control, effects compatibility, mixed RGB+CCT strip behavior, multi-segment management, and secondary/tertiary effect color configuration.

Added workarounds for known limitations of the WLED integration, including issues with custom palettes, AudioReactive usermod, sound-reactive effects, and color control.
Copilot AI review requested due to automatic review settings May 8, 2026 14:26
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented May 8, 2026

Review Change Stack

Warning

Rate limit exceeded

@mik-laj has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 52 minutes and 3 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 17ec48a7-4765-4a9d-955b-04a6316b5d20

📥 Commits

Reviewing files that changed from the base of the PR and between 999787c and 6eea676.

📒 Files selected for processing (1)
  • docs/advanced/home-automation.md

Walkthrough

This PR updates WLED Home Assistant integration documentation by clarifying configuration via the official Home Assistant WLED integration and introducing a new "Workarounds for known integration limitations" section with REST API and preset-based solutions for palette visibility, AudioReactive control, effect handling, RGB+CCT behavior, multi-segment control, and secondary color configuration.

Changes

Home Assistant Integration Documentation

Layer / File(s) Summary
Integration Configuration Reference
docs/advanced/home-automation.md
Clarified that WLED is configured via the official Home Assistant WLED integration, replacing generic guidance with a specific link to integration documentation.
Workarounds for Known Limitations
docs/advanced/home-automation.md
Added comprehensive "Workarounds for known integration limitations" section with REST API examples (custom palette lookup, AudioReactive control) and preset-based guidance for effects, RGB+CCT strips, multi-segment control, and secondary/tertiary color configuration.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 Our docs now shine with workarounds bright,
REST APIs and presets set things right,
Home Assistant users need not fret,
With palettes, effects, the best they'll get! 🌈

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and accurately describes the main change: adding documentation for workarounds to known WLED Home Assistant integration limitations.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
✨ Simplify code
  • Create PR with simplified code

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (1)
docs/advanced/home-automation.md (1)

46-47: ⚡ Quick win

Use admonitions for workaround callouts instead of bold labels.

At Lines 46, 70, 90, 106, 114, 158, and 172, **Workaround:** should be converted to MkDocs admonitions for consistency and better scanability.

Example conversion pattern
-**Workaround:** Use `rest_command` to set the palette by ID.
+!!! tip "Workaround"
+    Use `rest_command` to set the palette by ID.

As per coding guidelines: “Use MkDocs Material admonitions (!!! info, !!! tip, !!! warning, !!! danger) for callouts instead of plain text or other formatting.”

Also applies to: 70-71, 90-91, 106-107, 114-115, 158-159, 172-173

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/advanced/home-automation.md` around lines 46 - 47, Replace each bold "
**Workaround:** " callout in docs/advanced/home-automation.md with a MkDocs
Material admonition (use "!!! tip" for workaround semantics); e.g., locate
occurrences of the literal string "**Workaround:**" and convert the following
sentence/block into an indented body under "!!! tip" (preserve any inline code,
URLs, and examples), ensuring proper indentation for multiline content and
leaving surrounding text unchanged — update all instances of that literal (the
ones noted in the review) so the rendered pages use MkDocs admonitions instead
of bold labels.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/advanced/home-automation.md`:
- Around line 38-42: Change the new workaround section and its subsections from
level-5/sentence-case headings to the prescribed `###`/`####` depth and Title
Case; specifically update the "Workarounds for known integration limitations"
heading and each subsection heading such as "Custom palettes not visible in HA"
(and the other subsection titles referenced) to use `###` or `####` as
appropriate and convert their text to Title Case (e.g., "Custom Palettes Not
Visible in HA"); ensure heading markers and capitalization are consistent with
the project's guideline of using `##` for top-level and `###`/`####` for
sub-sections.

---

Nitpick comments:
In `@docs/advanced/home-automation.md`:
- Around line 46-47: Replace each bold " **Workaround:** " callout in
docs/advanced/home-automation.md with a MkDocs Material admonition (use "!!!
tip" for workaround semantics); e.g., locate occurrences of the literal string
"**Workaround:**" and convert the following sentence/block into an indented body
under "!!! tip" (preserve any inline code, URLs, and examples), ensuring proper
indentation for multiline content and leaving surrounding text unchanged —
update all instances of that literal (the ones noted in the review) so the
rendered pages use MkDocs admonitions instead of bold labels.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 7062834f-db85-4ecc-8a89-5d16c2c57026

📥 Commits

Reviewing files that changed from the base of the PR and between 2e211da and 999787c.

📒 Files selected for processing (1)
  • docs/advanced/home-automation.md

Comment thread docs/advanced/home-automation.md Outdated
Comment on lines +38 to +42
#### Workarounds for known integration limitations

The native integration has known limitations documented in the [official HA WLED integration docs](https://www.home-assistant.io/integrations/wled/). Below are practical workarounds using WLED's REST API.

##### Custom palettes not visible in HA
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Fix heading levels and title case for the new workaround section.

Line 38 and the subsection headings at Lines 42, 66, 86, 102, 110, and 154 currently use level-5 headings and sentence case. Please keep subsection depth at ###/#### and switch these headings to title case.

Suggested heading structure
-#### Workarounds for known integration limitations
+### Workarounds for Known Integration Limitations

-##### Custom palettes not visible in HA
+#### Custom Palettes Not Visible in HA

-##### AudioReactive usermod not controllable
+#### AudioReactive Usermod Not Controllable

-##### Sound-reactive and 2D matrix effects may not work
+#### Sound-Reactive and 2D Matrix Effects May Not Work

-##### Mixed RGB+CCT strips – only one color model active
+#### Mixed RGB+CCT Strips – Only One Color Model Active

-##### No master control for color/effect across all segments
+#### No Master Control for Color/Effect Across All Segments

-##### Secondary and tertiary effect colors cannot be set from HA
+#### Secondary and Tertiary Effect Colors Cannot Be Set from HA

As per coding guidelines: “Use ## for top-level sections… use ### and #### for sub-sections” and “Use title case for section and subsection headings.”

Also applies to: 66-67, 86-87, 102-103, 110-111, 154-155

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/advanced/home-automation.md` around lines 38 - 42, Change the new
workaround section and its subsections from level-5/sentence-case headings to
the prescribed `###`/`####` depth and Title Case; specifically update the
"Workarounds for known integration limitations" heading and each subsection
heading such as "Custom palettes not visible in HA" (and the other subsection
titles referenced) to use `###` or `####` as appropriate and convert their text
to Title Case (e.g., "Custom Palettes Not Visible in HA"); ensure heading
markers and capitalization are consistent with the project's guideline of using
`##` for top-level and `###`/`####` for sub-sections.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR expands the Home Assistant documentation to include practical workarounds (primarily via Home Assistant rest_command and WLED presets) for limitations of the native WLED integration.

Changes:

  • Adds a new “Workarounds for known integration limitations” section under the Home Assistant native integration docs.
  • Documents REST API–based approaches for setting palettes, applying multi-segment changes, and setting secondary/tertiary colors.
  • Recommends using WLED presets as a reliable control mechanism when HA entity support is incomplete.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread docs/advanced/home-automation.md Outdated
Comment on lines +46 to +63
**Workaround:** Use a `rest_command` to set the palette by ID. Custom palettes are numbered starting from ID 71 (after the ~71 built-in palettes). To find the exact ID of your custom palette, query `GET http://<wled-ip>/json/palettes` and check the array index.

```yaml
rest_command:
wled_set_palette:
url: "http://{{ ip }}/json/state"
method: POST
content_type: application/json
payload: '{"seg":[{"id":0,"pal":{{ palette_id }}}]}'
```

Example automation:
```yaml
action: rest_command.wled_set_palette
data:
ip: "192.168.1.100"
palette_id: 71 # first custom palette
```
Comment on lines +48 to +55
```yaml
rest_command:
wled_set_palette:
url: "http://{{ ip }}/json/state"
method: POST
content_type: application/json
payload: '{"seg":[{"id":0,"pal":{{ palette_id }}}]}'
```
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not needed. This isn't documentation for beginners.

Comment thread docs/advanced/home-automation.md
mik-laj added 3 commits May 8, 2026 16:50
Updated workaround for custom palettes to reflect new ID numbering.
Updated section headers for clarity and consistency in the documentation regarding Home Assistant WLED integration workarounds.
Removed section about sound-reactive and 2D matrix effects, including workarounds and preset usage.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants