LED and CFL light bulbs are switched on and off at very high speed that humans cannot see and think they are always on. They use electronic oscillators running at different frequencies. Due to imperfections in the electronic components used in these devices, each one of them has its own unique signature of turning on and off. Even the light bulbs of the same type from the same manufacturer are slightly different.
In this project we developed a prototype device that captures and analyzes the light signals from different light bulbs. Once trained with signals from different light bulbs at different indoor locations, our prototype device can predict the source of light. Knowing the source of the light, we can infer current indoor location. For more details please refer to this paper.
The following image shows the signals from 2 CFL light bulbs of the same brand in time and frequency domains.
To capture the light at high frequency, we used a fast photodiode that fed the captured signals to an 8-bits ADC (PicoScope 2000) operating at fs = 106 samples/second. The captured samples are then sent to a Raspberry Pi via a USB connection. Each training example contains 100,000 samples taken for a duration of 100ms.