| Developer: | VTMikel's Plugins Like this plugin? Show your appreciation! |
| Category: | Lighting |
| Github: | Github Repo |
| Assistance: | Get help! Check the online documentation |
| Plugin ID: | com.vtmikel.autolights |
| Latest release: | v2026.1.0 released on March 27, 2026 |
| Release downloaded: | 0 times |
| Requires: | Indigo v2024.2.0 or higher |
| (Check the Releases tab below for older releases that may have different requirements) | |
| Download latest release |
Auto Lights is a lighting automation plugin for the Indigo Home Automation system.
Auto Lights is an opinionated lighting behavior template for your home. It enables you to set up Lighting Zones ( this is intentionally vague, you can define a Zone to be whatever you want), and configure behavior for each Zone that standardizes the way Indigo controls lights in your home.
I originally built Auto Lights for my own use in a sensor-rich home, where nearly every room is managed by Auto Lights. However, Auto Lights can be used in less complex homes as well. The idea is to save you from configuring many many Indigo Triggers and Variables to achieve a sophisticated level of automatic light control functionality to do things like:
Example output:

Indigo Version Auto Lights is tested with the latest Indigo. Older versions may or may not be fully compatible.
API Key / Reflector To use the Auto Lights web config editor, you’ll need to be able to access Indigo via API key. There's two options to do this. See The Web Config Editor for instructions and details.
Lights to Control & Presence Devices Almost any Indigo-compatible lighting device, plus some way of reporting presence to determine if a zone is occupied, such as a motion sensor or virtual presence device. Luminance sensors are optional, and give you the brightness-based dimming logic.
Auto Lights uses a web interface to build and configure your Zones. This path was chosen because the interface needed is too advanced for the Indigo native ConfigUI. See here for screenshots.
The Web Config is run as a separate web server on your Indigo Server. Because of this, it must interact with your Indigo via API. There are two options to enable this:
Enable remote access via Indigo reflector with API (recommended): Be sure your server has been started up with Remote access and refelctor turned on. Get a API key for Auto Lights by going here.
Enable local secrets (advanced): Add a API key for Auto Lights via the Local Secrets method in the Indigo Documentation
There is no authorization on the Web Config interface itself. If this concerns you, there are two options available:
See documentation here
Access these settings via Plugins > Auto Lights > Configure… in Indigo:
Reflector / Indigo API URL The base URL used by Auto Lights for Indigo API calls.
API Key Needed to authenticate API calls.
Disable Web Server Toggle this to fully turn off the built-in config web server. See The Web Config Editor for more details.
Web Config Bind IP
127.0.0.1 (only accessible locally) or 0.0.0.0 (accessible by devices on your local network).
Web Config Bind Port
Default is 9000. Change it if something else is using that port.
Logging Level - 5 (Extra Debugging) - 10 (Debug) - 20 (Info) - 30 (Warning) - 40 (Error) - 50 (Critical)
Choose a level based on how much detail you need in your Indigo logs.
Auto Lights Actions:
Reset All Zone Locks Clears lock timers on all Zones, letting Auto Lights resume control immediately.
Reset Specific Zone Lock Enables you to unlock just one Zone if you had a manual override but now want automation to resume.
Additionally, available under Plugins > Auto Lights:
```
| Released on: | March 27, 2026 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
Fixed deadlock causing zones to get permanently stuck in "checked out" state (#2)
The _writer closure called process_zone() while holding _write_lock (a non-reentrant threading.Lock). When re-evaluation found brightness changes, save_brightness_changes() tried to re-acquire the same lock, causing a deadlock. Affected zones would stop responding to motion indefinitely until plugin restart.
process_zone() call outside the _write_lock context in the writer thread completion handlerZones with unavailable Home Assistant bridged devices (21-second write timeouts) had a much larger window for motion events during writes, making the deadlock trigger more likely.
| Released on: | March 26, 2026 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 1 times |
| Download this release | |
fix(zone): re-evaluate zone after async writes complete
Fixed a race condition where motion-ON events were silently dropped when they occurred during the async write window (5-11 seconds) of a preceding motion-OFF event. The zone's checked_out guard would skip the ON event, and after writes completed, no re-evaluation happened — leaving lights off until the next luminance sensor update (~30 min).
After the final writer thread calls check_in(), the zone now immediately re-evaluates to catch any state changes (e.g. motion turning ON) that occurred during the write window.
| Released on: | Feb. 3, 2026 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
| Released on: | Jan. 17, 2026 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 2 times |
| Download this release | |
| Released on: | Nov. 3, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 2 times |
| Download this release | |
Configuration Backup Page - Fixed "Download Current Config" button not working after IWS migration - Changed download method from GET to POST to match working backup downloads - Removed obsolete GET handler for download_config action
Documentation - Updated README to focus on current architecture instead of "what's new" - Simplified language about IWS integration
Version 2025.2.0 introduced a major architectural change: the web configuration interface was migrated from a standalone Flask server to Indigo's built-in Web Server (IWS). Version 2025.2.1 is the first stable release based on this new architecture.
Simplified Setup - No separate web server configuration needed - eliminates the need to configure bind IP, port, API URL, and API keys - Integrated authentication - uses the same Indigo credentials as your Indigo web interface - Simple access - available through Indigo's standard web server on port 8176
Improved User Experience
- Added menu item under Plugins → Auto Lights → Open Web Configuration for easy access
- Web interface accessible directly at http://localhost:8176/message/com.vtmikel.autolights/web_ui/
- All web configuration functionality remains the same, just simpler to access
Installation: Download the attached Auto Lights.indigoPlugin.zip file and double-click to install in Indigo.
Upgrading from earlier versions: If upgrading from versions prior to 2025.2.0, note that the old web server configuration options (API URL, API Key, Bind IP/Port) are no longer needed or available. Simply access the web interface through Plugins > Auto Lights > Open Web Configuration.
| Released on: | July 26, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
Improved device name logging for dimmer changes
| Released on: | June 21, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
sync_indigo_device to reflect presence status. plugin.py by checking for _agent existence before processing actions, preventing errors. | Released on: | June 14, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
sync_indigo_device Full:
sync_indigo_device methodsync_indigo_device once after lock state changes to update UIdeviceUpdated handlerdeviceStartComm completionAny from typing to fix undefined name error in zone.pydevice_period_map data only on GET to preserve form POST updatesDevicePeriodMapField tests by using FlaskForm instance and prefill caches in client fixturedevice_period_map fieldsFlaskForm to disable i18n lookups outside app context for testsFlaskForm.Meta to fix tests outside app contextlighting_period_ids and add test| Released on: | June 6, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
| Released on: | May 22, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
LightingPeriodMode enum and normalized legacy values at load time. Fixes #4 pytest setup with YAML-driven scenarios; added stubs and workarounds to support headless test runs.| Released on: | May 21, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
| Released on: | May 19, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
| Released on: | May 13, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
| Released on: | May 13, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
| Released on: | May 7, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 0 times |
| Download this release | |
Improvements to Plugin Config UI. Improvements to debug logging
| Released on: | May 3, 2025 |
| Requires: | Indigo v2024.2.0+ |
| Downloaded: | 2 times |
| Download this release | |
Initial release
Indigo Version Auto Lights is tested with the latest Indigo. Older versions may or may not be fully compatible.
API Key / Reflector To use the Auto Lights web config editor, you’ll need to be able to access Indigo via API key. There's two options to do this. See The Web Config Editor for instructions and details.
Lights to Control & Presence Devices Almost any Indigo-compatible lighting device, plus some way of reporting presence to determine if a zone is occupied, such as a motion sensor or virtual presence device. Luminance sensors are optional, and give you the brightness-based dimming logic.