Shadow Latern

Introduction: Shadow Latern

This lantern is customizable so it is more engaging and fun for the kids. It is a dynamic shadow lantern that projects different colors and designs on the wall. Therefore, this is beneficial to those who are looking for a more visualizing and a more customizable shadow lantern for various ages.

Our inspiration for this shadow lantern was from:

The link to the cover photo:

Step 1: Supplies You Will Need

1 Arduino UNO

1 USB cable


1 Small breadboard

4 Jumper wires

1 Square glass or bottle

4 Sheets of tracing paper

4 Sheets of construction paper

1 Hot glue gun

Step 2: Wiring Up RGB LED

Use the RGB LED and bend the negative prong. Then place then negative prong in the blue negative row that is located along the top of the breadboard. After, you need to bend the other three legs of the RGB LED and place them into the middle of the breadboard in different columns. We placed the blue jumper in the column A, row 37. The black jumper wire is placed in column A, row 41 on the breadboard. The white jumper wire is placed in column A, row 43.The other white jumper wire is located in column H, row 39. It is crucial that you place the three prongs into different columns in the breadboard.The negative prong is located on column J, row 39. Row 39 is the only row that connects to the second white wire. There is no resistor placed in that row. In column J we inserted one prong from the LED into the corresponding row with each jumper wire.Lastly, place the (330 ohms) resistors where they are attached to one of the RGB LED prongs and the other three jumper wires.We placed the first resistor in row 37, column D and F. The second resistor is in row 41, column D and F. The third resistor is placed in row 33 column D and F.We place the resistors into the breadboard so that it won't burn out the RGB LED.

Step 3: Wiring the Arduino UNO

Wiring up your Arduino UNO depending on the columns you have chosen in your code. You must use the breadboard to link the resistors that are linked to the LED onto the Aurduino UNO.

In the input column we inserted the second white jumper wire into 3.3 volts. In the output column the blue wire was inputted in row 9. The black jumper wire was inputted in 6. The first white jumper wire was inputted in column 5.

Step 4: Software

1.We used Aurduino Create software that is available online to type in our code.

2.Here is the code we used:

//each pin corresponds to an LED color:
int led0 = 10; //int = integer led0 = 10(colour)

int led1 = 11;

int led2 = 12;

//Declare internal variables

int brightness = 200;

int red = 0;

int blue = 0;

int green = 0;

// this routine runs each time you hit the reset button

void setup() {

pinMode(led0, OUTPUT); pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); }

//this routine loops indefinitely

void loop() {

for (float x=0;x < PI; x = x + 0.000004){

red = brightness * abs(sin(x*(180/PI))); // calculates reds brightness

green = brightness * abs(sin((x+PI/3)*(180/PI))); //calculates greens brightness

blue = brightness * abs(sin((x+(2*PI)/3)*(180/PI))); //calculates blues brightness

analogWrite(led0, red); //sends value to the LED analogWrite(led1, geen); //send the value to the LED analogWrite(led2, blue); //send the value to the LED } }

3. We then plugged in our USB cord to the computer and attached the other end to the Arduino UNO so then we could upload the code. On the website press upload and the code will upload onto your Arduino UNO.

Step 5: Building the Structure


  • Popsicle sticks
  • Hot glue gun
  • Construction paper
  • Tracing paper

Step 6: Design

The designs we used for our shadow nightlight for each of the four sides.

The design we used:

Step 7: The Finalized Project

Here is a video of our project:

Be the First to Share


    • Puzzles Speed Challenge

      Puzzles Speed Challenge
    • "Can't Touch This" Family Contest

      "Can't Touch This" Family Contest
    • CNC Contest 2020

      CNC Contest 2020



    2 years ago

    Very nice! I'd love to see a finished picture of your lantern.