Whether it's crawling across the floor, popping out of a grave, or snapping its fingers to a catchy tune, the disembodied hand is a scary movie staple. It's also the perfect prop for your Halloween display -- especially when you add flashing lights and eerie music!

This version is quick to make and easy enough for kids to do themselves (or with a little adult help). The hand itself is made completely of masking tape. Inside is a circuit made with peel-and-stick fabric conductive tape. The lights in the fingers are Adafruit LED Sequins, but you could even use ordinary LEDs. And the palm lights and the coding are all done in simple to use, block-based Microsoft MakeCode on the Adafruit Circuit Playground Express (CPX for short).

Feeling fancy? Instead of Sequins, this guide also shows you a solder-free way to attach an Adafruit NeoPixel LED Dots Strand, and run pre-made animations or control each individual color-changing light with MakeCode.

Ready to pay a call on this disembodied hand? Let's get started!

Parts List -- Electronics

The Circuit Playground Express lets you create your own light sequence and add music to your creepy, kooky creation! You will need one for both versions of this project. The base kit also includes a USB cable for programming the board, plus batteries and a battery holder to make the project portable.

Circuit Playground Express - Base Kit

PRODUCT ID: 3517
It's the Circuit Playground Express Base Kit! It provides the few things you'll need to get started with the new
OUT OF STOCK

Here is what you'll need to make the version using non-programmable LEDs.

Conductive Nylon Fabric Tape - 8mm Wide x 10 meters long

PRODUCT ID: 3960
With our fun assortment of conductive materials,
OUT OF STOCK

Adafruit LED Sequins - Multicolor Pack of 5

PRODUCT ID: 3377
Sew a little sparkle into your wearable project with an Adafruit LED Sequin. These are the kid-sister to our popular Flora NeoPixel,...
$3.95
IN STOCK

Or, to make the version with programmable lights throughout, this is what to get:

Adafruit NeoPixel LED Dots Strand - 20 LEDs at 2" Pitch

PRODUCT ID: 3630
Attaching NeoPixel strips to your costume can be a struggle as the flexible PCBs can crack when bent too much. So how to add little dots of color? Use these stranded NeoPixel dots!...
$27.50
IN STOCK

Bolt-On Kit for Circuit Playground, micro:bit, Flora or Gemma

PRODUCT ID: 4103
You have a Circuit Playground Express, and want to connect some wires to it for adding LEDs or sensors or speakers? You can use our...
$1.50
IN STOCK

Tools

For both versions of this project you will need scissors.

For the NeoPixel LED Dots Strand version you will also need:

  • small Phillips head screwdriver
  • wire stripper, like the one below

Hakko Professional Quality 20-30 AWG Wire Strippers

PRODUCT ID: 527
These are the finest wire strippers we have used, and if you have to do a lot of wiring, you will agree! They have soft rounded grips - very comfortable to use, and precision ground...
$14.95
IN STOCK

Materials List -- Household and Crafts Supplies

Other supplies you will need are:

  • masking tape
  • cardstock or other heavy paper
  • disposible straw, tongue depressor, or stiff paper rolled up into a straw-shaped tube
  • (optional) craft stick or coffee stirrer
  • (optional) clear tape
  • thin adhesive dots or double-sided tape, preferably removable

Build the Hand

The inspiration for this project came from a really cool masking-tape hand a student brought to light up in our afterschool Halloween-themed CPX class. I found these instructions for making the hand and adapted them just a bit. Based on that experience, I have some tips to share:

  • Work on somebody else's hand if you can. The original instructions say it's easier to do this with a friend, and they are definitely right. Once you've got one of your own hand covered in masking tape, it's hard (though not impossible) to carry out the rest of the steps.
  • Get the biggest hand you can find for your model. If the fingers of your masking tape hand are too small, you'll have trouble getting LEDs inside.
  • Suggestion: Try a stuffed glove. If you don't have a friend with monster-sized mitts, try stuffing a winter glove (the stiffer the better) with crumpled-up paper and using that as your hand model!

Here's what to do:

Wrap the Masking Tape

Use a wooden tongue depressor, disposible straw, or a straw-sized paper tube to create a little space between the tape and your hand. 

For your first layer, wrap the masking tape sticky side out. You can anchor it to your stick/straw to help you get started.

Wrap your palm mummy-style. (Don't make it too tight.) Then move onto the first finger. Remember to curl up your fingers to give them that ominous look.

Spread your fingers apart before going onto the next finger. If you're having difficulty using one long piece of tape, it's fine to use shorter pieces. In fact, you can slather on multiple pieces, like paper mâché. Just make sure to attach the new pieces to the rest of the taped area.

Go back and cover some of your wrist as well. When you have completely covered your hand with tape, start the second layer with the sticky side in. You can cover any small gaps with this second layer, or leave them in if you like that effect. Just make sure all there aren't any large gluey areas uncovered.

Remove the Taped Hand

To remove the taped hand, carefully cut up along the tongue depressor or straw, as far as necessary. Gently extract your hand from inside.

Once the taped hand is off, you can fix any spots with additional tape -- but don't make too many layers so the light can shine through!

You will close the seam up later with more tape, but for now, leave it open.

You can also add more tape later, if needed, to even out the bottom so the hand can stand up on its own.

Soft Circuit Basics

To light up the hand using non-programmable LEDs like Adafruit Sequins, you will create a soft circuit. Conductive fabric tape works great on paper because it bends without breaking. If you are new to circuits, here are some important things to know before you get started:

  • A circuit is a path for electricity to travel along. The current will only flow when the circuit is closed, meaning it forms a loop.
  • For each finger, you will create two lines called traces. There is a positive trace that connects to one of the input/output pins on the CPX, and a negative trace that connects to one of the ground pins.
  • By running the positive and negative traces parallel to each other, you create a parallel circuit. In a parallel circuit, every LED is connected directly to the power source (in this case, the input/output pin). This allows you to connect four or five LEDs to each finger.
  • Like other kinds of components, LEDs have a positive and a negative side. In addition, LEDs have polarity, which means they only work when the positive side is connected to the positive side of the power source, and the negative side is connected to the negative side. Make sure you connect your LEDs in the right direction!
Don't let traces touch each other! This can cause a short circuit, an accidental connection between two parts of the circuit that can damage your components.

Working with LED Sequins

Adafruit LED Sequins come in packs of five, attached to a breakaway board. The pack recommended here has one of each color, but you can also buy a pack with five of one color.

They're nice because the positive (+) and negative (-) ends are clearly marked. Each LED also has an onboard resistor. That lets you use different color LEDs together without worrying about different voltage requirements.

The Sequins are not individually programmable, but you can turn them on or off or fade them in and out by varying the voltage coming through the pin on the CPX board. (See the MakeCode page to find out how to program them.)

If you connect multiple LEDs to one pin, they will all turn on, turn off, and fade at the same time.

Working with Conductive Fabric Tape

The peel-and-stick conductive fabric tape is easy to use. Just cut the length you need, peel a bit of the tape off one end, attach it to the cardstock, and then slowly press the tape down as you peel off the rest of the paper.

The glue on the back of the tape is also highly conductive! You can connect two pieces by laying one right over the other and firmly pressing them together.

To prevent a short circuit, make sure to keep each line of tape separate. If you need to, you can cut the tape to make it thinner.

If a cut edge frays, make sure no loose threads are touching other pieces of tape! Tuck in any loose threads and secure them with tape. Use clear tape if you have to cover one of the LEDs.

Create the Sequin Circuit

Time to add lights! First, you'll make a soft circuit using conductive fabric tape. Next, you'll connect the Circuit Playground Express and attach the LEDs. After you're done, you'll be ready to plug in your CPX, program it in MakeCode, and make your lights flash!

Make the Base for the Circuit

Take a piece of cardstock and trace around the hand used to make the taped model. Spread the fingers so they match the taped hand.

Cut around the inside of the outline you drew, so that the tracing is skinnier than the taped hand. That way you'll be able to fit it inside the hand.

Square off the tops of the fingers and the spaces between the fingers.

The front of the cardboard base is the side that matches the front of the taped hand.

Make the Negative Traces on the Back of the Hand

One the back of the cardstock hand, attach a piece of conductive fabric tape long enough to reach from about the middle of the hand to the bottom, bending it around the bottom and over to the front.

Then attach the negative trace for the first finger. Connect it to the main piece by overlapping it, then run it up along one edge of the finger, up over the top, and down along the front.

Since you need room for two traces on the front side of the finger, you may want to cut the tape at the point where it bends over to the front so the front portion is thinner.

Repeat with the remaining fingers.

When you are done, the back of the hand should look like a tree with five branches.

The front of each finger should have a negative trace running along one side. The "trunk" of the tree should bend up around the bottom of the hand.

Add the Positive Traces to the Front of the Hand

Each positive trace will connect to an input/output (I/O) pin on the CPX board. The main negative trace will connect to a ground (GND) pad.

On the front of the hand, place the CPX in the middle and trace around it. If you are going to power the CPX board with the battery holder, the JST battery connector should be pointing down, towards the wrist. If you're going to use the USB cable to power it, rotate the board so the USB jack is facing down.

Next, mark the I/O pins you plan to use for each finger, from A1 to A7. Be sure to write the name of each pin next to it so you can match them up with the board later! In this example, the pins used are:

  • A6 - thumb
  • A5 - pointer finger
  • A4 - middle finger
  • A3 - ring finger, and
  • A2 - pinky.

Also mark the GND pad you want to use.

Now, attach the first positive trace tape to the first finger. It should go from near the top of the finger to the pin you marked for it on the board. Make sure the positive and negative traces aren't touching!

Do the same with the remaining fingers. Add a piece of tape to the main negative trace on the bottom so it reaches the GND pin.

Attach the CPX Board to the Circuit

Attach an adhesive dot to the back of the CPX board.

Attach the board to the marking on the cardstock, making sure that each pin lines up with the correct piece of conductive tape.

Use short pieces of conductive tape on top of the CPX board to secure each pin to the proper spot. Make sure the tape only touches the correct pin!

Attach the LED Sequins

Lay the LEDs on the traces on each finger. Make sure the positive and negative sides are on the correct trace!

When you are happy with the placement secure them with short pieces of conductive tape over the ends. Press the tape firmly to make a good connection.

For added security, you can attach a piece of Z-Axis Conductive Tape to the back of each LED. This is basically a sheet of conductive glue that will hold the LED in place. It won't cause a short circuit because it is only conductive to the material directly below it.

Optional: Touch Control

The CPX gives you several ways to trigger your program. If you want to add touch control, cut a strip of cardstock and attach it to the bottom of the hand with clear or masking tape so it can bend up like a hinge.

Then run a piece of conductive tape from an unused pin (in the example it is A1) down onto the extension so it sticks out when the hand is standing up.

Now you're ready to program the hand in MakeCode! Get all your code working before you insert the soft circuit into the masking tape hand. The next page tells you how.

MakeCode Basics

Now that you've set up your hand, you can program it with Microsoft MakeCode for Adafruit!

MakeCode is a web-based code editor designed for beginners that is amazingly simple to learn. You can use it online -- there's no need to download anything. You can build programs quickly with drag-and-drop blocks, similar to Scratch.

If you're new to MakeCode and CPX, you can learn more by checking out the Adafruit MakeCode Guide.

MakeCode Tips

Follow these best practices to help you as you write and test your MakeCode program:

  • Start simple. Make sure your light flashes on and off before adding complicated patterns or more actions.
  • Use an on [button A][click] block from the INPUT menu to write your code. It is an easy and reliable method to start your code running, whether you are testing your code with either the on-screen simulator or your real-life circuit. After you've confirmed that the code works, you can change the kind of input or move the code to a forever loop.
  • To make sure you code has run when it won't show on the simulator (like the external LEDs), or to keep track when you have several stacks of blocks going at the same time, add a play sound [ba ding] block from the MUSIC menu to your stack. Use different sounds for different stacks, or different points in the stack, so you know where the code is as it runs.
  • You can add a comment to a block by right-clicking on it, then writing in notes to help you remember what it does.
  • Give your program a name before you download it to your CPX, save it to your computer, or create a sharable link on the MakeCode website. That will help you find it later!

Coding the Onboard NeoPixel LEDs and Music

Making the ring of LEDs right on the CPX board glow or change color is amazingly simple, and will add another element to the external lights you are going to code.

Just click on the LIGHT menu at the top of the list, choose one of the blocks, and drag it into the workspace. When you place it inside a block from the INPUT or LOOPS menu, you can make it play. There are preprogrammed animations as well as blocks that let you set the colors yourself.

Use pause blocks from the LOOPS menu to set how long a light should be lit or dark.

The musical notes are found in the MUSIC menu, where you will also see preprogrammed sounds and a melody block that lets you create a sequence of eight notes by clicking on a grid of colored squares. Easy peasy!

The program at the top of this page makes the onboard LEDs flash orange while playing notes. You can view, edit, and run it by going to this link or clicking the button below.

Then go on to see how to program the external LEDs you have added to the CPX!

MakeCode for LED Sequins

Using Pins to Code External LEDs

Coding external lights is a little different than programming the onboard NeoPixel LEDs. The LED Sequins don't change color, but you can make them flash on and off and even fade them in and out. To do that, you will be changing the voltage output from the pins you attached them to.

You can view, edit, and run the test code at the top of the page by going to this link, or click on the button below.

Then keep reading to find out how to put together your own external lights program in MakeCode!

Turning External LEDs On and Off

To start, open up MakeCode, click on ADVANCED in the menu list, and the menu for PINS will appear.

When you click on PINS, you will see an assortment of blocks to choose from. Here's how to program a simple on/off action:

To simply turn an LED (or row of LEDs attached to the same finger) on and off, click on digital write pin [A0] to [LOW] and drag it into the work space.

When you "write" to a pin, you are giving it instructions. Digital instructions have only two options, off and on. In this case, off is labeled as "low" and on is called "high."

Click on the pin number and select the pin you want to program -- in this case, A2, which controls the light on the pinky finger.

Next, click on LOW to change it to HIGH. This will make the LED turn on.

 

Now drag and drop a pause [100] ms block into the stack.

Change the number of milliseconds (ms) to make the light stay on as long as you like. In this case, it is set to 500 ms, or half a second.

Finally, add another digital write pin block to turn the light off.

For testing purposes, add any play sound block. Then download and test your code to make sure the LED Sequin lights up!

 

If the first pin is working, repeat the process with the other pins, adding pause blocks to control when they turn on and off.

Fading External LEDS In and Out

To set an external LED somewhere between "on" and "off" you can use an analog write pin block.

In the old days, you could change the amount of voltage just by turning a knob. With digital technology, the same effect is usually created by pulsing the voltage on and off repeatedly at a certain rate of speed. This is called pulse width modulation, or PWM.

The analog write pin block gives you settings between 0 (all the way off) and 1023 (all the way on). Use it the same way as the digital write pin block, but move the slider for the setting you want. For example, to make an LED gradually get brighter, create a stack of blocks and move the slider up each time, with pauses in between. To make it get gradually dimmer, move the slider down each time.

Note that the analog write pin block only lets you use pins A0, A1, and A2. The A0 is connected to the speaker, so don't use that if you want to add sound to your program. (It's probably best to avoid that pin anyway.)

