Canon EOS 450D triggered by an Arduino
I was finally able to track down a 2mm stereo plug here in Belo Horizonte (Eletronica Guarani) so I can remotely control my Canon SLR from the Arduino.SPDT relay switches, one for the shutter and one for focus. The way it's setup, there's no way I can cross the wires and hurt my camera, even after a few beers. In the photo the black wire is hooked to ground and the blue wire to pin 12 on the Arduino (or Seeeduino in my case). So far I've only used the shutter and have left auto-focus off.
Here's my first attempt of a timelapse movie with this setup:
You'll find the code here. This page helped me figure out to hook-up the plug.
Making the movie is a little tricky on Linux. First you'll need to installed GraphicsMagick (a faster version of ImageMagick):
sudo aptitude install graphicsmagickThen you'll need to downloaded and compile from source mpeg2encode to that it can do the conversion to mpeg (this doesn't come included with GraphicsMagick because of some licensing issues).
Finally to do the conversion you need to go to a directory that has all your photos and execute:mkdir -p ~/tmp cd ~/tmp wget http://www.mpeg.org/pub_ftp/mpeg/mssg/mpeg2vidcodec_v12.tar.gz tar xvf mpeg2vidcodec_v12.tar.gz cd mpeg2 make sudo cp src/mpeg2enc/mpeg2encode /usr/local/bin/ sudo cp src/mpeg2dec/mpeg2decode /usr/local/bin/ cd .. rm -rf mpeg2 rm mpeg2vidcodec_v12.tar.gz
This will convert all the jpg images in the directory to 640x480 and create a new file called movie.mpeg (-monitor is to output the progress).gm convert -size 640x480 -resize 640x480 -monitor *.jpg movie.mpeg
It's a good idea to remember to set your camera to the lowest image quality settings before hand so you don't waste time downloading large images that will be downscaled anyway.