Introduction: Very Easy and Simple Timelapse Controller for Canon Eos Dslrs With Arduino
Arduino (I use freetronics leostick)
a remote plug for your camera
a 4x AA battery pack
3 position switch for version 2
Step 1: Connect the Battery and Relay
Connect the battery pack negative terminal to the GND pin on the arduino, and the positive to the +5V pin.
Now connect the coil pins of the relay to the GND and digital 6 pins on the arduino.
Connect the plug for the camera to the relay as shown in the diagram. Make it so without power to the relay, the remote circuit is broken.
Step 2: Upload the Code!
Upload this code to take a photo every 3 seconds.
change the frame interval on the first line for different settings.
int frameInterval = 3; // Delay between pictures (in seconds)
int shutterPin = 6; // Reed relay on digital pin 6
int ledPin = 13; // LED connected to digital pin 13
pinMode(shutterPin, OUTPUT); // Set the shutter pin as an output
pinMode(ledPin, OUTPUT); // Set the LED pin as an output
digitalWrite(ledPin, HIGH); // Turn on activity LED
digitalWrite(shutterPin, HIGH); // Turn on shutter relay
delay(500); // Hold the button for 1/2 second
digitalWrite(ledPin, LOW); // Turn off activity LED
digitalWrite(shutterPin, LOW); // Turn off shutter relay
delay(1000 * frameInterval); // Wait the required interval before repeating
Now it should trigger the relay and camera every 3 seconds. The relay should be on for half a second and turn off, wait three seconds and turn on, it will do this until the battery runs out.
I will post a sample video on my youtube channel and my website
Step 3: Put It in a Box
Put it in any box you want.
Step 4: USER MANUAL
1) put the batteries in the holder
2) Wait for the arduino to boot up
3) listen for the relay, hear if it clicks at the desired interval
4) lock the exposure on the camera
5) plug into the camera
6) let is go for as long as you want.
7) use your favorite program to put the stills into a video.
Check out a youtube video I have done with this
Step 5: UPDATE -------Version 2
Connect everything to the board as normal but add a 3 position switch to change the time from 2 seconds to 5 seconds.
Centre pin to ground and the two side pins to D3 and D2
Use this code, done by Thenerdling.
int relay = 6;
digitalWrite(3, HIGH); // turn the LED off by making the voltage LOW
digitalWrite(2, HIGH); // turn the LED off by making the voltage LOW
if (digitalRead(2) == LOW) // is the button pressed?
if (digitalRead(3) == LOW)