Kids' Basics: Volcano Island Skill Test Game

Arduino Uno-based

Daniel Koch & Liam Davies

Issue 46, May 2021

This article includes additional downloadable resources.
Please log in to access.

Log in

Indiana Jones meets Treasure Island in this crafty test of motor skills.

BUILD TIME: 2.5 Hours

This game is inspired by one I had as a kid myself, and even though that wasn’t terribly long ago, technology has come a long way in a short time. Electronic games for kids when I was growing up were around but were nothing like those kids growing up now are familiar with. Most screens had big pixels with a visible distance between them, and most were plain black LCD on an unlit background.

Many electronic games instead had dedicated functions and did not revolve around a screen. One of my absolute favourites was similar to a game that is still around in different forms: That one is ‘Operation’, produced by Hasbro Gaming.

Mine was a bit different, in that it was a plastic model of an imaginary jungle island, with a volcano in the middle. There were recesses in the board with metal edges, just like ’Operation’, and small objects within. Using metal tweezers with a wire attached, you pull the objects out without touching the metal rim. This was set up to be no easy task, and if you touched the sides, a buzzer would sound.

Electronically, however, a counter was also active. After a couple of touches, the volcano would light with a single light bulb. A couple more, and it rumbled then stopped. A couple more, and the volcano ‘erupted’ by staying lit and rumbling, with a vibrating motor to shake the game. Being a few years ago (not as many as it sounds like), I can’t remember how many touches there were for each step, but it was a fun game that had me enthralled.

This month for Kids’ Basics, we’re replicating and improving that game. This time, it’s a craft build that you can have fun with before the game is even finished. Instead of a light bulb and red filter plastic, we’re using an LED to make our volcano work. There will be different colour and brightness stages, as well as a vibrating motor like the original. We’re skipping the speaker the original had, to keep it within the complexity limits of Kids’ Basics.


We encourage you to read all the way to the end of the article before you build. Not only will you then have a better feel for the overall picture as you build, but we sometimes discuss options or alternatives that you will need to have decided on.

You will need some basic hand tools for most builds. Small long-nosed pliers and flush-cut side cutters meant for electronics are the main ones. Materials like tape or glue are mentioned in the steps, too. We always produce a tools and materials list if you have to go shopping, but anything that is lying around in most homes is just stated in the steps.

As always with Kids' Basics, we're building on a solderless breadboard. We avoid soldering to make Kids' Basics accessible to more people, but having an adult around can still be helpful. You won't need any particular skills besides being able to identify components at a basic level, and even then, we help as you go along. If, for example, you don't already know what a resistor is, you'll probably be able to work it out from the photos and description in each step.

We do provide a schematic or circuit diagram but this is just helpful if you already know how to read one. Don’t stress if you have never learned, but take the chance to compare the digital image of the breadboard layout (which we call a 'Fritzing' after the company that makes the software) to the schematic and see if you can work some things out. You can make this project from the Fritzing and photos alone. You might also like to check out our Breadboarding Basics from Issue 15.

There is a “How It Works” section after the build, but you don’t need to understand it to get a working build. We have a “Where to from here” section as well if you want to modify, expand, or alter your build, but again, it’s not essential.

TOOLS & MATERIALS% (See Text for details):
Plaster of Paris
Foam-Cored Cardboard
Soft Drink Bottle Caps
Paint and Brushes
Plaster Spatula
Craft Glue
Decorating Materials

TOOLS & MATERIALS% (See Text for details):

