Halloween LED Headband




Introduction: Halloween LED Headband

Check out this cool, animated, LED headband, just in time for Halloween! You can make it light in any color, not just the orange we have here. But we thought it had a nice Halloween look to it. It'll give your costume some extra flair, and also make you very visible at night.

Difficulty here is moderate - the build is pretty quick but some of the soldering may be more than a youngster or first time solderer wants to take on. However, everything in this instructable was completed by first-timers so it's not impossible.

Have fun!

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Parts Needed

Pictured here are all the parts and tools you'll need. Well, almost all. A hot glue gun or similar sticky machine is missing from the picture. But the rest is here.


1. Headband. I got these very cheap hard plastic headbands from Amazon. You'll want a headband that is 2cm wide or more in order to hold the hardware on it. I recommend black or white because then you have more freedom in the colors of the LEDs.

2. Wire. You only need a tiny amount of wire, not a giant spool like you see here. This is 20gauge stranded wire, which is about right. You don't want wire that's too thick, or the soldering is going to get difficult. I like this particular wire, which is specifically designed for WS2811 LEDs, because it's three strands all stuck together. Keeps things neat and tidy.

3. LEDs! The LEDs I chose are WS2811 addressable LEDs, 30 per meter. If you get the ones that are *not* waterproof, they usually have a sticky back, which is perfect for this application. I also got them in a black backing, which matches the black headbands. The ones I bought are on Amazon here. If you get a roll like this, you can make 20 headbands. That's about $1 per headband for the LEDs.

4. Battery Holder. We'll be driving this from two CR2032 coin cells (you can get these lots of places), so you need a battery holder. I *strongly* recommend getting these from adafruit.com, because they come with the correct connector (called JST) already installed. Otherwise, it's quite difficult.

5. Microcontroller. The brains of your headband will be an Adafruit Gemma v2. These are at a great price of only $10, and are really tiny. Make sure you get the V2 version and NOT the M0 version. The M0 is programmed a whole different way.

Step 2: Tools Needed

This build does require some fairly delicate soldering. If you've never soldered before, this might not be the best place to start. That being said, you can practice first on some separate LEDs since they are quite cheap. Anyway, here are the tools you'll need:

1. Third Hand. I have this fancy one that is really, really nice, even if it's kind of expensive. It's the kind of thing that you'll never regret spending some extra money on and you can re-use it forever.

2. Soldering Iron and Solder. My soldering iron is not fancy. It would probably be easier if I had a nicer one, but this one works just fine.

3. Wire Stripping Tool. For both stripping and cutting wire.

4. Hot Glue Gun (not pictured). For attaching hardware to the headband.

Step 3: Cut a Length of LEDs

For our project, we used sets of seven LEDs. You can do more, or less, but this came out about right in length, and also creates a project that won't use up battery too fast.

These strips of addressable LEDs can be cut at any point between two lights. You'll see that there are three small metal 'pads' halfway between lights. You want to cut exactly halfway across those pads. This is because you will be soldering wires onto them! The cut and result is shown in the photos.

Step 4: Stick the LEDs to the Headband

The LEDs should have an adhesive strip on the back. Pull this off and just stick it on the headband. As long as the headband is clean, it should stick easily. Done!

Depending on your setup, you might prefer to do the soldering first, before sticking the LED strip on the headband. This is up to your preference.

Step 5: Solder Wire Onto LED Strip

The first step here is to strip the wire, and if you're using bonded wire like I show here, you'll need to separate the wires a bit. Don't strip the wire too far back on the side that's going to go to the LEDs, only a few millimeters. You'll want to strip quite a bit more on the other side that connects to the micro controller.

Before you go any further, STOP!

Addressable LED strips have a direction - they can only be wired from one end, not either one. The strips use a variety of ways to indicate their direction... on the ones I have you can see just to the left and right of each LED lamp there is a little directional arrow. This is the direction the signal is going to travel. So I need to be sure to connect to the end away from where the arrows are pointing. This is especially tricky after you have cut them with scissors.

You've double checked the direction? OK good. You can start again.

I don't have any good action shots of soldering here, but you need to solder the three wires onto the three little metal pads on the LED strip. By convention, the red will go to the positive (sometimes labeled 'VCC'), the white will go to negative (usually labeled 'GND' for Ground) and whatever the third color is, is the signal wire. This will almost certainly be in the center on your LED strip.

Soldering these is the most difficult stage of the whole build, so be patient. Having a good Third Hand device like I show here really helps a lot to keep things steady. Like with all soldering, it's important to get the soldering surfaces (wire and metal pads) hot before you add the solder. That's particularly hard on these LED strips, because the pads are pretty small, and the strips seem to suck the heat away. So be patient. The solder jobs you see on these photos were by people who were soldering for the first time, so you can do it!

Step 6: Solder Wire Onto Arduino

Whew, you've done the soldering on the LED strip. Congratulations! That was the hard part.

Soldering onto the Arduino is much easier.

First though, have a good look at the metal pads on the Arduino Gemma. One one side, conveniently clustered together, are two power pads (Vout and GND) and a Digital pad (D1). This is the side you're going to use.

