Dougal Campbell's geek ramblings

WordPress, web development, and world domination.

Halloween Blinky Eyes Project

I’ve managed to complete an electronic Halloween project in time for Halloween. It’s simply called Halloween Blinky Eyes.

I wanted to use LEDs to make glowing “eyes”, which would peer out from the shadows around our house, as if creatures were lurking, watching the trick-or-treaters who approached. But actually wiring up and soldering a bunch LEDs, let alone making them fade in and out and blink, was going to be time consuming, and I don’t really have a dedicated workspace for that right now.

But, being a programmer, I am accustomed to thinking of shortcuts which might take a lot of up-front effort in order to save time in the long run. In this case, I thought of using addressable LED strips, and programming a microcontroller to animate pairs of “eyes” along the strip. This saves me 99% of the wiring effort, and pretty much turns my laptop into my workbench for most of the work.

The first thing I did was to use my Browser LEDStrip simulator to write a JavaScript version of my blinking eyes animation. Once I had that working as I envisioned, I started converting that code to C++, so that I could compile it for my Particle Core or Photon microcontroller boards. Since it’s been many years since I last wrote C code, and I’ve never really written C++ code, this took a little trial-and-error and a lot of Googling. But eventually, I got the code running on a Core, looking pretty much exactly like I had originally imagined.

About Dougal Campbell

Dougal is a web developer, and a "Developer Emeritus" for the WordPress platform. When he's not coding PHP, Perl, CSS, JavaScript, or whatnot, he spends time with his wife, three children, a dog, and a cat in their Atlanta area home.
This entry was posted in Personal and tagged , , , , , , , , , , . Bookmark the permalink.

One Response to Halloween Blinky Eyes Project

  1. Pingback: Blinky Eyes on Hackaday - Dougal Campbell

Leave a Reply

%d bloggers like this: