Connected lighting in some form or another is one of the the most common components in a home automation setup. Such capabilities range from simple on/off control to brightness settings and ultimately to RGB color control. In the case of the latter, the market has been dominated by the Zigbee-based Phillips HUE platform. Thanks to a well-maintained open-API and a broad developer community, support is common across most smart phones, wearables and IOT web services. Unfortunately, at more than $200 for a "starter kit" HUE bulbs cost about the same as a brand new smart phone. That may work fine for a small niche market of gadgetry fans with a disposable income, but if the advantages of smart lighting are ever really going to have an impact, it has to have a mainstream appeal. This means the price of a "smart light bulb" should be priced closer to the cost of a real light bulb than to a smart phone!
Even if we leave the price point aside, mainstream adoption of smart lighting shares another major obstacle other products meant for the "connected home" in the form of compatibility.
There are simply too many choices in the IOT marketplace to expect consumers to settle on a single platform to the exclusion of all others.
Luckily, alternatives are beginning to emerge! This project is intended to be a use-case for the creation of a smart lighting system based on multiple protocols that is controlled by a unified network interface.
The first component is a low-cost multicolored smart lighting alternative known variously as "MiLight", "EasyBulb", "LimitlessLED" and many others. The bulbs are distributed under different brand names but are basically the same product. The bulbs can be either RGB or "Dual White" and are controlled via a wireless bridge device through which a maximum of 4 groups can be added. Instead of the Zigbee protocol used by HUE, MiLight is based on a standard 2.4ghs RF signal.
The biggest advantage it has over HUE is cost... A "starter kit" consisting of a wifi bridge and four RGB bulbs can generally be found for $30, compared to over $200 with the Hue!
There are a number of drawbacks however. The wireless protocol used by the bridge is far less capable than that of the HUE. Furthermore, as a generic product, there really isn't anything you could consider a well-maintained open API. There is however, a decent resource provided by one of the vendors at http://www.limitlessled.com/dev/. As a result, it is much more difficult to find apps that support these bulbs in anything close to the volume enjoyed by HUE users...
Nevertheless, the cost difference is more than enough to convince home hackers like myself and more and more open source home automation services are adding support.
The other protocol I'll be using is a commercial product called the "WINK Hub". The Wink hub raised eyebrows when it was first released due to its $50 price tag and advertised support for multiple platforms incl. Zigbee, 2.4Ghs RF, ZWave, WiFi, BLE etc... It includes official support for new commercial bulbs by vendors like General Electric who sell "wink friendly" smart lights for around $15 each. It does NOT as of the present support MiLight bulbs, though it should in theory be capable if the platform was opened up to a greater degree.
For the time being however, a third party will be necessary if I'm going to configure my home lighting system to function seamlessly. As a use-case, I will be trying to control 3 white bulbs commercial available as GELink via the Wink Hub, together with 6 RGB and 1 white MiLight bulbs. There are various open source home automation platforms that support MiLight but only a few with support for both MiLight and Wink. I've tested the Java-based OpenHAB and Python-based Home Assistant. Much depends on personal preference, but for myself, OpenHAB was WAY too resource-intensive for my liking while Python is just about perfect for my needs. So I went with Home Assistant.
I set up my Home Assistant on a Raspberry Pi using their simple setup instructions on which all configurations are made by editing the configuration.yaml"="" rel="nofollow" target="_blank">configuration.yaml" rel="nofollow" target="_blank">configuration.yaml document.
Setup is accomplished by adding any one of the components listed on their support page. Instructions for adding Wink Lights and MiLight/LimitlessLED bulbs can be found by searching for each component. In order to control the wink lights, one must first activate their API token, before adding it to configuration.yaml. The LimitlessLED component on the other hand is configured directly following the example provided in the instructions. However, as of this writing, the instructions doesn't explain how to add bulbs if they are of the Dual White type. I will attach an excerpt of my own configuration.yaml to demonstrate how it works.
Once the components have all been added, then various automations and triggers can be set up to control all devices regardless of platform. It should be possible for example, to set up a trigger via IFTTT that controls all light bulbs regardless if they are Phillips Hue, MiLight, GELink or Cree!
I'm happy to report that this lighting system has been such a success that it has expanded considerably! The www.Home-Assistant.io platform is expanding rapidly and has been adding support for new components and automations every day. Most importantly for the subject matter in this article, they've been expanding support for LimitlessLED/MiLight to a degree which easily sets them apart in a crowded field of open source home automation hubs. As of version 0.10 they support features like programmable transitions in MiLight which is not nearly as easy to accomplish with a network based on UDP than it is with other smart lighting protocols.
Total Lighting Automation with WINK
Even though the price point offered by MiLight makes it more practical to replace the standard bulbs in a room or even a full floor of a household, it hardly seems necessary that every single light in the house need be multicolored. In most cases, simple on/off or brightness controls are all that is needed for most areas of the house. The WINK hub really comes into its own in this regard as it not only supports various standard wifi bulbs like recent models by Cree and GELink, but also switches and dimmers. That means that instead of replacing every bulb in the house with a "smart bulb" on a 1 to 1 basis, one needs only to replace the light switch, and any standard lights it controls will become "smart" by default! Using this approach to add a wireless wall-switch, a wireless dimmer, a wireless in-line plug and two individually controlled bulbs, I was able to automate my entire house! One lesson I did learn however... Not all LEDs are dimmable. So if you install a dimmer switch and the lights do nothing but flicker, its likely you have older LEDs which do not support dimmers. Most standard LEDs on the market at present however seem to support dimmers, but its well worth checking before you buy any new ones.
Adding LIFX as Indicator Bulb
As impressive as the new Home Assistant support has been, the hardware limitations of the UDP+RF protocol still make it difficult for MiLight to sport the kinds of slick animation effects and seamless integrations one might expect from its pricier competitors. If one wanted to, for example, create an IFTTT recipe that triggers MiLights whenever a web notification is received, configuration would still be much more complicated then with the plug and play apps for LIFX or Phillips HUE. On the other hand, one doesn't necessarily need to have every bulb in the house connected to the web for this purpose and I imagine most people would find outfitting every room with commercial smart lights to be cost prohibitive anyway. At $15 per RGBW bulb and up to four zones controllable from one $20 hub, MiLights do on the other hand, make it more practical to add syncronized colored lighting to a full floor of a house. So why not use one of the higher-end models as a standalone "indicator light" that can be set up with all manner of web integrations, while MiLights can complement it as the main lighting source around the household? Doing so with Phillips HUE would require adding another hub alongside the MiLight and Wink hubs, and would cost at least $90 just to run a single bulb ($30 for Hub and $60 per bulb...). LIFX bulbs on the other hand, don't require a hub. Which makes their $50 price tag somewhat more palatable. As of the time of writing a LIFX component for Home Assistant is in the works and is expected to be released very soon. Even without direct support in Home Assistant, I've found it already complements my existing setup very well thanks to excellent LIFX support in IFTTT which also integrates to Home-Assistant through the Maker Channel.
Updated Network Diagram-
I have updated my network diagram to reflect the new additions. The resources page will also be updated as new automations are written that fully accommodate the new features.