Batman LED Nightlight & Clock (Arduino)

Introduction: Batman LED Nightlight & Clock (Arduino)

Some years ago, I received some quartz clock movements and made a clock for each of the kids.

Inevitably, our youngest now also wanted a clock, and was adamant that it should be a batman clock!

I was keen to make it something 'more', so thought that it would be good to backlight the Batman logo to make it look like the call-sign we see cast against the clouds in the movie.

It has worked a treat! As is often the case, especially with light effects, the images in this instructable don't to it justice, but it looks great on the wall at night.

Materials needed:

  1. Quartz clock movement
  2. 9mm MDF, approx 700mm x 300mm (thinner cuts would also work, as would plywood - we basically used what we had in the garage)
  3. Shorter sticks of wood, approx 15mm square (but you could also use other off-cuts of the wood above)
  4. Primer paint, sandpaper and matt black paint
  5. Wood glue and hot glue


  1. WS2812 led strip (we used a 1-metre strip at 60 leds / metre)
  2. circuit board
  3. 8 pin IC socket
  4. 2x trimmers or potentiometers (we used 50k Ohm)
  5. Light dependant resistor
  6. 300 - 500 Ohm resistor (we used 470 Ohm)
  7. Atmel ATTiny85 chip (but any Arduino would suffice)
  8. 100uF Capacitor (not necessary if using an Arduino board)
  9. 1000uF Capacitor
  10. USB socket (or some way of applying 5V to the circuit)


  1. Jigsaw or scroll saw
  2. Soldering iron
  3. paint and sanding tools

Step 1: Choose a Design, and Cut Away!

I did a quick google search for 'batman logo'.

When we settled on a design, we enlarged it to approximately A3 size, and used it as a template on an old off-cut of 9mm MDF board. Using a jigsaw, we cut out the shape and it quickly started to take shape!

Step 2: Preparation, Sanding and Painting

To get a good finish, we sanded down all the edges, and 'deburred' and rough parts left by the jigsaw.

Two coats of primer with sanding in-between were all that was needed to provide a solid base for the black top-coat. i did the painting with my son as a fun (if messy!) thing to do together.

Step 3: Preparation and Clock Mounting

We used old off-cuts of approx 15mm deep wood to stand the batman clock off the wall.

Using a 10mm drill in the centre of the logo, we mounted a quartz clock movement, and using a 7mm drill we counter-sunk a hole to accommodate the light dependent resistor. Be careful to mount it sufficiently far from the clock to avoid the hands sweeping over the sensor and triggering a 'dark' condition that would switch on the lights!

Step 4: Mount the LED Strip to the Back of the Clock

We used WS2812 addressable led strips, but any LED strip would suffice.

The advantage of the addressable leds is that you can change the colours and intensity per led. Ultimately, we wanted the logo to appear to have 'fire' behind it, so varying the colour of the leds was desirable in our case.

The first step here was to distribue the 1m led strip around the circumference of the clock. We cut the strip at appropriate intervals, and glued the segments to the back of the clock using hot glue. Be careful to observe the arrows on the led strip - they should point in one continuous direction from one section of strip to the next!

Once glued, we soldered the strip segments back together using connecting wires to restore the circuits we had broken by cutting the strip.

Step 5: Create the Control Circuit

We used an Atmel ATTiny85 to control the clock, but any Arduino will do. Indeed, we tested the circuit initially with an Arduino Nano.

The instructions for the addressable led strip recommend a 1000uF capacitor, and a 300-500 Ohm resistor between the Arduino and the strip.

Following this guidance, we also used two potentiometers to allow adjustment of the brightness and light level at which the LEDs illuminate.

The first potentiometer was wired as a voltage divider, where the Arduino input was connected to the centre. Adjusting this trimmer allows us to send a signal between 0V and 5V to the Arduino, which it can interpret as the brightness desired

The second potentiometer was wired in series with the Light Dependent Resistor, to allow us to alter the light levels at which the night light element of the clock switches on.

Finally, we used a USB socket as power source, and a 100uF capacitor across the ATTiny chip to protect it from noise. The Fritzing files attached hopefully make sense of the circuit.

Step 6: Writing the Program

I wanted to create 'flares' of red along the led strip that I wanted to generally be yellow.

Using the attached spreadsheet, we devised a calculation to create the smoothly increasing and decreasing intensity of red along the strip. Watch the video to see the effect.

I use a standard Arduino Uno to upload the code to the ATTiny85. Make sure to bootload it to 16MHz to get a decent effect. I used this excellent tutorial to make an ATTIny programmer using standard Arduino tools. - Feel free to use the attached Arduino code file as a start.

Although I used the ATTiny, any Arduino will work - Uno or Nano are both a whole lot easier out-of-the-box than my chosen option, but at less than £1 each for the ATTiny85, it's too much of a bargain to ignore this little chip. ;-)

We programmed the unit to switch on when it becomes dark and off again when it becomes bright.

Also, after two hours it automatically switches off and waits until it is bright before it will trigger to a darkness again. In other words, after two hours of switching on, it waits until 'morning' time to re-enable the trigger, which it is likely to see at the next night time.

Step 7: 'Commissioning' the Nightlight

We found that the night light was initially too bright, so we trimmed it down using the brightness potentiometer.

The other thing that needed adjustment was the light level at which the nightlight switches on and off. Using the second potentiometer, we waited until night time, and configured it such that the LEDs came on when the light was off, and switched off when the bedroom light was on again.

Finally, know your volts! - A USB power meter such as that pictured is a handy little tool to check the power being drawn. At full brightness, ours was drawing over 1A (i.e. > 5W), which is beyond the capacity of some USB chargers. With the brightness reduced, the power drawn fell to about 200mA, well within the capabilities of most phone chargers.

If you want to make something similar, I hope you find this guide useful - Enjoy!

Step 8: The Finished Product!

The flaring effect of the LEDs worked really well, and provides a little animation that might give the impression of light cast against clouds passing. The beauty of using addressible leds is that you can vary and change the efffect as you please!

Be the First to Share


    • Pi Day Speed Challenge

      Pi Day Speed Challenge
    • Trash to Treasure Contest

      Trash to Treasure Contest
    • Microcontroller Contest

      Microcontroller Contest



    2 years ago

    That's really nice. The glowing effect is cool. Good work.


    2 years ago

    This turned out looking great. Nicely done!