Electronics Parts Required:IDJaycarAltronicsCore Electronics
1 x Solderless Breadboard-PB8820P1002CE05102
1 x Pack of Breadboard Wire Links-PB8850P1014ACE05631
8 x Plug-to-plug Jumper Leads *-WC6027P1017PRT-12795
7 x Plug-to-Socket Jumper Leads *-WC6028P1021PRT-12794
1 x 1kΩ Resistor *R2RR0572R7558FIT0119
2 x 10kΩ Resistors *R1, R4RR0596R7582FIT0119
1 x 100kΩ Resistors *R3RR0620R7606FIT0119
1 x BC337 TransistorQ1ZT2115Z1035COM-13689
1 x NE555 Timer ICIC1ZL3555Z2755COM-16473
3 x 100nF CapacitorsC1, C4, C5RM7125R3013BCE05188
1 x 2.2μF Electrolytic Capacitor *C2RE6042R5028CE05130
1 x 100μF Electrolytic Capacitor *C3RE6130R5123CE05130
1 x Arduino Uno or Compatible Board-XC4410Z6280A000066
1 x MOSFET Module-XC4488-COM-12959
1 x Piezo Buzzer-AB3462S6109ADA1536
1 x Motor Gearbox Assembly-YG2900J0016ADA3777
1 x RGB LED Module-XC4428-DFR0238
1 x USB Lead (to be cut)-WC7704P1901CFIT0265
1 X Pushbutton SwitchSW1SP0710S1060CCE07452

Electronics Parts Required:

* Quantity required, may only be sold in packs. % These are in addition to things that can be found in most homes

The Electronics Build:

The electronics are divided into two sections. One is based around an NE555, which has several functions explained in the ‘How It Works’ section. The other part is based around an Arduino Uno. We use a standard breadboard for both the NE555 section and some external components for the Uno. We’re also making this build USB powered, so that you can use a USB plugpack or a battery bank.

Finding a 5V motor from an accessible supplier wasn’t easy, so we went with the geared motors used for basic robotics chassis. These are usually yellow plastic housings with the motor retained in one end with a flexible plastic device. With that removed, the motor pulls out easily. The total cost of that whole assembly is lower than the specialised motors we did find. You can buy special vibration motors, but these don’t do what we want them to do.

Step 1:

Place the breadboard in front of you with the outer red (+) rail away from you and the outer blue (-) rail closest to you. Install the NE555. Also, add the wire links which join the matching supply rails.

Step 2:

Install the three wire links above the NE555. Note one is a small uninsulated wire, between pins 6 and 7. It’s quite hard to see. The others are between the upper red (+) rail and pin 8; and another to the right of pin 5 to the upper blue (-) rail.

Step 3:

Add the 100kΩ resistor between the upper red (+) rail and pin 7 of the 555. Insert a 100nF capacitor between pin 5 and the wire link, and a 2.2μF electrolytic capacitor between pin 6 and the same wire link.

Step 4:

Install two resistors below the NE555.

A 10kΩ (brown-black-black-red--brown) goes between the lower red (+) rail and pin 2, while a 1kΩ (brown-black-black-brown--brown) goes between pin 3 and the row next to pin 1.

Step 5:

Install four wire links. One goes between the lower red (+) rail and pin 4 of the NE555, and one is between the lower blue (-) rail and pin 1. Another goes from pin 3 off to the right, and one more goes from pin 2 off to the left.

Step 6:

Insert a BC337 transistor with the flat side facing you and the right hand leg (emitter) in the same row as pin one of the NE555, the middle leg (base) in the same row as the 1kΩ resistor, and the left leg (collector) in the second row from the edge.

Step 7:

Add two capacitors, a 100nF diagonally across the upper blue (-) and upper red (+) rails, and a 100μF electrolytic between the lower blue (-) and lower red (+) rails. These don’t connect to anything else but need to be near other connections, so check the image carefully.

Step 8:

Insert a 10kΩ resistor between the upper blue (-) rail and a row on the board. Add a 100nF capacitor with one leg in the same row, and its other leg to the left. Install a wire link between this leg and the upper red (+) rail.

Step 9:

Cut a plug-to-plug jumper wire in half, bare the ends, and twist them through the eyelets of a pushbutton switch. Tape the joins and plug the other ends into the same rows as the capacitor legs from step 8.

Step 10:

Cut another plug-to-lug jumper wire in half, and bare the ends. Bare the ends of a length of hook-up wire at least 1.5m long, and twist the jumper leads to these ends. Tape the joins, but we left ours open so you can see.