In the example project here, the A1 pin was used for the touch control, so only the LED on pin A2 can be programmed to fade in and out.

You can't use analog and digital blocks in the same stack. Create a separate stack for each kind of output, and give them different inputs. (See the example at the top of the page.)

Troubleshooting

Test your soft circuit before inserting it into the masking tape hand. If an LED is not lighting up, check that:

  • you set the correct pin number on the digital write or analog write block.
  • the LED is making a good connection with the conductive tape. Try pressing on it while the code is running to see if that's the problem. You can add more tape if needed. Or try moving the LED to a different spot.
  • there are no short circuits between pieces of tape (or loose threads coming off the tape). Also check that the tape on the CPX board is only touching the pin or pad it is supposed to touch, and nothing else!

Bonus Code!

If you're interested in seeing how to use more advanced programming concepts like functions, variables, and CONTROL blocks to make LEDs turn on and off and fade while the theme from The Addams Family plays, click on this link or the button below.

Use a NeoPixel Strand

Another option for lighting up your masking tape hand is a NeoPixel LED Dots Strand. It consists of 20 individually addressable LEDs that you can program just like the onboard NeoPixels using MakeCode. It can run the same animations as the onboard NeoPixels, or create your own lighting pattens!

Unlike the NeoPixel LED Strip that comes with alligator clips for easy attachment to the pins, the strand is flexible enough to let you (gently) bend it to fit inside the fingers of your hand.