As you put things in place, you'll match the GND to the GND on the LED (white wire), the VCC to Vout (voltage out), and the signal wire to D1. You should strip a little more of the wire, so that you can wind it around a bit through the hole in the pad.

After you've done that, put a nice big glop of solder on each one. Precision doesn't matter here as much as it did on the LED side, so relax. Once you have that done, you should have a functional headband!

Step 7: Install Arduino Software on Your Computer

If you've never installed Arduino on your computer, now is the time.

Instructions for installing Arduino (version 1.8.2 or higher) are here. For this project, I have not tried the web editor so I don't know if it works or not.

Once you have installed the Arduino development environment, you need to do two more things:

1) Install the FastLED library

2) Install the Adafruit Gemma support files

Luckily, both of these are pretty easy.

Step 8: Install FastLED Library

Newer versions of the Arduino software make installing libraries really easy. The pictures here are from the Mac version, but the Windows version is similar. You go to the Manage Libraries interface, then type FastLED into the search window. You'll see an option to install the latest FastLED library, and you just click that and you're done.

Step 9: Install Adafruit Board Support

Installing support for the Adafruit Gemma microcontroller is also easy. It's accessed through a different menu but works pretty much the same. You can see the steps in the photos here.

Once you've installed all the libraries, it's a good idea to restart the Arduino software.

Step 10: Upload Code!

Uploading code to a Gemma is a little tricky, especially if you're accustomed to a more traditional Arduino hardware.

First, like usual Arduino hardware, you select the Gemma 8MHz from the menu. (You may also have to select "USBTinyISP" from the Programmer menu, though probably not.)

Where you may get confused is that no "port" will appear, unlike with normal Arduinos, even though you've connected the USB cable (Gemma uses MicroUSB) and everything seems OK. This is normal. Don't worry.

In order to upload code, you first have to put the Gemma into 'bootloader' mode. You do this by pressing and holding the reset button for a couple seconds. If you do it correctly, a red LED will pulse on the board. Once this begins, you have about 15 seconds to upload your code. So hurry!

Oh - and Gemma has one other little quirk. It does not work if your computer has USB3 ports, as many do. If your computer only has USB3, you will need to buy a USB2 hub and connect it. It's very awkward.

(If you're unclear on how to compile and upload code from the Arduino editor, there are many resources such as this one to help you out.)

The picture above shows some code you can type in. If you type it in and upload it, it should cause all of the LEDs to be a steady orange color.

Here's the code if you'd rather copy and paste (sorry, I'm not sure why Instructables split it in two):

#include "FastLED.h"

#define NUM_LEDS 7
#define DATA_PIN 1


void setup() {

  FastLED.addLeds(leds, NUM_LEDS); 

void loop() {

for( int i=0; i<= NUM_LEDS; i++ ) {

    leds[i] = CHSV(22, 230, 150);



Step 11: If It Didn't Work

If the LEDs didn't light, most likely the issue is wiring. It's really easy to get a short, especially where you soldered the wires onto the LED strip. Have a very close look, maybe with a magnifying glass. If the metal is touching, that's a short. You can use your soldering iron or some other tool to separate the wires.

Also, see the note on the prior step about USB3 and USB2. This may catch you out too.

Step 12: Try It With Batteries

Next, make sure your headband will work when powered by batteries.

Remove the USB plug, and put two CR2032 coin cells in the battery case pictured here. Pay close attention to what is + and - on the batteries. One will be upside-down.

Once you have the batteries in and the lid snapped back down, plug the white JST connector into the corresponding connector on the Gemma board. It should light up!

If it doesn't light up, check the little switch on the battery case. It might be off.

Note that when booting from battery, sometimes Gemma takes a long time to get going. So be patient.

Step 13: HARD MODE - Shorten the Battery Cable

You might notice that the battery cable on the Adafruit battery case is pretty long. I found that to be a little sloppy. So I shortened the cable by de-soldering it, cutting it, and re-soldering it.

You really don't need to do this (thus "hard mode") but it makes for a much cleaner look when it's done. However the de-soldering and re-soldering is pretty tricky. The photos here show the process. And if you do it - don't forget that the black wire goes on the little switch!

Step 14: Glue It All Together

Using hot glue, you can glue the battery case down to the headband, then the controller on top of the battery case. If you used a good size headband, this should all mount pretty cleanly.

Note that it's best to mount the battery case upside-down (with the screws facing up). Doing this will allow you easier access to change the batteries later.

Step 15: Enjoy!

This is just the beginning. It will look cool, but you can program it to lots more different animations. And you can also add more fun items to it! Try gluing on some bits of plastic or other decorations, see how they light up. Happy halloween!

Step 16: More Code

Want to try some more code ideas? Here is a program to get you started. You almost definitely *don't* want to have the LEDs lit all the time, because that will drain your batteries fast. So try an animation!

The code here will make a chaser animation back and forth, alternating with all LEDs being lit. It's just a start. Play with the code, see how you can change it!

(Note: the two screen shots are from the same program. You can create 'tabs' in Arduino which allows you to have separate files for better organization)

Be the First to Share


    • Finish It Already Speed Challenge

      Finish It Already Speed Challenge
    • Arduino Contest 2020

      Arduino Contest 2020
    • First Time Author Contest

      First Time Author Contest



    2 years ago

    That looks really cute! Great job :)