Progress Bar Clock

by danieljacobpatterson in Circuits > Arduino

50 Views, 0 Favorites, 0 Comments

Progress Bar Clock

83adafb9-301b-474e-827b-91c55fbc58aa.jpg
Progress Bar Clock

This is my first instructable! :) I decided to make a clock from scratch with my arduino uno and some LED's. I realized there weren't going to be enough inputs, so I would have to be clever. I love video games, so I came up with the idea to make a progress bar for the hours. I have almost no experience with arduino code, so I built the entire thing using the most basic LED instructions. There is probably a better way, but after a long session with TinkerCad, I was able to simulate a working model. I was just happy to be able to create something from scratch, without copying anyone's work. I designed the clock body from scratch as well. I recycled the LED's from an old string of Christmas lights. Each section of the progress bar represents 10 minutes. The green lights barely show up on my video (my camera has a big blue light that shines on the subject and kind of overpowers), but you can see them much better in person. If you are careful, you can do a much better job than I did lining up the lights.


This is my first TinkerCad project too. Check out -The progress bar clock

Supplies

WIN_20251121_14_11_42_Pro.jpg
WIN_20251121_14_10_57_Pro.jpg
  1. Arduino Uno
  2. Printer
  3. Cardstock (or other thick paper)
  4. Scissors
  5. Glue stick (or other paper glue)
  6. Electric Tape
  7. Wire
  8. Old LED Christmas lights
  9. Resistors (I have run out, so I am not using them here, but they will help protect your LEDS)

Preparation

WIN_20251121_14_12_50_Pro.jpg
WIN_20251121_14_51_25_Pro.jpg

Gather Supplies. Get a nice work area ready. Find a good string of old LED Christmas lights. Get your tools out and dust off the old desktop printer. Download the documents in this project.

Recycle LEDS

WIN_20251121_15_12_51_Pro.jpg
WIN_20251121_15_11_57_Pro.jpg
WIN_20251121_15_17_31_Pro.jpg
WIN_20251121_15_32_44_Pro.jpg

Salvage the LEDs. Cut the wires in between the lights, giving yourself enough length to work with later. To test the lights, use your arduino. Attach one wire to the 3.3v, and the other to the GND. If it doesn't light up, switch the wires. This will allow you to sort the colors, as well as discover which side is the cathode (+) and which is the anode (-). Keep track of which is which by taping down one side.

Print and Cut Out the Template

progressclock.jpg
WIN_20251121_15_40_18_Pro.jpg
WIN_20251121_15_41_46_Pro.jpg
WIN_20251121_15_49_30_Pro.jpg

Print out the template. Make sure the image stretches all the way to fit the page, or your parts may not fit in the final box. Cut the pieces out according to the picture and save the scraps. We will try to use almost the whole piece of paper to reduce waste. I designed this template using old sierra print artist software and MS paint. Feel free to open them in a graphic design program to change the fonts. I used "Black Ops 1" for the typeface, but the clarity went down after transferring the image.

Assemble the LED Panels

WIN_20251121_15_53_39_Pro.jpg
WIN_20251121_15_55_22_Pro.jpg
WIN_20251121_15_57_34_Pro.jpg
WIN_20251121_15_59_27_Pro.jpg
WIN_20251121_16_02_18_Pro.jpg
WIN_20251121_16_02_24_Pro.jpg
WIN_20251121_16_03_07_Pro.jpg
WIN_20251121_16_04_11_Pro.jpg
WIN_20251121_16_46_17_Pro.jpg
WIN_20251121_16_43_29_Pro.jpg

Take the printed panels and fold them in half, right across the center of the red circles. Cut out the holes and unfold the panels. Gather the LEDs you chose for the progress bar. I chose green because it felt right for a progress bar, and for the hours I chose 6 white and 6 blue. I decided that the AM/PM lights would be nice in red.

Poke the LEDs into the holes you made in the panels. Twist all the ground wires together (the cathode side) and attach them all to make one ground wire. Use the electric tape to help hold the lights in place but don't cover the big white rectangle on the panel that will be the progress bar. This will allow the light to shine through. Use some tape to keep the wires in order, you can always remove it later.

Assemble the Clock Body

WIN_20251121_16_51_58_Pro.jpg
WIN_20251121_16_53_55_Pro.jpg
WIN_20251121_16_53_33_Pro.jpg
WIN_20251121_17_09_16_Pro.jpg
WIN_20251121_17_08_42_Pro.jpg
WIN_20251121_17_09_48_Pro.jpg
WIN_20251121_17_10_10_Pro.jpg
WIN_20251121_17_12_35_Pro.jpg
WIN_20251121_17_13_21_Pro.jpg

Fold and glue the box together. We will use the scraps as extra supports. Work from the back of the box to arrange the layers. Put the hours light panel in.

Add some rolls of black tape to help hold the arduino board to the back panel.

Wire It Up and Program

Screenshot (31).png
WIN_20251121_17_32_17_Pro.jpg
WIN_20251121_17_36_10_Pro.jpg
WIN_20251121_17_38_18_Pro.jpg
WIN_20251121_19_12_16_Pro.jpg
WIN_20251121_19_36_23_Pro.jpg
WIN_20251121_19_37_03_Pro.jpg
WIN_20251121_19_46_09_Pro.jpg
WIN_20251121_20_24_26_Pro.jpg
WIN_20251121_20_26_15_Pro.jpg
WIN_20251121_20_28_47_Pro.jpg

Attach the wires to the board. The LED anode side (+) will go into the board. To keep it simple, I programmed the LED input number to match up with the hours of the clock (for example, the LED 11 lights up the 11th hour on the clock). I ran more electric tape along the inputs to help secure the wires.

Fold the progress bar panel and wedge it in above the hour panel. Close the box a little bit then wire the other side. Close the box the rest of the way and seal it up carefully. Attach the USB and upload the test code to your board. If you are planning to use a power adapter, cut out a hole for that above the USB cutout.

Test the Clock

WIN_20251121_20_26_55_Pro.jpg
Screenshot (32).png

Try the test code to see if all your lights are functioning. This will run the lights at a much faster speed, to see if the lights are in order. If so, upload the final "progressbarclock" code. Unfortunately, there is currently only one way to set this. While powered up, press the arduino reset button at exactly 1pm. Enjoy your new progress bar clock!


This is just a fun example, not to be mistaken for a permanent clock that you would run all the time. If you wanted to make a serious version, consider soldering the connections to a breadboard and making a bigger case. You could make a rigid case if you have woodworking tools, or a 3d printer. If you have any clever ideas on another way to set the clock, or any other code improvements, please comment. I would love to learn more. Thank you!