Step 11:

Cut the wire loop in the middle. Plug one jumper wire into the breadboard so it lines up with the wire link from pin 2 of the NE555, the one that goes right to the left of the board. Bare the other end, and twist it around the join of a pair of metal tweezers. Tape over it to keep it secure.

Step 12:

Plug the other jumper wire/hook-up wire half into the lower blue (-) rail and bare the other end. This will be used later for connecting to the recesses in the craft build, but for now, we just need it bare for testing.

Step 13:

Insert a pair of lug-to-plug jumper wires into the upper power rails. If you can, choose a dark colour for the blue (-) rail and a light colour for the red (+) rail (Try to keep to the red/light and blue/dark colours throughout these steps). Plug the other ends into the Uno so that the blue (-) rail goes to the GND socket and the red (+) rail to the VIN socket.

Step 14:

Take four plug-to-socket jumper wires and plug one into the upper blue (-) rail, and the other three into pins 9, 10, and 11 of the Uno. Into the sockets, plug the RGB LED module so that the blue (-) rail goes to the - pin on the module, pin 9 on the Uno goes to the R pin on the module, pin 10 on the uno to the G pin of the module, and pin 11 of the Uno to the B pin of the module.

Step 15:

Separate three more plug-to-socket jumpers, and plug two into the upper power rails. The other wire goes to pin 5 of the Uno. Slide the sockets onto the MOSFET module so that the blue (-) rail goes to the GND pin, the red (+) rail to the Vcc pin, and pin 5 of the Uno to the SIG pin of the module.

Step 16:

Take two plug-to-plug jumper wires and insert one end of each near the 100μF capacitor. Install the other ends in the screw terminals of the MOSFET module so that the red (+) rail goes to VIN and the blue (-) rail to GND.

Step 17:

Undo the plastic retainer on the back of the geared motor assembly and remove the motor by sliding it out. Cut a plug-to-plug jumper in half, bare the ends, and twist them through the motor terminals. Tape the joins. Soldering here would be better if you know someone who can. Install the other ends into the M+ and M- screw terminals.

Step 18:

Cut the end off an old USB lead (ask your adult(s) first), find the red and black or red and white power wires and bare the ends. If you use a cheap phone charging cable, these are usually the only two wires. If you’re having trouble finding which wires in the USB lead are negative and positive (- and +), you may need a multimeter. Read on for that.

Step 19:

Cut a plug-to-plug jumper in half, bare the ends, and twist them to the power wires. Tape the joins and mark which is + and which is -. If you’ve built some of our previous projects, you may have this whole lead still made up.

Step 20:

Finally, bare a bit more of the ends of the leads of the Piezo buzzer, and insert its black wire into the left-hand leg (collector) of the BC337, and the red wire into the lower red (+) rail. You will probably have to tape this down, as the leads come out easily, but we left ours visible so you can see.


Not all USB leads use the right colours. Hold the multimeter probes to your bared wires while the lead is plugged into a USB battery bank or plug pack. If you see 5V in the display of your multimeter while it’s set to DC Volts, you have the red to + and the black lead to -. If you see -5V, the wires are the wrong way around.

Once you have that sorted, plug the lead with the + jumper into the red (+) rail and the - jumper into the blue (-) rail. Whether you use the upper or lower rails does not matter. Plug your Uno into your computer and upload the code, which can be downloaded from our website. See Issue 17 for our guide to setting up the Arduino IDE if you are unsure.

That done, unplug the Uno from the computer. It should remain powered by the USB connection to the breadboard. Now, touch the metal tweezers to the end of the other hook-up wire, the one connected to the lower blue (-) rail. You should hear a buzz from the piezo for around a quarter of a second. Touch it again, and then a third time. Each time the buzzer should sound, but the third time, the LED should light a dull red.

