Introduction: TimeRuler

TimeRuler is a time-space measuring tool, using light-painting technique. It can be used for fun, for measuring high speed movement in different sports or as an educational device for schools.

What you need:

  • Arduino UNO, or similar
  • 13 pcs. 3V ultra bright dome LED
  • jump wire
  • mini breadboard
  • 9V battery
  • plywood
  • wood adhesive
  • glue gun
  • tracing paper, black cardboard, carbon paper
  • silver paint or mirror sheets
  • fretsaw
  • Camera with long exposure function

Step 1: Wiring, Testing

  1. insert 11 LEDs into the breadboard
  2. connect the LEDs anode/longer pins (+) with pin 3-13
  3. connect the cathode/shorter (-) pins to GND.
  4. open Arduino and open the attached code file. If you don't have the software, than download it here.
  5. disconnect the battery, connect the Arduino with your computer via USB cable provided.
  6. take a look at the code to see what it does. When you are testing you can set longer times so you can check if the LEDs are lit up correctly at a perceivable speed.

    int delt=9; //delay time 9 ms - set this to 99
    int blit=0.1; //delay time 0.1 ms - set this to 1

  7. upload the code to Arduino and see the result

Step 2: Making the Box

Build a box from plywood. The assembled box size is 62*85*77 mm (2.44*3.34*3.03 inch)

  1. print the attached PDF file
  2. copy with the help of a carbon paper the red outline on the plywood lid.
  3. copy with the help of a carbon paper the blue outline on the black cardboard and cut out the shapes carefully. Stick tracing paper on the back of the cardboard - this will diffuse the light. These blue lines are inset 1 mm, because it is hard to make precise holes in the plywood.

  4. Cut 15 mm (0.59 inch) wide plywood strips than glue strips around the holes. You can paint reflective silver later or stick mirror sheets - this process helps bounce more light out through the holes.

Step 3: Solder, Mount

  1. Solder the wires to the LEDs, than insulate
  2. Test LEDs by mounting all of them in the right hole. If right, than fix them with hot glue.
  3. glue some black hobby foam strips on the back of the lid, so when you close no light could escape on the edges.
  4. mount a colored piece of plastic sheet inside the longest slit.

Step 4: On-Off

Make a hole, where the Arduino has it's power socket, insert the plug, than mount the battery outside the box with a velcro. I used this this improvised ON-OFF system instead of buttons. to have smoother and faster start. When i push the cable to the plus end, than the animation starts automatically.

Set your camera to a few seconds long exposure with self timer, than paint some light in a dark space. Adjust ISO and aperture until you got the desired quality. Additionally if you want the painter to be visible in the picture you can give him/her a radio trigger, which is triggering a flashlight.

Play, Measure, Enjoy

Thanks for Midlands Makerspace Athlone for the helping me with Arduino.

Make it Glow!

Second Prize in the
Make it Glow!



    • Fix It! Contest

      Fix It! Contest
    • Water Contest

      Water Contest
    • Tiny Home Contest

      Tiny Home Contest

    38 Discussions

    Looks great. This is kind of like the axis labeling function we had on some of the S.W.I.M.s where the tick-marks are included on the across axis (with also bars across the up-down axes). I'm at Instructables P9; are you ever in the city; if so it would be fun to meet and collaborate on this if you happen to visit the city in the next couple of months or so....

    1 reply

    I just checked the gifs from S.W.I.M, they are really good and funny, I can imagine even a video where the song is playing and the waves are dancing accordingly to the song.

    If I will be in US, I will write you.


    1 year ago

    Thanks, I will

    Very interesting concept. Looks great - I'm sure Steve Mann would be interested in discussing with you

    Hi Nikola

    If you open the "_01_deci_seconds.ino" file from this instructables, than in the first lines you can see as comments the LED positioning as pin numbers. For example pin 13 is the top part of the 7 element number. To blink the number 3 the following pins has to be blinked: 13,8,12,7,11.

    Let me know if this helps you.

    // 13
    // 9/ /8
    // 12
    // -----
    // 10/ /7
    // -----
    // 11
    // led 3 static/colored
    // led 4 0.1 time unit
    // led 5 0.5 time unit
    // led 6 1 time unit

    Can you draw witch hole on wood board is meant for witch led diode, by numbers 1-13? I cannot figure it out :\

    I love the word time, as well. People assume that time is a strict progression of cause to effect, but
    *actually* from a non-linear, non-subjective viewpoint - it's more like a
    big ball of wibbly wobbly... timey wimey... stuff.

    -- MS

    A great step forward in time lapse photography! Back in the manual days when there were no automatic cameras or light meters, putting a light bulb on a helicopter rotor was the optimum. Now you have added some computerized icing on the cake.

    The police could use this idea for catching speeders. No longer need the white line on the highway for the airplane. Do away with radar!


    Very nice! And a great hardware project. You could also implement this on a smartphone, if you liked.

    2 replies

    I made some smartphone simulation on the start of this project. You can see one image down in the comments and I attached another one here in which I tried a wave-like display. As you can see there are two cons: phones display refreshing rate is small so only small speed (approx 20cm/sec or smaller) can be used, else you see those dots or blurred elements, the other is that screens black background is not realy black, so that's why you see that purplish background...but definetly will make a small app or something.


    Thanks for the info. That makes sense. Your hardware approach is definitely better, I was just throwing the phone idea out there in case some wanted to try (and you already have!).

    Nice. At the moment you actually have a speed measuring device (the camera kind of measures distance and the device marks out time). You could turn it in to a true distance measuring device by connecting a motion sensor to your Arduino to detect the speed that you are moving at, then make the delay in your .ino file inversely proportional to the accelerometer speed to allow you to actually mark out real distances. I did an instructable (https://www.instructables.com/id/Head-Mouse-Game-controller-or-disability-aid/) which links a 9-axis sensor to an ardiono for turning motion in to mouse movements - it would be pretty easy to adapt to turn motion in to delay times.

    2 replies

    Thanks for your comment. I will research to see how accurate is
    gyroscope in measuring small or bigger distances. I was thinking to
    combine time and distance measuring in one lightpainting device, but was
    sceptical about accuracy of space measurments possibilities in this
    case, but I am amateur in electronics, so probably I will make open
    source this project if there will be some interests in practical use of this tool. The image below can be made with a simple video played on smartphone, or a rotating a bar, which have 7 segment display on the top and bottom.


    Yea, the accuracy isn't ever going to be something you would rely on - I wouldn't cut some timber based on this for example! But I assume you are doing this for fun and because it's cool, so it's more about opening up new opportunities than anything else. Anyway, thanks for sharing your ible - it's a great concept and very nice build work. Definitely given me some ideas :).

    Very cool project!

    You could also consider a magic shifter for that (http://magicshifter.net/) - as far as I know they are Arduino compatible

    1 reply

    I don't know if you can setup exact time for magicshifeter, plus you have LED dots forming letters and lines, which is lower quality. But probably for lower speed it works. There is also this pixelstick (


    ), which is similar to magicshifter.