Introduction: "Punk Vampire" and "Scary Nemo" Halloween Masks

Although these two masks were originally created for Halloween, they've seen some constant upgrading since then. Nevertheless, it is a great project for parties! At least that's where we use them now ;)

Objectives: Create Halloween masks in 5 days and make them as awesome as they can be to win the best costume competition. Therefore, they had to include RGB LEDs, an EL wire and an Arduino to control everything.
Apart from these constraints me and my flatmate Kestas set up some design specifications for our masks. It has to be:

  1. Easy to drink and eat while wearing the mask,
  2. Possible to talk to other people,
  3. Doesn’t obstruct vision too much,
  4. Won’t start falling apart while dancing,
  5. Easy to put on and take off,
  6. Cheap.

After some research on the internet we decided to make our masks from papier mache, because it’s cheap and it’s easy to learn. This post on geekLabs was a really good post briefly covering everything we needed.

So, without further ado, let's start building!

Step 1: Materials, Tools & Electronics

To build the masks, you'll need the following materials:

  • newspaper (lots of it)
  • corn flour
  • balloons
  • masking tape
  • paint
  • table tennis balls
  • glue (we used universal hobby glue)

All the electronics were ordered earlier from Amazon and eBay, so they arrived just in time. Here’s a list of what we used in our helmets:

  • common anode RGB LEDs
  • red diffused LEDs
  • 2m EL wire with inverter
  • Arduino
  • 100 ohm resistors
  • wires

Of course, this list can vary greatly, depending on your imagination.

Tools. All the usual tools required for such project:

  • scissors
  • hobby knife
  • brush (we reused old toothbrushes)
  • soldering iron
  • wire strippers, pliers, helping hands, etc. (just to make soldering easier for you)

Step 2: Balloon Prototypes & Papier Mache

Firstly, we each made a quick sketch on a balloon to check the overall size of the masks, and some details. Then when we were happy with our concept designs, we had to figure out how to create the papier mache mask.

Neither of us have done anything from papier mache before, so the first two attempts were unsuccessful. We tried using gelatin, but it didn’t set fast and wasn’t strong enough (although, it looked promising at the beginning). Second try was using the flour and water mixture technique, which we found online. But again, it wasn’t strong enough. So the third and by far the best technique was using corn flour (corn starch will also work). Results were amazing. We prepared the glue using this guide on Squidoo.

Essentially, mix 2 tbsp of corn flour with 2 tbsp of cold water. Boil 1 1/2 cups of water, and mix it into the corn flour & water goo.

We teared the newspapers into quite narrow long pieces and applied them layer by layer.

Step 3: Time to Cut

After putting on about 7-8 layers, we left the masks to dry over night. The next day we took the balloons out and cut holes for head and mouth. When we were happy, it was time to add some detailing. A center fin and lips were added and glued using the corn flour glue.

Step 4: Testing Eye Patterns & Painting

While the masks were drying we cut some table tennis balls in half and put them on with masking tape to decide on the eye arrangement. I also tried to cut out a couple of holes for eyes to see better, but they turned out useless, and I covered them later on.

When the masks were dry, it was time to paint! We used spray paint instead of regular paint, as it is the fastest and easiest way. For some details (like teeth and white parts on the mask) we used some white enamel.

Step 5: Electronics! (Bling, Bling)

After painting the masks, it was time to put the LEDs in. Although, when I think about it know, holes for LEDs could have been made before painting. Otherwise, you’ll have some white newspaper visible around the LEDs, unless you cover them with something – like a table tennis ball, or LED holders (like we did).

Soldering. When all the holes were cut, we prepared the LEDs. We joined all the LEDs in parallel and then soldered a 100 ohm current limiting resistor on each positive connection. This is an important part. Don’t forget to put the resistors in, otherwise you’ll drain the batteries in 30 minutes or so (it is because LEDs are a little like transistors and will drain as much current as they can. Read more about it online). Also, to make connecting the wires to my Arduino easier, I soldered header pins. They prevent wires from accidentally disconnecting and make a lot easier taking the Arduino out.

Step 6: Test the LEDs

When everything was connected, I checked that everything worked the way it should. Afterwards, I uploaded a short sketch to test the LEDs one color at a time. Had to change one RGB LED, as it was faulty. After that was done, we’ve put all the electronics inside and glued the table tennis eyes on.


Here's the code that I used to check the LEDs:


// Mood Lamp

float RGB1[3];
float RGB2[3];
float INC[3];

int red, green, blue;

int redPin = 11;
int greenPin = 10;
int bluePin = 9;

void setup(){
randomSeed(analogRead(0));
RGB1[0] = 0;
RGB1[1] = 0;
RGB1[2] = 0;

RGB2[0] = random(256);
RGB2[1] = random(256);
RGB2[2] = random(256);
}