Keep going, and the LED should change to full brightness red on the sixth buzz, and orange on the eighth. On the ninth touch, the motor should spin for two seconds, while on the tenth, it should spin for ten seconds. The orange light remains on. After ten seconds, or at any other time, you should be able to push the reset button and the whole sequence will be reset back to zero.

If you get no buzz from the first touch, or light or motor movement when appropriate, then go back over the steps and check all connections. In particular, check that no component legs or wire links have ended up in the row next to where they are supposed to be. Also check the connection quality, because the spring clips used in breadboards wear out over time or if larger components have been inserted.

Another thing to check is the LED. RGB LEDs are not actually one LED. They are one case, with three LEDs embedded inside. These are very small, usually just the electronic section of the LED, the PN junction, bonded onto a 'substrate' that handles the electrical connections and gives mechanical strength. The whole lot is covered in resin.

The trouble is that there are two standards. One, called common anode, has all the positive sides of the LEDs (the anodes) joined. This pin has power supplied, and grounding each LED turns it on.However, it is just as easy to find common cathode RGB LEDs. The cathode is the negative terminal, and so all three ground pins are connected together inside the package, and exit as one. Voltage is supplied to each LED to light it. We have come across both versions in the Arduino-friendly modules with header pins on them. In fact, we even had two batches of the same brand, and one was common cathode, the other common anode. Our code is designed for a common cathode LED. This is marked with RGB- as the pin lables, so see the code section if the markings on your module shows RGB+, which is common anode.

How Does It Work?


The word ‘discrete’ means separate, so a discrete circuit is one made up of individual components. Although we used an Integrated Circuit (IC), the NE555, we used lots of individual components too. What it really means is that it’s not a self-contained circuit like a microcontroller is, where everything is on one IC or board containing the IC. By the way, it’s easy to get mixed up with the other spelling, ‘discreet’, which means hidden, quiet, careful, or in some other way not obvious.

This one is based on the familiar NE555, but we’re using it a bit differently. We usually use the NE555 to repeat its operation over and over. This is called ‘astable’ operation, or a multivibrator circuit. We use it here in its other common operating mode, called ‘monostable’ or ‘one shot’ and that’s probably the best way to describe it. When triggered, the timing period runs once, then waits for another trigger. Any triggers within the timing period are ignored.

This makes it very useful for debouncing the many tiny pulses that occur from human muscle movement. When you touch the tweezers to the side of the metal, it’s common to be shaking slightly as a normal function of how your muscles control the position of your limbs and fingers. It’s normally slight and unnoticeable to the human eye but electronically it would result in many tiny touches in a short amount of time. We’re talking milliseconds to microseconds here.

Under normal circumstances, the trigger pin 2 is held high by the 10kΩ resistor between it and the positive supply rail (+V). While this lets through only a tiny current, the input has a very high impedance, which is the resistance to the flow of electricity. It’s not called resistance because of how it’s caused, but the result is the same. It means the input draws almost no current. This state remains until the tweezers, which are connected to this same pin 2, touch the ground. This path is much easier for the current than the one through the trigger pin, so it flows to ground, meaning the voltage on the trigger pin falls to nearly 0V.

Because the trigger pin activates when the voltage on it falls below one third of the supply voltage, it now sets the internals of the NE555 going. Inside the IC is a device called a ‘flip flop’, for its ability to ‘flip’ to one state, let’s say ‘on’, then ‘flop’ to the other state, which would be ‘off’. Between the flip flop and the trigger pin is another device called a ‘comparator’. It compares, hence its name, the voltage at pin 2 to an internal reference set to be one third of V+. Whenever the voltage falls below this value, the flip flop ‘flips’ to on. The output pin 3 is now high, but the flip flop also turns off and the internal transistor, connected to pin 7, the discharge pin. Previously, this pin was grounded but now, as it is not, the capacitor connected to it, the 2.2μF electrolytic, begins to charge with the current coming from V+ through the 100kΩ resistor.

