Revolution (LED Chandelier)




About: I love science, lights and robotics! My dad is a builder so i've always grown up building things, pulling stuff apart and experimenting!

I love lighting, what's more, lighting with mechanical aspects to it. Revolution is a chandelier that does this very thing. It consist of 3 Arduino controlled motors which turn arms, powering LED's in a circular path, creating a "radar" or scanner effect. This instructable will show you how I made it.

* Video coming soon :D *

Step 1: Tools and Materials


  • Soldering Iron / Solder
  • Jigsaw
  • Disk Sander
  • Scissors / Stanley Knife
  • Thumb Tack
  • Hot glue gun
  • Drop Saw
  • Dremel
  • Rivet Gun / Rivets
  • White Out
  • Tin Snips
  • Pliers


  • Cardboard
  • Perspex
  • Aluminium Strip (1M x 3mm x 10mm)
  • Aluminium Tubing (16mm diameter)
  • Wire (Twisted or joined is easier to work with)
  • 3X - DC 3-6V Mini 40 RPM Gear Box Electric Motor (eBay)
  • ~300 LEDs (I bought a 500 pack of white LEDs for $12 on eBay)
  • Heat Shrink Tubing
  • Arduino UNO with motor shield (I used Adafruit V1 - $4 on eBay)
  • Various sized nuts, screws and bolts
  • Epoxy Glue
  • MDF Wood
  • Old pens with springs
  • Chain
  • Spray primer and spray paint
  • Picture Hanging Hooks
  • "Large Central Hook"
  • Copper Sheeting
  • 3 120 Ohm Resistors (Brown Red Brown)

Step 2: Solder Wire to the Motors

Solder the wires to the motor. The polarity does not matter as the different directions will add to the final effect and can also be controlled via arduino programming.

  1. Cover the the terminals with heat shrink tubing.
  2. Finally add 2 layers of heat shrink tubing to the silver part of the motor and some extra off the back.

Step 3: The Circle Pads

You will be making 3 circles of different sizes. The same same dimentions are carried through for the cardboard LED layer and the perspex "aesthetic caps".

Cardboard Pads:

  1. Use a compass to draw circles on the cardboard
  2. Cut these circles out

Step 4: LED Placement

This step details the led rings thats encompass the the cardboard pads.

  1. Use the compass to draw a circle with a radius 5mm shorter than the edge of the cardboard
  2. On this line, piece lightly, a small hole into this line so that half of the point is visible on the other side
  3. Take an LED between your thumb and index finger with the flat side (short negative terminal) facing down
  4. Bend this lead perpendicular to the top, positive lead
  5. Insert the downward facing lead into the hole, applying a small amount of pressure
  6. Slide your finger towards the centre of the circle while pushing on the lead to flatten it against the underside of the cardboard pad.
  7. Repeat this until you finish the whole circle, however, leave a space 2 led's thick somewhere on the circle. This will accommodate the aluminium strip that will hold the circle up.

Repeat steps 1-7 for the other two circles.

Step 5: The Base

This is the base which house the electronics and holds the three arms in place.

  1. Begin with a piece of MDF (mine was spare from another project) and draw two circles, both the same size, 20cm in diameter
  2. Cut the out with a jigsaw and sand them down on the disc sander
  3. Line the two circles up and drill 3 equidistant holes ~5cm from the centre. Counter sink all sides as well
  4. ~1.5cm from the outside AND on a 60 degree turn from the previous holes, drill three more holes on ONE of the circles to a 16mm diameter (the aluminium pipe diameter). I used the sanding drum on the dremel to make it really even.
  5. On MDF off-cuts, make three 5cm x 2cm "supports" and screw them into the plate you made in step 4.
  6. Position the Arduino in the middle of the disk and use off cuts that are hot glued beside the Arduino to make a cradle for it. This allows the Arduino to be easily removed for other projects

Step 6: Attaching Aluminium Pipes to Base

The aluminium pipes connect the disks to the base and allow the motors and LEDs to operate.

  1. Cut three lengths of aluminium pipe with the hacksaw 10cm, 24cm and 36cm long
  2. At one end of each of the pipes, drill a hole through two opposite sides of the pole
  3. On the MDF base,drill a hole straight through the outer edge behind the 16mm holes and into the other side towards the centre
  4. Counter sink the hole in the MDF
  5. Insert the aluminium pipes and screw in a screw that goes through the MDF, then the first hole, the second hole of the aluminium and finally into the MDF base
  6. Repeat for the other pipes

Step 7: Rotating Arms

The rotating arms spin an electrode which comes into contact with an LED, lighting it briefly before it continues on to light the next LED.

  1. Make 3 perspex arms, 5cm, 8cm and 11cm in length
  2. Use the dremel to cut series of holes:
    1. Towards the end, a hole large enough to accomodate the shaft of the gearbox
    2. A grub screw hole which connects into this hole in 1 which allows a screw to grip onto the side of the gearbox shaft
    3. A small hole ~2cm from the gearbox shaft hole which a spring will be fitted to
  3. Also use the dremel at the opposite end of the grub screw to cut an indentation on either side of the perspex to create "T" or an "H" shape.
  4. Thread one of the springs through the small holes made in Step 2.3 and epoxy it in
  5. Loop a piece of wire (I used a paperclip) to make an "S" shape piece of wire which sits in the middle of the "H" or "T" shape. The flare at the end stops this wire from falling off
  6. Solder a wire from the spring to the top of the "S" shaped wire
  7. Finally, put another straight piece of wire at the tip of the spring so it sticks out backwards

