Hacker News new | past | comments | ask | show | jobs | submit login
How to add a notifier LED to your computer (justblair.co.uk)
47 points by iuguy on Dec 5, 2010 | hide | past | web | favorite | 30 comments

For a long time I've wanted one of these, to serve as an "interruptility" indicator to others: green = "I'm looking at the internet, please interrupt me so I can possibly do something more useful", amber = "I'm working but okay", red = "only interrupt me if it's truly urgent". It could be programmable, so that (for example) it could automatically go to green when Firefox had HN as its frontmost window.

Imagine a lab or office in which everyone used an LED in this way. It might be nice.

When I was with Happy Camper Studios we used to stick colored index cards up on our desk backboards or atop a monitor to indicate willingness to be interrupted. Red meant leave me alone; green meant open for interruption; yellow meant you can poke me if it's work-related.

We looked around for lights and such (I wanted a traffic light) but they were too pricey so we went low-tech.

I bought one of these: http://www.brighthub.com/electronics/gizmos-gadgets/articles... and wrote a plugin for CherryTomato: http://www.beatpoints.com/cherrytomato - so now when I am in pomodoro, it goes red, indicating to my colleagues not to bother me. Works pretty well, though the Skype/messenger status seems more effective.

We use closet lights for this at my current startup, but I really like the idea of it automatically updating based on frontmost task. It'd be great if there were a project that provided the software side of this for at least Ubuntu, Windows, and Mac OS.

Sort of an "On Air" sign for hackers.

'Wired in'

Maybe 'focused in' or 'zoned in'.

The whole area of ambient displays is interesting. So much information is on screens now, but for certain situations an ambient display would be a lot more convenient for conveying information.

See for example the ambient orb which can change colour according to what the Dow is doing, to name one example:


Or the nabaztag, the wifi rabbit, who raises his ears to different triggers, such as, I don't know, a broken link on your website or a customer support email landing in your inbox. Pretty cool.


Nifty, but my laptop already has LEDs that I don't use, namely numlock and scroll lock. There are many Linux utilities that can blink these and turn these on.

In the case of numlock on a laptop you need to be smarter than just toggling the light; many laptops overlay a numpad over the keys, so with numlock enabled hitting 'I' will send 5 instead.

You can toggle the lights without changing the actual state of the keyboard or driver. They're not hardwired together.

That's interesting - I tried to do this some years ago on Windows but found no way to toggle the lights independently of the actual state.

Turns out you can, though:


Back in the day I had some kind of plugin that toggled the caps and scroll lights based on ethernet Rx and Tx traffic. Nifty hack, but got distracting real fast.

Although I applaud the engineering effort, I would never make this myself because it will proof a huge distraction.

I would become a slave of my email.

The key to notifications is filtering. Don't make it light up for every email, only make it light up when an email that needs immediate action arrives.

I'm going to set one of these up to monitor my work email. If someone sends a message to me (which is a small minority of messages I receive), it will light up. Then when I'm in bed and feel like hitting the snooze button, I can glance at the LED and determine whether or not I need to get up and check my email or not.


Do you really need the microcontroller to do that? He doesn't say exactly what the ATtiny does, but if it's just setting one of three LEDs based on two pins, it seems you could accomplish the same thing with a couple of logic gates? (But maybe these days it's easier to get a microcontroller than to wire up a few gates?)

Parallel printer port, which was often used for this kind of hacks, disappeared from PC several years ago. A USB device is usually the best for general purpose I/O.

And I don't know how to build a USB device 'with a couple of logic gates'.

USB also provides enough power to light a bright LED. There was no power on a printer port, though people would steal power by setting a lot of pins high and hoping for the best.

I think I'd just spend the $2.40 and use an AT90USB82 instead. It has USB built in so you don't have to wrestle with software USB. I've done software USB on an Atmel and getting 98% of the way there is easy, but I never really trusted the end result.

On the down side, it doesn't come in a DIP package, but you could use any little breakout carrier card to get to the pins. On the plus side you'd have a couple dozen pins to play with.

Is it not possible to simply steer the USB pins high or low just like with a serial port?

USB is a complex protocol, encoded using just two wires (the other two are power - +5V and GND). There are no pins you can steer high or low.

See http://www.beyondlogic.org/usbnutshell/usb1.shtml for more info.


The controllers on both ends expect a fairly complex protocol (one which you have virtually zero control over - in software).

Some hubs will allow you to selectively turn power on their ports (most just say they do). You can in theory stick leds there.

Interesting idea, but I believe it's very hard to trick the USB host controller into flipping pins as you intend.

I'd like to have some light that indicates the status of our continuous build. However, I can only find solutions that require too much low-level hacking (like the original article, very cool but it'd take me ages), or are two expensive, or not customizable enough (Ambient Orb).

Do you guys know of other solutions?

That was a lot cooler than I expected. I did a software-only one on my mac: http://dustin.github.com/2009/02/09/caps-lock.html

Very neat. It would be interesting to know if there is a only-software way to use the available lights on every laptop (battery, wifi indicators) as email notifiers. Do you think that this would be possible?

Depending on your laptop model, there are a few LEDs that can be controlled, at least under Linux.

IBM and ASUS seem to use stuff in /proc/acpi/asus|ibm ...

The SD-Card interface in my Laptop exports a LED in /sys/class/led... (but it seems not to be connected to anything).

So there is often one or the other thing installed, but how to control them differs.

It should be doable, certainly for things like caps lock etc. Something like this (http://www.codeproject.com/KB/system/XPSLightFX.aspx) might be up your street.

It would also be cute to have the terminal bell hooked up to an actual bell.

rather than blinking, use morse code and output the message.

Whoever modded you down has no sense of telecommunications history or humor.

The extra experience all those around you will have learning morse code to figure out what it is that you're telling them alone is worth an upvote ;)

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact