Controlling a servo for time lapse photography.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Time-lapse photography

This project aims to allow a DSLR camera without native time-lapse movie support, to take pictures programmatically.

Update (10/10/2017)

Originally, the project tried to use a servo controller to physically depress the shutter button as a way to control the camera. The code for this strategy exists in, but work going forward now focuses on controlling the camera using existing command line packages (gphoto2).


This project makes a few assumptions that you'll need to meet if you'd like to run this project yourself. Check the list of hardware at the bottom of this README to make sure you have the required hardware. This project runs using a first generation Canon 7D digital SLR camera, but other camera models will work if they can be controlled with gphoto2. You can find a list of compatible cameras here.

This project assumes you have a Raspberry Pi that you can connect to as the default user pi. If you're new to using a Raspberry Pi, you may want to check out the offical setup guide.

Once you're connected to the Raspberry Pi, clone the repository by using the following commands:

cd ~
git clone

Change into the new directory you just cloned:

cd timelapse-dslr

servo-control (obsolete)

This project used to control a micro servo (sg90) to press a remote shutter release button. This enables programmatic time-lapse photography with a DSLR camera. The code for this method still exists in but is no longer actively developed.

Hardware Used:

Used in obsolete version of the project:

Servo pushing remote shutter release button