Steps 2-7 must be repeated for the other 2 rotating arms

Step 8: Disk Arms

The disk arms hold the perspex and card boards circles up, but does not impede on the rotation of the arms. It also acts to conceal the negative wires for the LEDs.

  1. Cut the aluminium strip into three sections, 16cm, 24cm and 30cm long.
  2. Use picture 2 as a guide for the way the strips are bent.
    • The long bottom flat side is the part which holds the circles.
    • The perpendicular side at the top attaches to the aluminium pipes
    • The curve is aesthetic but it is also bent "customly" the centre the sharft of the gearbox as close to the centre of the cardboard circle as possible
  3. After bending, insulate the bottom curve with elecrical tape to prevent shorting of LEDs and eliminate the risk of them not turning on
  4. Drill two holes (directly inline vertically!!!) in the short flat side of the "disk arm"
  5. Line the bottom hole up on the aluminium pipe at the correct height and drill a hole
  6. Just below this hole, drill another hole to accomodate the negative LED wire
  7. Rivet this hole
  8. Centre the pipe with the arm and drill the second hole directly above the rivet
  9. Rivet this hole too
  10. Install the negative LED wire and motor and run the wires as shown in pictures 11 and 12.

Repeat steps 2-10 for the the other two arms.

Step 9: Fixing Pads to the Aluminium Pipes

  1. Mix epoxy equally
  2. Spread evenly along the top side of the disk arm
  3. Squish the cardboard disk onto the the top side of the disk arm with the epoxy and centre the circle
  4. Install the rotating arms onto the motor shaft and screw in the grub screw (the "S" bent wire should be resting against the exposed positive LED leads
  5. Solder the negative wire to the underside "negative solder ring" and run the wire around underneath the disk arm and secure it with epoxy so it wont move.

Step 10: Perspex Pads

  1. Mix up epoxy equally and spread it along the underside of the aluminium disk arms
  2. Peel the top layer of paper of the perspex
  3. Squish the perspex layer onto the epoxied aluminium and centre the perspex circle with the cardboard circle above it and hold it securely as the epoxy cures
  4. Repeat for the other two disks.

Step 11: Hanging Setup

  1. Take the chain and separate the links to get three lengths of 4 links
  2. Unscrew the top plate on the base and screw them back in but make sure to insert a hanging hook. Do for the other two
  3. Attach a chain to each hook
  4. Connect the ends of all 3 chains to a central hook

Step 12: Painting

I used glossy black spray paint to coat the MDF base, aluminium pipes and disk arms, making sure to not get paint anywhere on the top side of the cardboard circle area of the underside perspex layers.

Step 13: Base External Decoration

I chose to use a piece of sheet metal to give one continuous, smooth surface around the lamp base. This base is not attached but rather sits over the base to allow easy access to extract the Arduino if you want to use it for another project.

  1. Cut a piece of copper using the tin snips 65cm x 7cm
  2. Wrap the sheet into a circle shape and then drill and rivet the pieces together using about a 1cm overlap
  3. Spray paint black
  4. Put this piece around the lamp base so the bottom of the sheet is flush with the lower base. Use the white out to trace a line around the top plate. The result is a white line which may not appear even
  5. Use tin snips to cut out notches from the top to the white line about 1cm wide around the perimeter
  6. Use tin snips to bend these tabs 90 degrees inwards
  7. The base cover can now be slipped over the lamp base without falling off
  8. Apply touch up paint if light areas can be seen

Step 14: Electronics

  1. This step involves wiring the LEDs and Arduino to a single power port.

  2. Solder the 3 resistors in parallel onto the circuit board
  3. The three ends must each power one ring, i.e. the - end of one resistor for each ring, however the + end of the resistors can be joined all together
  4. Reinforce with heat shrink tubing
  5. Solder the + lead of the resistors and a male jack to the female power jack
  6. Install the jack into the top base plate so it exposed on the top

Step 15: The Arduino Code


AF_DCMotor LONG(3, MOTOR12_64KHZ);



void setup() {

Serial.begin(9600); // set up Serial library at 9600 bps Serial.println("Motor test!");





void loop() {

Serial.print("tick");; // turn it on going forward; // motor 2 goes forward as well;


Serial.print("tack");; // stopped; // command motor 2 to stop;


Serial.print("tock");; // the other way; //again for motor 2;


Serial.print("tack");; // stopped; // command motor 2 to stop;



Step 16:

Microcontroller Contest

Runner Up in the
Microcontroller Contest



    • Epilog X Contest

      Epilog X Contest
    • Comfort Food Challenge

      Comfort Food Challenge
    • Cardboard Challenge

      Cardboard Challenge

    5 Discussions

    That turned out really cool looking! I love how modern the design choices are. Thanks for sharing!