However, you'll need to do a little prep work first to connect it to the CPX. Here's how:

Cut Off One of the Connectors

The NeoPixel LED Dots Strand has connectors on either end. The male connector (on the left in these photos) fits inside the female connector (on the right). They make it possible to join multiple strands together for extra-long builds.

For this project, you will cut off one connector and attach it semi-permanently to the CPX. Then you'll be able to plug the other end in when needed and remove it when you're done.

To figure out which end to cut off, examine the back of the LED Dots. You will see markings that show which way data from the microcontroller flows through the strand. You will cut off the end where the data is flowing OUT of the NeoPixel.

Sometimes the markings look like arrows. In this example, the Dots are marked with the words "IN" and "OUT." The print is tiny, so look carefully!

On the strand shown here, the OUT end happens to have the male connector. But it can differ, so always check!

Take wirecutters, or use the blade part of the wire stripper, and cut off the connector at the OUT end of the strand.

Leave a short bit of wire at the end of the last Dot, just in case.

Also cut off the two wire ends on the other connector. You will not need them for this project.

To avoid a short circuit on the strand, make sure metal wires are not sticking out from the clear plastic insulation on the remaining ends.  You can cover the ends on the strand with electrical tape for extra protection.

Attach the Connector Wires to the CPX

Take the cut-off end and separate the three wires attached to the connector. You will connect each wire to pins on the CPX, but first you have to expose the metal wire inside the clear plastic insulation.

