Hacking the Mi-Light 6W E27 bulb (Part 1)


Another project.

Today I am starting another project, this time something that might actually be aimed at a broader audience than usual, as this will (hopefully) solve a problem others might have too, and if I do this properly, solve it easily and fairly cheap too.

The problem.

For a while I had some different Mi-Light bulbs around the house, but I stopped using them pretty fast, no because they were not giving enough light, but because they kept turning on when they should not.

In my living room, I got a lamp with three bulbs in, all paired to channel 1 on the remote. In the evening I could then turn them off and go to bed, and next morning one or two of the bulbs would have turned them self on again, at either very dim red or very dim white. After a week I found what caused it, and it is something a bit concerning.

The remote for the bulbs says it is 2.4 GHz RF, and some sensors for my house alarm system runs on 433 Mhz, it should not be a problem, but apparently the Mi-Light bulbs pick up some of those transmissions, and react to them. In my house I also experiment with some cheap 433 Mhz wireless swithces, where I made an ethernet gateway to control them, with an arduino. Transmissions from this system also make the Mi-Light bulbs turn on, but only on dim white.

This is not something I like to work with, so I will now try to have a look at how the bulbs are made, and hopefully be able to make some changes to them so I can make my own way of controlling them.

Let’s have a look.

The first thing that strikes me, is that this is a very nice design for what we are trying to do here. Removing the two screws, reveals the power supply being mounted lower inside the bulb just above the socket which screws into the lamp socket (sorry, I didn’t get a picture of that). And it looks like we can just remove that green PCB, and replace it with our own, so that is what I am going to try to do.


Let’s get the PCB off, and see what is what on the connectors.

That’s bright!


And for later reference, here is how the controller is connected to the LED PCB.


I got a bunch of the ESP8266-12 modules laying around, so I might try to see if I can get away with using some of those. The antenna will be able to extend out of the marked area like this, because the PCB between the LED PCB and the ESP8266 will lift it up so it will clear the resistors underneath. But we will see if I can make it all fit or not.


Another thing I would like to change, is how the two PCB’s are secured to each other, because instead of glue, I would like to use two a bit longer screws, and then use those to hold it all together.

Let’s sleep on this…

So for now I think I got most of what I need, the next thing is to draw the outer dimension of PCB which will hold the ESP8266, so we can get a feel of how much, or rather how little space there is available.

Another thing to also consider, is how should it be controlled? At first I was considering just using ESPEasy, but maybe it would be better to make something myself, to remove a lot of code, since not much is needed to control a few PWM outputs. Maybe I should just make something very simple, and since all this also will be open source, hopefully someone smarter than me would help making the code a lot smarter. 🙂

Leave a Reply