void loop(){
randomSeed(analogRead(0));

for (int x=0; x<256; x++){
INC[x] = (RGB1[x] - RGB2[x]) / 256; }

for (int x=0; x<256; x++){
red = int(RGB1[0]);
green = int(RGB1[1]);
blue = int(RGB1[2]);

analogWrite(redPin, red);
analogWrite(greenPin, green);
analogWrite(bluePin, blue);
delay(10);

RGB1[0] -= INC[0];
RGB1[1] -= INC[1];
RGB1[2] -= INC[2];
}

for (int x=0; x<3; x++){
RGB2[x] = random(556)-300;
RGB2[x] = constrain(RGB2[x], 0, 255);
delay(200);
}
}

Step 7: More Electronics and More Testing!

Masks were starting to look really good at this point. Now we had to decide on how to put the EL wires on our masks. After some time prototyping with the masking tape, we finally decided on the positioning, and glued the EL wire using clear hobby glue. As soon as the glue had cured, we put in some batteries. Time for a full test run!

Step 8: Foam Inserts

What we noticed from the beginning, is that there’s quite a lot of space around the head and the masks don’t sit the way we want. With all the additional weight from batteries and Arduino it got even worse. For testing we used some cardboard spacers around the head, to hold the mask. Later on we bought some foam from our local foam shop and made proper lining. Foam not only helped to keep the helmet well positioned at all times, but all the electronics were hidden under the foam, so no additional holders were needed. Win!

On my helmet I used a belt holder for batteries. Only the Arduino and EL wire inverter were in the helmet.

After having all the parts cut from foam, dry fitted and tested we glued them in using some multi purpose hobby glue that we found in Homebase. Although, hot glue would have done the job perfectly too.

Step 9: Let the Magic Begin. Time to Code!

Finally, after putting the lining in, it was time to make the helmets awesome! By that, I meant, it was time to program the Arduino. My code basically iterates the RGB colors and after some time it “pulses” the red LEDs on the top of the helmet. Then repeats all over again.

// Halloween Mask 
float RGB1[3];
float RGB2[3];
float INC[3];
 
int red, green, blue;
 
const int redPin = 11;          //eyes red
const int greenPin = 10;        //eyes green
const int bluePin = 9;          //eyes blue
const int fader = 5;            //fin leds
 
void setup(){
  randomSeed(analogRead(0));
  RGB1[0] = 0;
  RGB1[1] = 0;
  RGB1[2] = 0;
 
  RGB2[0] = random(256);
  RGB2[1] = random(256);
  RGB2[2] = random(256);
  
  pinMode(redPin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(bluePin, OUTPUT);
  pinMode(fader, OUTPUT);
}
 
//main loop
void loop(){
  for(int i=0;i<5;i++){
    yellow_eyes(250, 250, 210);   //turn on yellow eyes. can set any RGB value.
    fin_fader(30, 40);            //pulsate red LEDs. 30ms to fade in, 40ms to fade out.
  }
  
  digitalWrite(fader, HIGH);      //turn on red LEDs
  for(int i=0;i<50;i++){
    mood_mode();                  //iterate through RGB colours
  }
  digitalWrite(fader, LOW);       //turn off red LEDs
}
 
//function to set the color for the eyes
void yellow_eyes(int R, int G, int B){
  analogWrite(redPin, R);
  analogWrite(greenPin, G);
  analogWrite(bluePin, B);
}
 
//function to pulsate the red LEDs
void fin_fader(int fade_in, int fade_out){
  int i = 0;
  while(i<255){
    analogWrite(fader, i);
    i = i+5;
    delay(fade_in);
  }
  i = 255;
  while(i>0){
    analogWrite(fader, i);
    i = i-5;
    delay(fade_out);
  }
  digitalWrite(fader, LOW);
  delay(500);
}
 
//changing RGB eye colors
void mood_mode(){
  randomSeed(analogRead(0));
 
  for (int x=0; x<256; x++){
    INC[x] = (RGB1[x] - RGB2[x]) / 256;
  }
   
  for (int x=0; x<256; x++){
    red = int(RGB1[0]);
    green = int(RGB1[1]);  
    blue = int(RGB1[2]);
   
    analogWrite(redPin, red);
    analogWrite(greenPin, green);
    analogWrite(bluePin, blue);
    delay(10);
   
    RGB1[0] -= INC[0];
    RGB1[1] -= INC[1];
    RGB1[2] -= INC[2];
  }
 
  for (int x=0; x<3; x++){
    RGB2[x] = random(556)-300;
    RGB2[x] = constrain(RGB2[x], 0, 255);
    delay(50);
  }
}
I was also thinking of putting a button and having a couple of “modes” for the helmet. Here is the code for LEDs with a control button. You can check the code on GitHub: Improved Halloween Masks.

Step 10: Finally... Time to Party!

If you were following this Instructable and making your own mask along the way, your mask should be ready by now. Next step - find a party and be awesome!

Last remarks on the project. Although these masks were supposed to be Halloween costumes, they are constantly being upgraded, to be more awesome. So, here are some ideas for future improvements:

  • Add a microphone and make the LEDs blink to music,
  • Combine EL wire and Arduino battery packs into one.

Lastly, here’s a video of helmets in action during a party (eyes on the “Nemo” helmet are off in this video. Technical problems. Teeth are out too for safety reasons):


So, I hope that this Instructable inspired you too.

If you enjoyed this project please vote for me in the Make It Glow contest.

Thanks for reading, and happy building!