To do that, use the wire stripper to strip about 1/4 inch of insulation from the end.

Gently clamp the wire stripper around the insulation in the notch that fits best. Squeeze just tight enough to cut through the insulation but not the metal wire.

Then pull the wire stripper towards the end, hopefully pulling the insulation off with it. Do the same with the remaining wires.

Since the exposed metal wire is stranded and tends to unravel, take the end of each wire and twist it to keep it together before the next step.

You will use nuts and bolts to attach the three wires on the connector to the CPX. They go in this order:

  • The red wire supplies power to the LEDs and the electronics in the Dots. It is connected to the Vout or 3.3V power pads. (The "V" stands for "voltage.")
  • The middle wire carries data -- the instructions you send to the LEDs to tell them what to do.
  • The outside wire on the other side is connected to one of the GND (ground) pads to complete the circuit.

For this example, the red wire will be connected to the 3.3V pad next to the USB jack, the middle wire will be connected to Pin A1, and the ground wire will be connected to the GND pad in between them.

Insert a bolt into each of the holes you are using from the top on the CPX board. Screw a nut on the end of the bolt underneath the board. Leave it loose for now.

Take the first wire and curve it around the screwdriver. Then hook the curved wire around the bolt, next to the nut on the underside of the board.

Use the screwdriver and your fingers to tighten the nut and bolt to hold the wire in place.

