Blink An LED On The Internet Of Things

Blinking an LED is generally considered the hardware equivalent of the classic “Hello World” project. It’s a quick and simple test to show that you’ve got the basics worked out, and a launching point for bigger and better things. So why should it be any different in this glorious new Internet of Things era?

The “WiFi HDD LED” created by [Limbo] is essentially just that, a status LED that can be triggered remotely thanks to the WiFi capability of the ever-popular ESP8266. Don’t think there’s much use for a wireless LED that blinks when your computer’s hard drive is thrashing around? Maybe not, but it’s definitely worth checking out if you’re looking for a good way to get your feet wet in the world of ESP hacking.

On the hardware side, this is exactly what you’d expect: an LED hanging off the digital pin of an ESP8266 module. If you go with the bare ESP-01 like [Limbo], things are somewhat more complex due to the need for a voltage regulator, but if you’re using one of the more common ESP development boards then there’s nothing else you need to add. Really, as a proof of concept you could even use the built-in LED on those boards.

As you might imagine, this project is more about the software than the hardware. The code on both sides of the equation has been released as open source for your hacking pleasure, and is more capable than you’d probably expect. The LED is actually an extension of a system activity monitor that [Limbo] had previously developed and includes a binding function to make sure you’re talking to the right blinking ESP. It’s probably overkill for many purposes, but it’s a good example of how to do more robust UDP connections than we’re used to seeing.

This project is one of many that prove there’s more than one way to accomplish a particular goal, and that there’s something to be learned from even the most eccentric of hacks.

8 thoughts on “Blink An LED On The Internet Of Things

  1. Hard drive LEDs… Those are a blast from the past. I remember seriously considering setting up a 555 timer based watching to reset a flaky old DOS machine (it ran a dial-up BBS back in the day) and using the HDD light to clear the watchdog since R.A. hit the disk to load each menu it transmitted and you could give each menu an auto-reload timeout). We ultimately did the more sensible thing and replaced the box entirely upgrading from an 8088 to an 80386 in one fell swoop.

    Seriously, though, the meaning of a hard drive LED is sort of fuzzy these days with flash drives doing block erases in the background, etc. so tapping in at the OS level to monitor disk I/O at that level makes as much sense as anything.

  2. I still mourn the lack of HDD LEDs. It’s so much harder to judge when a system has really crashed, versus the interface just hung while it’s actually working on something in the background, without that little bit of additional info.

    As drenehtsral said, things are sort of fuzzy now, but I blame it more on background tasks, multiple layers of ludicrously huge caches, and so on. I don’t think SSD background erase/reorg cycles would show up since that data doesn’t go across the host interface, and really the HDD activity LED is an HDD interface activity LED.

    I guess this cuts to the core of who I am — a DOS kid who’s most comfortable being the sole user on a machine. I don’t like being unable to tell whether I’m using local or remote resources, or being just one user among many and having to trust some vague scaffolding of privilege isolation to keep the others from my data. I expect that every task touching the disk is one that I control, and thus the LED gives me some meaningful status about what *my* machine is doing.

Leave a Reply to AlainCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.