Be able to control MiLight bulbs with Amazon Alexa via the MiLight Wifi Bridge.
- At least one MiLight Bulb: http://www.limitlessled.com/shop/rgbw-color-led-light-bulb/
- A MiLight Wifi Bridge: http://www.limitlessled.com/shop/wifi-bridge-v6/
- A Raspberry Pi or other device capable of running Java 8
Follow these steps first, as you cannot proceed without completing them.
- Set up Your Alexa device
- Set up Home Automation Bridge in accordance with HA Bridge Docs.
- You must have Java 8 installed to run the HAB.
- I use a C.H.I.P. for my build - here's how to install Java on C.H.I.P.
- Consider setting a STATIC IP for this device in your router, as you'll want to manage it later.
- Install the official MiLight mobile app on your phone.
NOTE: The Wifi brigde is poorly designed, finicky, and generally frustrating to use. This turotial is a result of hours of tinkering. You've been warned.
Don't waste your time with running setup through the mobile app (at least with v5 of the WiFi bridge, v6 may be different.)
- perform a reset of the Bridge - use a paper clip to hold the reset button in until the lights flash.
- Use a laptop/phone to connect to the wifi network titled milight_XXXXX
- Navigate to the web portal in a browser: http://10.10.100.254
- The username is "admin" and the password is "admin"
- In the "Work Mode" tab, put the bridge into STA/AP Dual mode. STA means the bridge will function as a network client.
- Save and restart the bridge.
At this point, you can take a break. The bridge takes 3-5 minutes to restart, and you shouldn't try to talk to it until a full restart has happened. If you have trouble connecting to the milight_XXXXX network, give the device more time to restart or move it closer to your device.
- Go back to your browser and log in again.
- In
STA settings
, scan for networks and select your network from the dropdown list. - Enter your security details. More than likely, this will be WPA2PSK with AES encryption. Obtain an IP automatically.
- Restart again.
- Log into the web portal again. take note of the STA IP on the info tab.
- Go to the
Other Settings
tab and make sure the UDP server is listening on it's new STA IP. If it still says10.10.10.XXX
, you'll need to change it to the IP your router assigned.
- Restart again. Bash head against wall.
Hopefully your bridge is now connected your home network. You can log into your router's web console and check out what devices are connected. The device's hostname is "linux". You should configure your router to give the bridge a static IP so that it's IP does not change when you power cycle the bridge.
- Install the Milight app
- Begin at step 14 of this tutorial
NOTE in my experience, to sync the bulb, you must power it on, then repeatedly tap the "channel on" button for the correct bulb interface. This is one of the buttons circled in RED on step 16 of the above tutorial.
- Congrats! Your bulbs are working. Wasn't that MUCH harder than it should have been?
This is actually the easy part. Once you are able to control the lights over WiFi using the MiLight app, you should be able to control them with any device that can speak the LimitlessLED UDP Protocol.
NOTE I've had pretty good success with this python project.
My setup involves v5 of the LimitlessLED protocol, found on their terrible developer resource page - search for LimitlessLED v5.0 OpenSource API
.
IMPORTANT - I'm using RGBW Bulbs like these. If you are using White-only bulbs, the commands are different. See my protocol analysis.
- Visit the HAB web portal.
- Click
Manual Add
Field | Value |
---|---|
Name | Lights |
Target | Encapsulated |
Device Type | UDP |
Map Type | --Please Select-- |
On URL | [{"item":"udp://192.168.1.255:8899/0x420055"}] |
Dim URL | Haven't gotten this to work yet.. |
Off URL | [{"item":"udp://192.168.1.130:8899/0x410055"}] |
- Save the device
- Say 'Alexa, discover devices' - she should see one new device
- Say 'Alexa, turn on the lights'
Make sure you can control the lights with your mobile app.
Make sure the host running HAB has a network path to Alexa - try pinging her.
See if you can use this python project to control your lights. If not, you may have configured something incorrectly.