This project originally started out with a few simple parts thrown together to create a very simple time-lapse controller for a DSLR camera. After I was happy with the initial prototype, I wanted to make a final version which the programming of the "lapse time" was self contained into one single entity instead of relying on a computer to re-program and change the delay between shooting sessions.

After adding in a display, a couple of buttons, and a more complex program, the self contained Arduino powered Time-Lapse Controller was born!

I have tried to make the instructions as clear and user-friendly as possible, but if any questions arise, feel free to ask!

Step 1: Parts

- Arduino
- 7 Segment Display
- 220 Ohm Resistor x2
- 10K Ohm Resistor x2
- 470 Ohm Resistor
- Hookup wire
- NPN Transistor
- 3/32 Phone-jack
- hookup wire
- mounting surface (i.e. perfboard, breadboard, PCB)

<p>Fall is here and my transistor would not turn off (close) at low temperature. Also it seemed to have trouble after a few hundred shots... Either way, after building two of these I finally just replaced the transistor with an optocoupler (817) recycled from an old monitor and a 220 Ohm resistor to protect the LED side from PIN13 power and threw it in the refrigerator overnight. So far so good. (I also changed the code to show thousands.) If it keeps working I may streamline the form factor and do a separate Instructable. </p>
<p>Glad to hear about the improvements that you have made. I haven't &quot;stress tested&quot; my setup so I am glad that you have found some of the bugs, and solutions. Send me a link of the improved design when it is up. </p>
<p>First shot using the timer. North Star is on the left. If this doesn't upload in HD, you won't be able to see the stars. Clip is 6 seconds with 187 frames collected over 109 minutes (battery died). Images Batch adjusted for levels in Photoshop then compiled with GoPro Studio. (Fingers crossed for HD...)</p>
<p>Those results look amazing!</p>
<p>Update - Finished connection to camera. A few unusual items - I found that on my Digital Rebel T3i that mic jack pin 3 (tip) to ground (base) is focus and pin 2 (middle) to ground (base) is shutter. The focus and shutter were independent. I added another push button for the focus and left it unattached to the shutter. Basically, I suggest shorting tip and middle to ground while jacked into your camera to see what does what before final wiring. </p>
<p>A perfect example of testing your hardware and the differences between cameras. </p>
<p>The hacker3455 Time Lapse Shield! The 3 digit LED is in a socket so I can remove it and use it elsewhere. (Note - With the Uno I had to protect some of the connections on the back with hot glue. Strange things would happen if the power connection touches the 6 pin set at the center board edge.)</p>
<p>Your final product looks amazing! By tweaking the code, you can definitely utilize all three displays. I am glad that you found my documentation helpful in your endevors. </p>
<p>Thanks hacker3455! This is my first non-packaged Arduino project. (I've loaded gimbal controller scripts before, but that's it.) and it works great! So for those that don't know, the setup basically shorts the Remote 3 pin to ground, which means &quot;take a picture&quot; to most cameras (an analog feature, to do focus and stuff you need to be able to send camera specific commands - if your camera has those features). I haven't set up the 3/32 Phone-jack yet, but I'm familiar with Remote/Lanc analog functionality. I testing the switching operation, which gives a connection every 5 or 10 or whatever seconds (I tested 5 and 10 seconds so far). I only had the 3 digit display, so I used that - using the center 7 LEDs. I assume I could set it up to display the duration between shots (all 3 digits) or something. The goal is time-lapse of stars spinning over a mountain, so I'll need the extra time for long exposures. (I'm aware that stars will smear in a photo longer than a few seconds, but I'm just trying to get started. Plus I can catch planes and meteors too.) The pictures below are the 5 second input and then I caught one of the &quot;short&quot; actions. </p>
<p>Hi! So it sounds like you can do any interval? So 2.5 min is okay? </p>
<p>With my given code, the interval can be set from 1 sec up to 10min 39sec (9min 99sec).</p>
<p>Hello, I'm putting together my stuff, i have one question. Step 4, what is that mmm.. button? and you labeled as they should be connected to pin 3 and 1. I don't get that part, PWM pins?</p><p>Thank you, nice project.</p>
<p>The parts used in step 4 are as follows:</p><p>NPN Transistor</p><p>3/32 phone jack</p><p>470 ohm resistor</p><p>The third contact of the phone jack is connected to pin 13 of the arduino. Hopefully that answers any of your questions.</p>
<p>Thank you. </p><p>I mean the black square with a grey button. What is that? is that connected to the NPN?</p><p>Thank you. </p>
<p>I believe you are referring to the 3/32 phone jack. For more details no how it is connected, refer to the schematic in step 1.</p>
<p>For This Project/Circuit, which cable is used to connect NIkon D3200 camera ?</p><p>Is It Compatible With NikonD3200 Camera Model ?!! </p>
<p><a href="http://www.instructables.com/id/Nikon-D90-MC-DC2-Remote-Shutter-Hack/" rel="nofollow">http://www.instructables.com/id/Nikon-D90-MC-DC2-R...</a></p><p>This instructable will point you in the right direction concerning pin-outs and cables.</p>
I am new to Arduino and this looks lie a really cool project to try for myself! A couple of questions: <br>- which NPN transistor are you using here? Radioshack has a whole bunch of them. <br>- I can't find this 2/32 phono jack anywhere online (including Radioshack) - is it known by a different name? <br>- can you please provide a schematic of this so that I can build the prototype on a breadboard first?
1. Bipolar 200mA 40V NPN <br>2. That was an error on my part, it was supposed to measure 3/32 <br>3. A schematic is now included in step 1
I am new to Arduino and this looks really cool to try for myself! A couple of questions: <br>- which NPN transistor are you using here? Radioshack has a whole bunch of them. <br> - I can't find this 2/32 phono jack anywhere online (including Radioshack) - is it known by a different name? <br>- can you please provide a schematic of this that I can build the prototype on a breadboard?
Awesome! I'm currently working on a motorized timelapse dolly. I found a thrown away giant Epson printer. The machined aluminum slider inside is perfect. Fantastic ible, I will probably be referencing it during my project.
Nice bit of work, voted, and Blogged it: <br>http://faz-voce-mesmo.blogspot.pt/2013/08/prata-e-cera-em-3d-um-arduino-para.html
Very, cool liked it. <br>Already you are in the business of programmatically as well, you will be able to develop a fuel gauge for automobile, with a display similar to this, show how many gallons of gas in this tank?
Gas tanks and gauges work together in a somewhat similar way a potentiometer and an Arduino work togeather, one is variable resistance and the other reads that resistance. It could be possible to make a display to show the current number of gallons in a tank, but it would take a good amount of work.
Yeah I know, the truth of the very same work. I just figured you had a simpler way of doing. :-D
Very nice work. <br>Just one improvement: you should use the standard naming convention of &quot;a,b,c,d,e,f,g&quot; for the 7-segment display, so that your code will be more clear. <br>Have a look here: http://en.wikipedia.org/wiki/Seven-segment_display <br>
I decided to forgo the standard naming convention due to possible confusion that could arise from different components and different pin-outs, but to instead go for the visual route of the reference sheet which could be easily made and used.
Very nice work. I agree with flevin58 that you should use the standard naming convention for 7-segment displays (and take advantage as using your learning as a teaching opportunity for your audience). Also, for the two switches you can eliminate the resistors if you use the internal &quot;pull-up&quot; resistors of the AVR chip on the Arduino. The resistors you are using are being used as &quot;pull-down&quot; resistors so the logic in your code should look for the switch pin states to go LOW instead of HIGH if you change to &quot;pull-up&quot;. <br>See http://www.youtube.com/watch?v=jJnD6LdGmUo for a decent video about floating pins.
True, but ML is only available for Canon cameras, and certain models at that. hacker3455's solution is adaptable to any camera. Great job hacker3455.
Thanks for the support
Seems nice! But have you heard of Magic Lantern software for Canon cameras? With that you are also able to shoot intervals and you can take pictures in bulb mode for hours you should check it out!
I can only agree on that, and ML comes with tons of options (bulb ramping, focus ramping) you won't, and will never get with this (due to a lack of a interface to those options. On the other side: it's fun to have made this kind of controller yourself and actually use it.
I would need to do a bit more research in it, but I believe that pin two handles the focus of the camera. And possibly through some PWM one could pull off effects such as focus ramping. Then again for me a physical piece of hardware is a bit more exciting.
Great detail! love this. <br>
Great augmented graphics
Glad to hear it was worth the extra effort

About This Instructable