If you look at the schematic or circuit diagram, you can see that pin 7 is connected straight to pin 6. Pin 6 is the ‘threshold’ pin, and it is connected to another internal comparator. This one is set to two thirds of V+, and when this value is reached, the flip flop is ‘flopped’ to off. This happens because of the rising voltage across the capacitor as it charges.

When the flip flop ‘flops’ at the threshold, it does two things. Firstly, it turns the output ‘off’. It also turns the internal transistor connected to the discharge pin 7 ‘on’, causing the capacitor to discharge through it. The output is now off and the capacitor is ready to charge again.

In the more familiar (to Kids’ Basics readers at least) astable circuit has pins 2 and 6 connected and the resistor and capacitor in a relationship where the resistor regulates charge and discharge of the capacitor, or two resistors are used. However, in monostable mode, the discharge time does not matter. The threshold for triggering the IC comes not from the capacitor discharging below two thirds V+, but from an external input. This is why the circuit triggers on a ‘low going’ pulse, and is normally held high by the 10kΩ resistor.

The other components around the NE555 are not really about the timing. The 100nF capacitor connected to the Control Voltage pin 5 just stops that pin ‘floating’, and absorbs electronic noise that could affect that pin. The 1kΩ resistor from the output to the Q1 BC337 transistor stops the output current from damaging the base of the transistor, while the transistor itself switches the buzzer. We could have just connected the buzzer straight to the output pin 3, but because that output is also going to a digital input on the Uno, we wanted isolation.


The 10kΩ resistor and 100nF capacitor are for the pushbutton reset switch. The 10kΩ resistor stops the Arduino pin ‘floating’, which means hovering somewhere between 0V and V+. That situation could result in false triggering. Because 10kΩ is a reasonably large value, when the pushbutton is closed and V+ is applied to the Arduino pin, the voltage is high enough to read a ‘high’ on the input.

The resistor is small enough, however, that the minuscule currents involved in noise signals are not slowed enough by the resistor to present a voltage to the pin. The capacitor across the switch acts to absorb spikes and discharge into the lows for the fraction of a second that the switch contact ‘bounces’ as metal hits metal. This can, when unprotected, result in lots of signals close together.

There is a 100μF electrolytic capacitor across the power rails on the lower side of the board. Because a motor draws much more current on start-up than when running, this surge of current can cause supply voltage to fall. The capacitor discharges into the gap and stabilises it.


We rely mainly on comments in the code to explain it, so we can update it without making this article obsolete. However, there is something worth explaining in detail.

This code is written for common cathode LEDs, so the common pin is connected to ground, and each pin of the Arduino that drives a separate LED goes high to turn that LED on. Colours are made in RGB LEDs by varying the brightness of each LED. For example, orange is made by having red all the way on, and green partly on.

We do this using PWM, or Pulse Width modulation. PWM is a signal that turns on and off rapidly. The frequency, or number of on/off cycles per second, remains the same. It's the amount of on time that changes, relative to the amount of off time. It's called Duty Cycle.

In Arduino, the duty cycle is written as a number between 0 and 255. 0 is 'never on' and 255 is 'always on'. A value of 64 gives an on time of (almost) a quarter of the cycle, while 128 is almost half. If your LED module is a common anode, we need our pins to ground the LEDs. Luckily, Arduino pins do sink to ground when they're not high. When the LED is fed with 5V at both its anode pin and cathode pin, there is no difference, and current does not flow. So, for a common anode LED in this circuit, we need to drive the pin HIGH (turn it on) in order to turn the LED off!

To make the code work, we need to make the numbers for the RGB values the opposite of what they are. So, if it's 255, it becomes 0. If it's 64, it becomes 191. Just subtract whatever is there from 255 to get the opposite.

The Craft Build:

Just because this craft item takes a while to build, doesn’t mean it’s hard. There is just a bit involved in making the island look good. You could actually simplify it quite a lot, using just plaster and paint to make your whole island. We went with the approach we chose so that there is more detail and more options. All the supplies we used came from a discount variety store (dollar shop), and most art and craft stores have similar items.

