feat(iaqua): add ICL (IntellliCenter Light) zone control support#114
Open
agrieco wants to merge 3 commits intoflz:masterfrom
Open
feat(iaqua): add ICL (IntellliCenter Light) zone control support#114agrieco wants to merge 3 commits intoflz:masterfrom
agrieco wants to merge 3 commits intoflz:masterfrom
Conversation
Add support for controlling IntellliCenter Light (ICL) zones with: - New IaquaIclLight device class with full lighting control - Turn zones on/off with icl_zone_on_off() - Set preset colors (17 effects including Alpine White, Caribbean Blue, etc.) - Set custom RGB+W colors with set_rgb() - Adjust brightness (0-100%) with set_brightness() - Automatic ICL detection via is_icl_present flag in home response - Fetches ICL zone info during system update() when ICL is present Implementation: - Added ICL command constants (get_icl_info, onoff_iclzone, set_iclzone_color, set_iclzone_dim, define_iclzone_customcolor) - IaquaIclLight extends AqualinkLight with ICL-specific properties - System methods for ICL operations with response parsing - 40 new tests covering all ICL functionality - Updated README with ICL usage examples Tested against real iAqualink API with zone-based light fixtures. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Fix is_icl_present check to accept both "1" and "present" values - Parse icl_info_list directly from devices_screen response - ICL zone data is already included in get_devices response Tested against real iAqualink API with 4 ICL zones. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The get_icl_info API endpoint was causing timeouts (~5 seconds) during system updates. This call was redundant because the ICL zone data (icl_info_list) is already included in the devices_screen response and parsed in _parse_devices_response(). Removing this extra API call eliminates the timeout warnings: "Failed to refresh system ... state:" Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
IaquaIclLightdevice class for IntellliCenter Light zone controlis_icl_presentflag during system updateicl_zone_on_off(),icl_set_color(),icl_set_brightness(),icl_set_custom_color()Test plan
ruff check)mypy src/)🤖 Generated with Claude Code