WiZ smart home integration, free and open source

WiZ bulbs, light strips and plugs on the local network: colors, whites, WiZ scenes.
Control your WiZ lights and smart plugs from Gladys, over your local network: bulbs, filament bulbs, light strips, lamps and plugs sold under the WiZ and Philips Smart LED Wi-Fi brands. On and off, brightness, colour, shades of white, and the WiZ scenes (Ocean, Romance, Sunset, Party, Fireplace…), with a dashboard widget, a scene trigger and a scene action. No account and no cloud: Gladys talks to each device directly, like the WiZ app does on your Wi-Fi.
Developed without the hardware: feedback welcome. This integration was built and tested against real answers of WiZ devices recorded by the pywizlight project, and against a simulated device, not against a real bulb. If something does not work as described, please say so on the Gladys forum or in the issues.
What you need
- Gladys Assistant 5.1.0 or later.
- WiZ lights or plugs already set up in the WiZ app, connected to the same network as Gladys.
- In the WiZ app, Settings → Security: Allow local communication turned on (without it, the devices ignore Gladys).
- Nothing else: no WiZ account, no key, no internet access.
Set up
- Install the integration from the Gladys catalog.
- Open its Configuration. Nothing is required; the options are:
- IP addresses of WiZ devices: only for the devices automatic
discovery does not find, separated by commas (for example
192.168.1.50, 192.168.1.51). Your router lists the address of each device; the WiZ app shows it too, in the settings of the device. - Refresh interval: how often each device is read, from 5 to 60 seconds (15 by default). It is how fast Gladys sees a change made from the WiZ app, a remote or a wall switch.
- Language of the device names: English, French, German or Spanish (French by default). The names of a device, of its features and of its WiZ scenes are given when the device is added.
- IP addresses of WiZ devices: only for the devices automatic
discovery does not find, separated by commas (for example
- Open the Discover tab: one device per WiZ light or plug. Click Add, pick a room, save.
- Missing a device? Click Search for WiZ devices in the Configuration screen: the message under the button lists the devices found and the ones that do not answer.
Gladys finds the devices by asking the network "who is a WiZ device?" (a broadcast on UDP port 38899, sent by Gladys itself, which is why the install screen asks for this permission), then talks to each one directly. A device that changes address is found again within 15 minutes, without a new device in Gladys: it is identified by its MAC address.
The Gladys devices
Each light or plug becomes one Gladys device named after its kind and the end of its MAC address, for example WiZ color 06033D, WiZ tunable white 5A067C, WiZ dimmable 2054E3 or WiZ socket 9906B7. Rename it as you like. Only what the model can do is published:
| Feature | What it is | Devices |
|---|---|---|
| Light | On / off | Every light |
| Socket | On / off | Plugs |
| Brightness | 10 to 100 %; 0 turns the light off | Every light |
| Color | The colour of a colour light | Colour bulbs and strips |
| Color temperature | The white, in kelvins, within the range of the model (2200 to 6500 K) | Colour and tunable white lights |
| WiZ scene | The running WiZ scene, or None; choose one to start it | Lights that have scenes |
| Scene speed | Pace of the moving scenes, 10 to 200 % (100 is the normal speed) | Lights that have scenes |
| Power draw | Watts drawn by what is plugged in | Plugs with a power meter |
- A colour light offers the 37 WiZ scenes; a tunable white one the 17 white scenes (Cozy, Wake-up, Bedtime, Warm white, Daylight, Focus, Relax, Candlelight…); a filament bulb the 8 it can run (Night light, Wake-up, Bedtime, Candlelight…). The list follows the language of the configuration.
- Choosing a brightness, a colour, a white or a scene also turns the light on. Choosing None in the scene list does nothing: to leave a scene, pick a colour or a white.
- When a light no longer answers, Gladys shows it off and its badge says it is unreachable: most often its wall switch was turned off.
Dashboard widget
Add the WiZ widget to a dashboard and choose a device in its settings. It shows the brightness (or the power draw of a plug with a meter), whether the device is on, what the light shows (a scene, a white with its temperature, or a colour), and buttons:
- up to three scene buttons, chosen in the widget settings (by default Warm white, Relax and Night light). Only the scenes the light can run are shown; the running one has a tick icon;
- a Turn on / Turn off button, which switches the device whatever the widget showed.
Scenes
Trigger
WiZ device switched outside Gladys: a WiZ light or plug was turned on or off without Gladys. Filters:
- WiZ device: one device, or any;
- Turned: on, off, or both;
- From: WiZ app, remote or schedule (the WiZ app, a WiZ remote, a schedule or a rhythm of the app, a voice assistant), or Wall switch or power cut (the device stopped answering while on, or answers again and lights up, as WiZ lights do when powered).
The variables of the trigger give the new state (on or off) and its
origin (wiz or power). A command sent by Gladys never fires this trigger.
Action
Start a WiZ scene: turns the light on and starts one of its WiZ scenes, chosen in a list, with an optional brightness (10 to 100 %) and speed (10 to 200 %). The action fails if the light cannot run that scene (a party scene on a white bulb, for example). It gives the number and the name of the scene to the next actions.
Scene ideas
- The wall switch as a button: WiZ device switched outside Gladys on the living room bulb, turned on, from Wall switch or power cut → turn on the other lamps of the room, or Start a WiZ scene "Cozy" at 40 %.
- Gentle wake-up: every weekday at 6:45 → Start a WiZ scene "Wake-up" on the bedroom bulb.
- Power cut alert: WiZ device switched outside Gladys on the freezer plug, turned off, from Wall switch or power cut → send a message "The freezer plug no longer answers".
- Cozy evening: at sunset → Start a WiZ scene "Fireplace", brightness 60, speed 80.
Troubleshooting
- No device found automatically: check that the devices and Gladys are on the same network (same Wi-Fi network or VLAN; a guest network or a separate IoT VLAN blocks the discovery). Enter the IP addresses in the configuration: this works across networks as long as Gladys can reach them. Giving the devices a fixed address in your router helps too.
- A device found but never answering: check Allow local communication in the WiZ app (Settings → Security).
- "not answering": the device is off at the wall, unplugged, or lost its Wi-Fi. It comes back by itself as soon as it answers again.
- The colour in Gladys is slightly different from the one chosen in the WiZ app: WiZ mixes coloured and white LEDs; Gladys shows the nearest plain colour.
- The integration logs what it finds and what does not answer: open the integration logs from the Gladys interface.
Limits
- Changes made outside Gladys (WiZ app, remote, wall switch) are seen at the next reading, within the refresh interval. WiZ devices can also send their changes as they happen, but only to an address on your network, which the integration does not have (it runs in its own isolated container): Gladys reads them instead, with one small local request per device per interval (two for a plug with a power meter). No quota, no internet traffic.
- A light switched off at the wall is detected after two readings without answer (30 seconds with the default interval). A Wi-Fi outage looks the same, and so does a device unplugged.
- Ceiling fans with a WiZ light: only the light is handled, not the fan. Dual-head lamps are one light (the balance between the two heads is not available). The Rhythm and the custom modes of the WiZ app are not offered. WiZ motion sensors and remotes are not Gladys devices.
- Developed without a real WiZ device: what could not be checked is listed in the README.
This integration is not affiliated with WiZ, Signify or Philips.
Configuration settings
These are the settings WiZ asks for in its configuration screen in Gladys.
| Setting | Type | Required | Description |
|---|---|---|---|
| Finding your WiZ devices | section | No | WiZ lights and plugs on the same network as Gladys are found automatically: open the Discovery tab. Keep them set up in the WiZ app, with "Allow local communication" turned on. If one is missing, enter its IP address below. |
| IP addresses of WiZ devices | string | No | Optional, separated by commas. Only needed for the devices automatic discovery does not find. |
| Refresh interval | select | No | How often each device is read, to follow the changes made from the WiZ app, a remote or a wall switch. |
| Language of the device names | select | No | Names given to new devices, their features and the WiZ scene list (Light, Brightness, Ocean...). |
How to install WiZ in Gladys
- In Gladys, open Integrations: WiZ appears in the catalog, next to the native integrations, with a community badge.
- Click Install. Gladys pulls the Docker image (
ghcr.io/guim31/gladys-wiz:1.0.1), starts it in a sandbox isolated from the core, and generates the integration's interface (devices, discovery and configuration). - Open the Configuration screen of the integration, fill in the settings, and save.
- You can also install it directly from its repository URL: https://github.com/guim31/gladys-wiz.
WiZ requires Gladys >=5.1.0. The catalog inside Gladys refreshes every hour, so a new version becomes available at most one hour after its release.
Not running Gladys yet? It is free and open source: follow the installation guide to get started.
About external integrations
WiZ is an external integration: a community integration packaged as a Docker container and published on GitHub, that Gladys installs in one click and runs in a sandbox isolated from its core. It is published and maintained by guim31, not by the Gladys core team.
- Browse all external integrations
- Discover the native integrations built into Gladys
- Build and publish your own external integration
- Source code on GitHub — source of this documentation