If there are any loose strands of wire sticking out, be sure to tuck them in so they don't cause a short circuit!

Do the same with the remaining wires.

Connect the Strand of Lights

The only thing left to do is join the two connectors.

Now the strand is hooked up to the CPX and you are ready to code it with MakeCode!

NeoPixel Strand MakeCode

Programming the NeoPixel Strand in MakeCode is really easy, once you know where to look!

If you need information and tips on how to get started with MakeCode, they're on the "MakeCode Basics" page.

To look at, edit and run the test program shown at the top of this page, go to this link or click the button below.

So, here's the secret: When you click on the LIGHT menu, another menu called NEOPIXEL automatically appears under it! The blocks in this menu are for programming external NeoPixel strips like the Dots Strand in this project.

Before you can tell the LEDs what to do, you need to let MakeCode know where the NeoPixel strand is located, and how many LEDs it contains.

First, drag an on start block from the LOOPS menu onto the workspace.

Then go into the NEOPIXEL menu and drag a set [strip] to [create strip on [A1] with [30] pixels] block into the on start block.

If the strip is connected to Pin A1 (as it is in this example), you can leave that as is. Otherwise, change it to the correct pin name.

However, the strand only has 20 LEDs, so replace the "30" with "20" by simply clicking on the white space and typing over it.

 

To test that the NeoPixel strand is working, try one of the pre-made animations.

Just grab a [strip] show animation [rainbow] for [500] ms block from the NEOPIXEL menu and insert it in a forever block from the LOOPS menu.

Experiment with different animations or change the number of milliseconds it runs before it repeats.

To make your own animations, try playing around with some of the other blocks in the menu, such as the Photon blocks (which "draw" along the line of lights in the color you choose).

Go to the next page to see how to insert the strand into the masking tape hand. Then figure out ways to make special effects that will bring the hand to life!

Set Up and Display

With your lights assembled and programmed to glow, you're ready to put the whole hand together! Follow the instructions for your version below.

LED Sequin Hand

Put batteries in their holder and plug it into the CPX if you haven't already.

Then insert the paper circuit hand into the masking tape hand by carefully curling the sides up slightly around the CPX board.

Aim the fingers for the corresponding openings. Have patience! It's a little like trying to put gloves on a toddler -- there will be bent fingers and fingers in the wrong hole before you get it all sorted out.

When the cardstock hand is as far in as it will go, you can close the seam in the palm. Match up the two sides as best you can and secure them with more strips of masking tape.

If the cardstock "wrist" is sticking out the bottom, or if the bottom edge is too uneven to stand on its own, add more masking tape until the hand can balance on its own.

To start the lights and music playing, turn on the batteries, then touch the strip of fabric tape you connected from Pin A1 to the cardstock extension.

The lights will shine through where you placed them on the outline of the hand circuit inside.

If you also programmed the onboard LEDs on the CPX to flash, the entire palm will light up.

It's an impressive effect using simple tools. Enjoy!

NeoPixel Strand Hand

To get the NeoPixel Strand inside the hand, start by inserting the end into the pinky as far as it will go.

Then gently bend the strand to make a loop about the length of the next finger. Try to keep the LEDs facing out. Insert the loop into the finger as far as it will go.

Keep going the same way with the other fingers. It should get easier as the fingers get bigger.

If there is any strand left after you do the thumb, curl it up inside the palm, with the LEDs facing out.

There should be enough extra wire where the two connectors meet to place the CPX outside the hand. That means you can use the buttons or the light sensor if you wish to trigger the NeoPixels!

The NeoPixel strand should light up almost the entire hand. You can create some neat effects by using different animations. And because the CPX is accessible in this version, you can keep experimenting even after you put the lights inside the hand.

Have fun!

This guide was first published on Oct 28, 2019. It was last updated on Oct 28, 2019.