Introduction: Camera Remote Control and Timelapse

Picture of Camera Remote Control and Timelapse

This instructable shows you how to built a remote control for your camera and use it for a timelapse recording.

The software works for different types of cameras: Nikon, Canon, Fuji, Minolta, Olympus, Sony or Pentax. They can all be transformed into timelapse cameras without even opening the housing!

 And the best: it works for a few cent! No Arduinio needed, no need to hack external parts, I don't even need a housing.

Step 1: What You Need

Picture of What You Need
To built this device you need:
  • some breadboard
  • a cheap microcontroller (i.e. attiny85)
  • an IR-LED, a normal LED and two resistors
  • two pushbuttons
  • a battery
optional you can increase the range of the IR-remote control by adding a FET and operating the IR-LEDs at a higher current than what the microcontroller could provide.

Step 2: Schematics

Picture of Schematics

The schematic is quite easy. Only two inputs and two outputs.

I checked the resistor R1 to be 30 Ohm so that 40mA of current flows through the two LEDs. Depending on your LED you can use a smaller resistor or a larger one.

If you don't have, or don't want to use an IRLML2502 you can connect the LEDs like in the second picture shown.
Then you need to check the resistor to limit the current to below 20mA, as this is the maximum of what the microcontroller can deliver. In this case R1, R2 and R3, LED1 and 2 and the IRLML2502 are replaced by the second picture schematics.

Also R5 (10k) is optional, mine works well without, if yours doesn't: Try one.

If you don't want to reprogram the uC, then you can also omit the programming port. You have to program your uC in the programmer and then plug it in here.

Step 3: Build the Board

Picture of Build the Board

with these few parts it is very easy to build the whole device on a breadboard.

You may want to try it on a solderless breadboard first, to test the resistor settings and other things and then finally built it on real breadboard.
The pictures shall give you an inspiration of how I did it.

Step 4: The Software

Now you need the software to program to the attiny 85.

What the software does is the following:

Right after you apply some power to the device, the status-led flashes two times. Then it waits.
Now you can chose: if you press the timelapse button, you can increase the timelapse interval. For each button press, the interval is extended by 10s. But not more than 60s. This is because a lot of cameras have an auto-shutdown implemented and if there is no user action for 60s they will shut themselves down. Each press on the timelapse button is confirmed with a little flash of the status led.
When you press the trigger release button, the timelapse starts and at the end of each interval the IR-code will be sent out to trigger the shutter of the camera. Before starting, the status-led flashes as many times as the button-press was registered. And while waiting the led flashes each second. This shows you that you are in the timelapse mode.

But you can press the trigger release button at any time and the IR-code will be sent out. Once the trigger release button was pressed, there is no way of adjusting the timelapse any more! You have to disconnect the battery or install a reset button and start a new.

About the programming:
I now use a special one wire bootloader to programm my microcontrollers. You can find the documentation and the sourcecode here: AVR Bootloader FastBoot von Peter Dannegger

This has several advantages:
  •     you don't need a full 6 or 8-pin programming interface (socket, cables ...)
  •     it works very fast, sometimes even faster than the ISP.
  •     You can use nearly every pin of the uC for programming.
  •     You have more pins free for other  jobs.
The only disadvantage is: The bootloader itself takes 512 Bytes of your flash memory, which cannot be used by your application. But with 8kB of memory I have a lot of left.
The bootloader has to be programmed once for each chip. Maybe I can make a tutorial on this if there are a lot of questions. But it was not my work, I just use it as it is and can only thank Mr. Dannegger for his work!

Step 5: Use It!

Picture of Use It!

Check your camera manual how to enable the remote control and then just use it! The picture is a combination of five pictures taken from different distances from the camera. With a new battery my control works up to a distance of 10m.

I plan to use the timelapse feature on the next nightly thunderstorm. I only have to adjust the camera to use 8s of exposure time, close down the aperture to f4 and use the timelapse with 20s, because it takes another 8s to save the picture taken. And then I only have to wait. ;-)
You can use it for cloud evolution, for flower blooming up and many things more. It is only limited by the battery of your camera and the size of your storage card.


vitvas (author)2016-09-13

What clock speed is used in the project?

andyk75 (author)vitvas2016-09-14

Hi Vitvas,

good question. Actually I don't know it any more.

But because no external clock-source is used, I would guess it was 8MHz.

You might have to try it on your own...

vitvas (author)andyk752016-09-15

Thank you for quick response!

FabianG1 made it! (author)2014-12-05


Thank you for making this instructable! I have successfully build my own Remote for my Nikon D7100 camera. The Intervalometer is not neccessary for me, the D7100 has this feature build in.

I have made some changes to your code, and put it on my github. Credit is given and license is the same as yours. I have added a makefile, so now its easier to use for beginners! Here is the link to the Repo:

If you are not comfortable with this, please contact me!

By the way: for me it works quite fine with an BC337 Transistor. I do not even use a current limting resistor. The IR LED is able to survive this peak current for the duty cycle.

If you are not comfortable with this, please contact me!


andyk75 (author)FabianG12015-01-24

Hi Fabien,

this is a nice little thing that you built there!
I'm totally fine with your code on Github.

I'm glad that this instructable was helpful.


ggv2 (author)2015-01-22


Why did you switch to 2 IR LEDs board? Did it work with one IR LED?

valasoft (author)2013-10-11

sorry but i didn't understood how we trigger camera shooter by this circuit ,

andyk75 (author)valasoft2013-10-11

This is a remote control for a nikon camera. You have to activate IR-remote-Control in the camera-menu and then use this device to trigger the camera.
With another software you can also use it for other types.

Lyron (author)2013-06-28

This is a really nice project, but sadly your code doesn't work with Canons. You might want to take a look at this website: . I tired their code and it worked.

About This Instructable




Bio: I like to explore new things and try out stuff. At the moment I'm in to electronics, BLE and LEDs.
Add instructable to: