Transform your home's ambiance with MagicLight, the intelligent lighting system that automatically adjusts your lights throughout the day to match natural sunlight patterns.
- Smart Switch Automation - Provided blueprint sets up Hue Dimmer Switch functionality in minutes
- Visual Light Designer - Interactive web interface to perfect your lighting curves
- Magic Mode - Automatically updates lights every minute to follow curve
⚠️ IMPORTANT: Install the MagicLight Home Assistant add-on and then restart Home Assistant. The add-on includes the adaptive lighting engine, Light Designer, services, and blueprints—no separate integration required.
- Click the button above to add the MagicLight repository to your Home Assistant
- Navigate to Settings → Add-ons → Add-on Store
- Find "MagicLight" and click Install
- Start the add-on and check the logs
- Restart from Settings → System → Restart (or use the power menu)
- Wait for Home Assistant to come back online; MagicLight services will be ready
- Install the add-on and restart following the steps above
- Create an automation from the automatically-installed blueprint
- Press your configured switch - lights in that area will automatically adjust
- Enjoy perfect lighting throughout the day!
The blueprint provides smart button mappings:
- ON button: Smart toggle (turns lights on with MagicLight or off)
- OFF button: Reset to current time and enable MagicLight
- UP/DOWN buttons: Step brightness along the adaptive curve
MagicLight registers a set of service primitives under the magiclight
domain. These are the same calls the add-on and blueprints use, so you can trigger them from automations, scripts, dashboards, or the Developer Tools. Every service accepts an area_id
field that can be a single area or a list for grouped control.
magiclight.step_up
– Moves the area forward along the MagicLight curve, brightening and cooling the lights by advancing the stored TimeLocation offset.magiclight.step_down
– Moves backward along the curve, dimming and warming the lights by reducing the TimeLocation offset.magiclight.dim_up
– Raises brightness while keeping the current color temperature; in MagicLight mode it adjusts the brightness offset, otherwise it issues a standard Home Assistant brightness step.magiclight.dim_down
– Lowers brightness without touching color temperature, following the same MagicLight-aware logic asdim_up
.magiclight.reset
– Clears any offsets, re-enables MagicLight, and reapplies the lighting that matches the current time.magiclight.magiclight_on
– Enables MagicLight for the area and turns lights on with the adaptive values for the active curve position.magiclight.magiclight_off
– Disables MagicLight but leaves the lights exactly as they are, saving the current TimeLocation for later.magiclight.magiclight_toggle
– Smart toggle: if any lights in the target areas are on it turns everything off and disables MagicLight; otherwise it turns them on with MagicLight active.
MagicLight is released under the GNU General Public License v3.0. See LICENSE for details.
Need Help? Join our Discord community, open an issue, or check our documentation.
Love MagicLight? Give us a ⭐ on GitHub!