Before you build, think about your island. What are you going to have on it, and what objects are you going to retrieve? You could just have small random objects in your recesses, and for this task, we got some ‘antique’ beads from a dollar shop. However, we also made or own objects from things we had in the workshop. You might like to do this if you have the skills and the confidence, but if not, the game works just fine with beads.

The recesses can also be random holes or features. We have a couple of holes in the ground like pirates digging for buried treasure, but others are in features like an old fort, and a ruined temple. Remember, these are optional too: you can just have holes on the island with things in them. But if you have some modelling skills or want to try, we used stuff lying around the workshop to make our features. This was mostly cardboard, matchsticks, plasticine, and wire.

Once you have decided how many recesses you will have, and what they’re going to be, you can map your island. This helps you remember things as you build but it can be a fun task all on its own. You can make your map look old like an actual treasure map, drawn old style in paper you later rub with dirty hands. You can also soak your paper before you begin in tea. Have an adult help you here.

Step 1:

With your map handy, sketch with a pencil the outline island on a sheet of foam-cored cardboard. Mark any places where there will be dips or holes later, like the pirate dig or the swamp in ours. Our river is also marked.

Step 2:

Mark the place where the volcano will be, and make a hole through the board with your pencil. This will have wires come through it for the light. Mark the outline of the base of the volcano as well.

Step 3:

Draw a series of shapes on another piece of foam-cored cardboard, similar in shape to the island but smaller. Each one will stack onto another to create height to the landscape. This building technique is called using ‘lifts’. Leave holes for the treasure recesses.

Step 4:

Glue the lifts on top of each other. Notice that we have left the hole for the volcano in each one. You can also carve any features like creeks and valleys now. Foam-cored cardboard can be carved with a craft knife with adult help.

Step 5:

Glue caps from soft drink bottles into the recesses in the lifts. These will form some of the spots that treasures will be retrieved from when the game is complete. The edges of the bottle caps should be flush with the surface of the landscape.

Step 6:

Roll a cone from cardboard and firmly glue the side. You might need to try several times before gluing to get the steepness you want on your volcano. When you’re happy, cut off the top to make the ‘vent’, the crater full of lava at the top of the volcano.

Step 7:

Disconnect the LED from the breadboard and pass its wires down through the hole in the board under your volcano. Use a scrap of foam-core to glue the LED a little way under your vent.

Step 8:

Paint your island a blue colour to represent the surrounding ocean. Paint all of it including the lifts and volcano, as this will help seal the cardboard against any water from the next step. Make sure edges are covered as well.

Step 9:

Use plaster bandage according to the packet instructions. Some types are dipped in water while others are brushed. Cut pieces to length and wet them, then lay them across the island to form the ground. It helps to lay the bandage down dry, cut it to shape, then wet it.

Step 10:

When you’re happy with the overall shape of the island and volcano, you can brush over the surface with a wet paintbrush to help smooth edges. While the plaster is still wet, use a kitchen skewer or a nail to poke holes next to the bottle caps through the plaster all the way through the foam-cored board to the bottom.

Step 11:

After this, leave the plaster to dry completely. This rarely takes more than an hour. With the plaster dry, you can paint base colours onto your model. Work lightest to darkest, which means sandy beaches, then green jungle, then blue or dark green rivers, swamps, and lakes, and finally the brown or grey rock of the volcano.

Step 12:

Insert lengths of hook-up wire through the holes next to the bottle caps. Bare the end and glue the sides into the cap so that the bare end sits on the bottom.

Step 13:

Line the bottom and sides of the bottle cap with aluminium foil. Make sure it touches the wire firmly. You might even like to pinch and fold the foil around the wire a bit before you smooth it down. Trim the foil from the edges of the cap.

Step 14:

Glue a bit of tissue paper or even a tissue into the sides of the volcano vent. This helps smooth out the light from the LED inside. You can then paint cardboard still visible with the colour of the rock you used on the outside, or maybe an orange to represent lava.

Step 15:

