We built a handheld device with only a few LEDs as a UI and found that people can easily tell solid from blinking and they can count groups of blinks up to maybe 3 or 4. Using blinking frequency did not work out well at all.<p>The WiFi LED was blue and there were lots of coverage problems at the customer sites . We wrote a blues song "The Blinking Blues" about it and performed it at our offsite. One of the lines was something like "I don't know if it's blinking fast or slow."
For kite aerial photography, I've used a really tiny altimeter that only has one LED: <a href="http://wingedshadow.com/howhigh.html" rel="nofollow">http://wingedshadow.com/howhigh.html</a>
Is it still a 1-bit interface if you add time to the mix?<p>Strictly speaking, a 1 bit interface is on or off and nothing else. There is no timing in there, no blinking or anything. It's 1 or 0.<p>If you add time, you suddenly end up with a discrete or even a real function which maps time values to 1 bit. That's however a lot more than 1 bit to encode in total.<p>If you just think about it, if your device changes state precisely every second for 128 seconds, the entire communication between you and your device is 128 bit even though the lamp itself only outputs 1 bit per time. That's not a 1 bit interface anymore.
I've used a hobby brushless motor controller which was configured with a single button and a single blinking LED forming a kind of menu system. It was a fiddly process which required reading the manual carefully and a good memory of what state you were in. Thankfully it's only something which you need to do once in this case.
Laptop 'power' lights convey a couple of different states with a single light. Besides the typical on/off, there's also the 'sleep' fadeup/fadedown sequence.<p>One could also add a few blinking states. Slow blink = charge, fast blink = problem, two quick blinks = alert, etc.