🌐 Available in: 🇬🇧 English | 🇷🇺 Русский
- Wi-Fi device discovery (UDP) and control over TCP (Magic Home protocol, port 5577) with automatic reconnection
- HSV color wheel, brightness, smooth transitions, and editable palettes of two to four colors
- Ambilight screen capture with monitor, region, and capture-backend selection (WGC, DXGI, GDI with automatic switching)
- 11 effects and 13 capture regions including grids and a custom rectangle
- Two capture editors:
- Simple — ready-made regions and global sliders
- Advanced — your own layers, drawn with rectangle, move and hand tools
- Per-layer adjustments: share (weight), brightness, saturation, smoothing, and RGB/R/G/B curves with a histogram
- Layer cut-outs (subtract areas) with their own masks
- Undo/redo history of the layer stack
- The resulting colour is shown live: the colour of the selected layer on the left, the combined colour on the right
- System tray, quick-settings popup, and diagnostic log window
- Crash log with a symbolised call stack (
crash.log) - Persistent settings, two languages, and optional Windows startup
The Advanced tab lets you build the capture area out of layers. Each layer has its own areas, optional cut-outs, and adjustments. Two colours are shown at the bottom of the panel:
- left — the colour of the selected layer on its own;
- right — the colour the strip will actually receive, with all enabled layers mixed by their share.
Curves are applied per channel after brightness and saturation, and before the layers are mixed, the same way Photoshop applies its adjustment layers. Curve points are stored with the layer, so they survive a restart.
| Effect | Description |
|---|---|
| Static | Solid color — Color 1 of the palette |
| Breath | Smooth fade-out and fade-in of Color 1 |
| Rainbow (HSV) | Full HSV cycle (the palette is not used) |
| Gradient | Smooth transition between Color 1 and Color 2 of the palette |
| Strobe | Rapid flashes of Color 1 (on/off) |
| Pulse | Decaying pulse of Color 1 |
| Wave | Wave across the whole palette (ease-in-out) |
| Fire | Random flashes of palette colors, imitating fire |
| Random flashes | Random palette color, changing about 4 times per second |
| Chase | Fast circular cycling of palette colors |
| Color cycle | Smooth cyclic transition through all palette colors |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
- Open the Releases page.
- Download the latest version — the
Magic-Home-Controller-Setup-<version>-x64.exeinstaller. - Run the installer and accept the Windows UAC prompt.
- Launch Magic Home Controller from the Start menu or the desktop shortcut.
The installer (~38 MB) includes the Qt libraries and MSVC Runtime, so nothing needs to be installed separately. The default directory is C:\Program Files\Magic Home Controller.
Make sure the controller and your computer are on the same network.
You can enter the controller IP manually on the Settings tab, or find it automatically:
- Open the Settings tab.
- Click Find Magic Home devices.
- Select the controller from the list and click Use selected (the IP will be filled in).
The application automatically reconnects after a temporary connection loss and restores the last color/pattern.
Required tools for Windows (MSVC x64, C++17):
- Visual Studio — workload «Desktop development with C++»
- CMake
- Ninja
- Qt 6.8 — Widgets and Network modules
- Inno Setup 6 — only for building the installer
- C++/WinRT headers (in the
vendor/winrtdirectory)
Build the portable Release package:
build-release.cmdThe result is written to dist-cpp\.
Build the Windows installer:
build-installer.cmd 1.2The installer is written to installer-output\Magic-Home-Controller-Setup-<version>-x64.exe.
Settings and logs are stored in %APPDATA%\Magic Home Controller:
config.ini— settingslast.log— diagnostic logcrash.log— crash reports with a symbolised call stack (written only when the application crashes)
These are per-user and not stored in the installation directory.
MIT License. See LICENSE.







