Close

A tale of two radios

A project log for Open Source Light and Motion Controller

The goal of this project is to develop an open-source firmware and controller for kinetic sculptures, mobiles and moving lamps.

marciotmarciot 05/04/2019 at 02:590 Comments

So, I was able to find Vincent's github. It was hiding in plain sight. Although his objectives were most similar to mine, his project demonstrates one of the difficulties in dealing with these Milight bulbs: there are actually several 2.4 GHz radio chips out there that can be used for interfacing these bulbs. The bulbs and remotes themselves seem to have a radio called the PL1167, but radio I bought for this project is something called the nRF24L01+. Browsing the datasheets, these radios appear to be completely different beasts, but apparently some really smart fellow managed to coax them into speaking the same language. As clever as it is, this mimicry does make understanding the how things work a bit harder.

Anyhow, since Vincent's code targeted the PL1167, and I had this other radio, it wasn't able to run his code directly, but looking through his code, I was able to determine why I had originally been unsuccessful with OpenMili. There are actually four different models of MiLight bulbs and four different remotes. I offer a picture of three of those:

OpenMili only supports the RGBW model and I had been doing my testing with the RGB remote. Luckily, as I own all three, switching to the RGBW wasn't a problem. I am now able to get some captures going:

Not bad! (a big hint: If you are using OpenMili, "xr" starts a capture). I guess this is a start, but it does show that the original OpenMili  repo isn't complete and does not support all the styles of remotes. It seems like Chris Mullins WiFi Gateway project may have significantly expanded on the original OpenMili work, so I'll have to explore that next and see whether I can pick out the bits of code I need to get the other remotes to work.

Or, I could simply proceed using just the RGBW remote for now. We shall see...

Discussions