Introduction: Easy Time Lapse for Most DSLR'S

About: I make things because its fun and I like the challenge.

This is a step by step build guide to making your own intervalometer on the cheap, allowing you to take timelapse footage.

The problem:

I filmed timelapse footage before using my CANON A480 compact camera, which was made very easy using CHDK (the canon hack and development kit) firmware hack. How ever I really wanted the footage to be of higher quality so I wanted to use my Nikon D40.

My Solution:

Most low end DSLR's like mine, have an Infrared remote as the sole external trigger. Other cameras may have pre-made wired intervalometers onsale, but these cost hundreds of dollars. Yet the majority of them have IR remote cabability. This means you can buy a cheap knock off, of your camera's remote and HACK 'IT' UP.






Step 1: Get the Parts

For this easy build you will need :
  1. An IR remote for your make of camera. (this is Crucial for sucess)
  2. An arduino of any type, however the nano is a good size.
  3. A single 2N3904 NPN transistor, yet any comparable NPN will do
  4. One 10K resistor.
  5. PP3 9V battery *
  6. PP3 battery clip *
Extra's that you may want to make it special:
  1. A nice project box or enclosure
  2. Metal toggle switch
  3. L-ion battery pack *

Step 2: Disassemble the Remote

In this step we disassemble the remote. The pictures are self explanitory but here we go:
  1. Remove the battery by removing the battery compartment
  2. Use a small flathead screwdriver or knife to carefully lift the front cover / sticker
  3. Peal back the cover whilst holding the circuit board in place
  4. Use a philips screwdriver to take out the 3 screws that hold the circuit board in place
  5. Lightly pull the circuitboard back to remove it from the case
  6. Admire your handy work.

Step 3: Identifying Contact Pads

In this step you will locate the button contact pads and identify their polarity.

Locating the Pads:
  1. As you can see in the photo the white plastic cover has a small metal disk where the button is located.
  2. Use the cover to find this location on the circuit board and you will find a metal pad divided in two by meandering split. This is the contact pad.
  3. Tape the battery back in place so that the + symbol and text is facing you i.e. up from the board.
  4. Using a voltmeter work out the polarity of the contact pads, one side should be positive and the other negative. If you are having trouble check the voltage across the battery to make sure it is defiantly connected.

Step 4: 2N3904 NPN BI-POLAR JUNCTION TRANSISTOR TIME !

Now you have found the polarity of the pads you can start soldering the transistor in place:
  1. Start by familiarising yourself with each leg of the transistor and note what each one needs to be connected to.
  2. The positive contact pad must be connected to the collector and the emitter must be connected to the negative contact pad.
  3. Bend the legs of the transistor appropriately and solder them in place, Try not to bend them tom much or they will snap. When soldering apply heat for no more than 4 seconds allowing to cool between each solder joint is made.

Step 5: 2N3904 NPN BI-POLAR JUNCTION TRANSISTOR, THE FINAL FRONTIER !

The transistor part is nearly done, just the base leg left:
  1. Cut and strip some wire
  2. Twist the wire around the middle leg of the transistor
  3. Solder the wire in place
  4. Solder the other end of the wire to a 10k resistor
  5. Connect this resistor to pin 13 of the arduino with solder if using the nano.

Step 6: Powering the Remote From the Arduino

To power the remote:
  1. Either solder or just dry connect a wire to the 5v pin on the arduino
  2. Solder this wire to the positve connector on the remote identifiable by a + symbol.
  3. Do the same again  with another wire but this time connect it to the GND pin on the arduino
  4. Solder this wire to the negative connector on the remote identifiable by a - symbol.

Step 7: Power the Arduino

For this step I used a 5V battery pack which I purchased on ebay to power the arduino, however a cheaper option is to use a 9V PP3 battery.

Steps:
  1. Solder the red lead of the PP3 battey clip to the VIN pin of the arduino
  2. Solder the black lead of the PP3 battery clip to the GND pin of the arduino.

Step 8: Programming the Arduino

I have included a basic code for the intervalometer below. Follow the next steps:
  1. Download and install the arduino IDE
  2. Download the code included with this instructables and change the value of X_seconds at the top to set the time.
  3. Connect the arduino via usb and upload the code on to the arduino


The code in text format:

/*
Intervalometer:
Turns on an IR remote on and off, every X seconds allowing you to do time lapse footage.
*/

int npn_base = 13;
int X_seconds = 60; // Set the number of seconds here, only  use whole numbers, such as 1, 30 or 32 but not 31.4 for example

void setup() {               
  // Initialize the digital 13 pin as an output.
  pinMode(13, OUTPUT);  
}

void loop() {
  digitalWrite(npn_base, HIGH);      // Set the LED on

  delay(400);                        // Wait a short time, to allow the remote to react

  digitalWrite(npn_base, LOW);       // set the LED off

  for (int i=0; i<X_seconds; i++){   // A loop that repeats the one second delay X times. X_seconds is set at the top
    delay(1000);}                   
}

Step 9: Optional Extras

When you connect the battery the device should start to run. Make sure your camera is on remote mode first and it should start taking picture by default every 60 seconds.

Optional Extras:

  • To improve your creation try housing the circuits and battery in a nice little project box
  • Add a power switch to save you from plugging and unplugging the battery each time.
  • If your good with code you could try adding a menu system to set the time whilst in the field.
Remote Control Challenge

Second Prize in the
Remote Control Challenge

Pocket-Sized Contest

Participated in the
Pocket-Sized Contest