Using a box big enough to cover most of the bottom of the island, cut off the flaps of the top, except for one at one end. Glue or tape the joins in the rest of the box for strength.

Step 16:

Install the breadboard and Uno, and cut a hole in the side of the box for the USB cable to pass through. Using hot melt glue, attach the USB cable so it can’t be pulled out, and glue a weight to the side of the motor shaft. The gear on it helps here, and a 5c coin makes a good weight. Be careful not to permanently damage the coin, as defacing coins is illegal.

Step 17:

Bundle all the wires from the foiled recesses together and cut them to the length of the shortest one. Bare the ends and twist them firmly together, along with the end of the wire from the breadboard we prepared earlier. This should be the only loose long wire left on the breadboard.

Step 18:

Glue the island to the last flap on the top of the box. Also, glue one or two scraps of foam core under the motor and glue it down to the box to make sure the weight can spin. Finally, drape the wire and the tweezers attached over the side and close the lid.

Step 19:

Using whatever you can find or want to buy, you can decorate your model. We used matchsticks, scrap plaster bandage, and plasticine to make a Myan-style ruined temple, old fort, shipwreck, and fallen bridge for ours. Paint these items and glue them next to the relevant recesses in the model. Then, cover the model with vegetation and accessories. Everything you see in the images came from the craft, floral, and home decorating sections of a local dollar shop.

Step 20:

While you can use beads like the antique ones we bought, you can also make your own. We made all of these from wire, matchsticks, and workshop scraps. The only reason to do this is to ‘theme’ the objects, like having a cannon in the fort and an anchor in the shipwreck.

Step 21:

Plug in your USB cord and the wires from the LED in the volcano. Be careful of the wire order when it comes to the LED. You can also double check the connections on the breadboard here, in case any have come loose while you’re working around and moving the breadboard.


To use the game, place different objects into the recesses. If you’re using beads, it won’t matter what goes where. If you’re using custom objects, they’ll have to go where they belong. Test the system by touching the tweezers to any of the foiled recesses. You should hear a buzzer sound immediately. Keep doing this and make sure the code goes through its whole sequence. Or, if you don’t want to do this, unplug then plug back in the USB cord. We didn’t build in a reset button because they can be difficult to mount in this arrangement, and would need to go in the side of the cardboard box in a less-than-easy-to-reach spot. The effort is less than the effort of using the USB plug.

Now your task is to extract the objects from the recesses using the tweezers. You must get all the objects out without making the volcano erupt, ending the game. You might like to adjust in the code the number of touches before each stage of the volcano sequence, if you don’t have as many recesses or need more attempts available.


While we decorated our island with vegetation and structures, you don’t have to. You can just have the island surface with holes in it. Additionally, you’re not limited to a jungle island. You can come up with any scenario you can think of. It could be a prehistoric dinosaur landscape, or the surface of some planet from another galaxy. Or you can think outside the box, you can probably come up with an alternative for the volcano too, and that opens up the possibilities further.


The most logical next step is to increase the challenge by reducing the number of touches to trigger each stage of the sequence. Additionally, you can build in the sides of the bottle caps with plasticine before you line them with foil, to make a shape similar to the object being retrieved. This makes it much harder to get the objects out. You’ll still need to leave enough clearance to get the tweezers in though.

If you’re feeling adventurous and have the skills and knowledge, adding an MP3 module and speaker to the Arduino in place of the motor will enhance the game. You can use recordings of rumbling sounds and there are sound effects around that would sound like a volcano erupting. At least, they’ll sound like what movies and cartoons tell us a volcano sounds like! In real life, most volcanoes either suddenly explode or lava simply flows out of them. For references, Mount St Helens in the US exploded in camera on May 18, 1980. Iceland’s Eyjafallajökull volcano, while it has exploded violently, is usually erupting in the manner typical of movies and cartoons, with lots of smaller explosions and sounds. Hawaii’s Kilauea is probably the best known and most-videoed example of a slow, continuous eruption.