Introduction: Time-Lapse Photography
Hacking an old digital camera to take time-lapse picture sequences is fun and easy. All you need is some basic electronics skills and a little bit of patience.
I am using an Arduino (Atmel168 development board) as the time-lapse controller, but you can use any micro controller.
This was originally made for Day 5 of Thing A Day.
Step 1: Go Get Stuff.
You will need:
1 - digital camera
1 - small 2-pin socket
1 - 5V relay
1 - Arduino (or other micro controller)
(Note that some of the links on this page are affiliate links. This does not change the cost of the item for you. I reinvest whatever proceeds I receive into making new projects. If you would like any suggestions for alternative suppliers, please let me know.)
Step 2: Open the Case.
Carefully open the case. Be sure not to break or unplug anything.
Step 3: Press My Buttons
Locate the button you press to take a picture. Notice the little metal tabs to each side of it. Begin connecting these tabs with a short piece of wire until you take a picture.
Step 4: Socket to Me.
Make sure when placing your socket that you have enough room for both the case to close and to rip a hole in the side of the case to poke the socket through.
Step 5: I'm Sticking With You
Step 6: Close the Case.
Step 7: Relay
Step 8: Plug and Play
Plug the relay coil pins to Pin 7 of the Arduino and ground on the Arduino. The relay coil pins are the two pins that aren't towards the ends of the tube.
The two pins towards the end of the long tube go into the socket pins in the camera. It does not matter which wire goes in which socket pin.
Step 9: Programming
Now is time to program the Arduino and test your setup.
Follows is my code:
/* Time-Lapse Camera Controller
- ------------------
*
- Hits a camera shutter at a set interval
- for time-lapse photography. The rate of the
- delay can be manipulated for unique effects.
*
- Created 5 February 2008
- by Randy Sarafan
- http://www.randysarafan.com
*
*/
int camPin = 7; // sets the camera shutter pin
int stupidvar = 30000; // sets the delay between pictures
void setup()
{
pinMode(camPin, OUTPUT); // defines pin as an output
}
void loop()
{
digitalWrite(camPin, HIGH); // presses the button
delay(5000); // waits
digitalWrite(camPin, LOW); // release the button
delay(stupidvar); // delay between pictures
// stupidvar = stupidvar + 1000 // increments delay by one second for unique effect.
}
Step 10: Try It Out
Take a couple of pictures in sequence and see that it works.
Did you find this useful, fun, or entertaining?
Follow @madeineuphoria to see my latest projects.