Color Changing Disco Ball

Introduction: Color Changing Disco Ball

By: 9B J05137 Alissa Lin 林家莉

Color Changing Disco ball is a small sized paper disco ball light decoration that can be used in a party or just as a usual night light in a room. By using the RGB LED light it can randomly change colors to create a better atmosphere. The disco ball will only begin to turn and light up in dark conditions, so in conditions that are bright, the disco ball wouldn’t have any movements. In addition, the disco ball turns in reverse circles, so the light can move around the room.


  • Arduino Leonardo
  • Breadboard
  • 2 RGB LED Light
  • 1 servomotor
  • Wires
  • Electrical resistance
  • Photoresistor
  • Jumper wires
  • A box
  • paper board
  • B3 dark color paper
  • Hole Puncher
  • Pencil
  • Scissors
  • Glue (hot glue gun, white glue, etc.)
  • Tape (transparent, paper, double-sided, foam)
  • A compass (optional)
  • Decoration tape (optional)

Step 1: Circuit

*Remember to use jump wires to connect the LED lights and the Photoresistor and use paper tape to secure.

*Individual circuit for Servo/RGB/Photoresistor is provided.

Step 2: Code

*The code includes the change of random colors for the RGB light, the Photoresistor to detect the brightness and the degrees that the servomotor will turn



void setup()





void loop()


Serial.print(analogRead( A0 ));

Serial.print(" ");


if ((analogRead( A0 ) ) < ( 550.0 ))


analogWrite(6 , random(1000.0));

analogWrite(5 , random(1000.0));

analogWrite(3 , random(1000.0));

servo_pin_2.write( 0.0);

delay( 1000.0 );

servo_pin_2.write( 180.0 );





analogWrite(6 , 0.0);

analogWrite(5 , 0.0);

analogWrite(3 , 0.0);

delay( 1000.0 );



Step 3: Make the Disco Ball

  1. Download the template and print it out LINK:
  2. Cut out the template
  3. Prepare a dark-colored b3 paper
  4. With the template, trace 12 of the shape on the color paper
  5. Cut out the traced shape
  6. Fold where the solid lines are drawn and punch 4 or more holes on each cutout paper
  7. Stick all the cutout template one by one together, until you form a sphere using all 12 cut out template

Step 4: Making the Base

  1. Get a box that is big enough to fit in your Arduino board and the disco ball on top
  2. Cut out a smaller circle on the box that fits the servomotor to pop out perfectly
  3. Cut out a small hole for the Photoresistor to pop out too
  4. Decorate the box however you prefer

Step 5: Putting All Together

  1. Put the Arduino board inside the box prepared
  2. From the inside of the box let the head of the servomotor to pop out from the big circle that you cut earlier
  3. Slide the Photoresistor out of the hole, so it can detect the light
  4. Cut out a big circle that is a little bit bigger than the disco ball (About diameter 9cm)
  5. Poke two holes for the RGB light to show
  6. Stick the circle on the servomotor with double-sided tape and foam tape
  7. Use a hot glue gun to stick on the disco ball, and make sure you covered the RGB light

Step 6: Finish!

Test your disco ball!

Be the First to Share


    • Make It Bridge

      Make It Bridge
    • Big and Small Contest

      Big and Small Contest
    • For the Home Contest

      For the Home Contest


    Penolopy Bulnick
    Penolopy Bulnick

    3 years ago

    That turned out great! Thanks for sharing how you made it :)