Nikon IR Remote Shutter Release
This page describes building a IR remote shuttle release for the Nikon D70s digital camera (compatible with the Nikon D70 and possibly others). The equivalent commercial product is the Nikon ML-L3 remote control. It can be used to trigger the shutter for self portraits as well as for long 'bulb' exposures.
My project uses a Microchip PIC 12F675 microprocessor to produce the coded infra-red(IR) signal to trigger the camera. The only other parts required are a battery (I used a 3V coin battery), a switch, a resistor, and an IR LED. The result is a pretty cheap project (only about $6 for the parts).I would like to thank BigMike who published a similar project based on the AVR micro-controller and published the IR code sequence needed for the Nikon camera. My version uses a few less parts but BigMike's final result looks a lot more professional than mine.
The following page describes the circuit and firmware for the project.
Warning: While the chances of damaging your camera with this project are slim, please be cautious. The following project worked for me but you are responsible for your actions and I make no guarantees of success or that you won't hurt yourself or damage equipment as a result of the content of this page.
After using this device for a while, I've discovered a couple of
- It only works up to about 10ft/3m - this can probably be increased by getting a more powerful battery and/or using a smaller resistor (more power to the IR LED).
also does not work reliably at less than an inch which makes it tricky
to trigger shots where you (and the device) are not in the
photo. In other words, it is hard to reach over the camera
and trigger the shutter if you are doing a long exposure. I
have not investigated the possible causes for this - perhaps the IR LED
I'm using has a narrow beam which does not reliably point at the IR
detector on the camera
following diagram shows the
circuit for the project. Basically, the switch is used to
apply power to the microprocessor. An output from the
microprocessor is connected to the IR LED via a current limiting
resistor. I used a 330 ohm resister but this could be changed
depending on power supply and on the IR LED used. The
microprocessor can operate on any voltage between 2V and
soon as the switch is closed, the microprocessor powers up and sends
out the coded IR signal to the camera, before powering off.
power up sequence is almost instantaneous and this method saves battery
power over having the processor in stand-by waiting for a trigger and
is simpler than having a separate on/off switch.
I placed the electronics inside a 2xAA-battery box that I found at a local electronic surplus store. Conveniently it came with a power switch and a little hole originally for the wires but that I used for the IR LED.
The microprocessor, the
12F675 from Microchip,
has only 8 pins and
runs off its internal 4Mhz clock. In this configuration,
than the power pins (anything between 2.0V and 5.5V) all the remaining
6 pins are general purpose IO pins. Since the processor can
source up to 20mA from a pin, I can power the LED directly from an
output (via a current limiting resister). This has the
of allowing a very low parts count. I mounted the
in a socket so that I could easily remove the processor for
re-programming if necessary.
The firmware for the microprocessor is pretty simple. When power is applied, the processor does a few set up operations and then begins sending out the IR code to the camera. The IR sequence was decoded by BigMike. The IR is modulated at 40kHz and consists of the following pulses:
2250us on (40khz modulated)
27600us off (no signal)
-- repeated a second time after 63ms
Update: A visitor to this page has found that shortening the 650us pulses to 530us and lengthening the off pulses has improved the triggering of the camera. Thanks Nick
Update (Nov 8, 2006): Another visitor (thanks Michael) has measured the signals from the ML-L3 (Nikon's IR remote control) and come up with the following timings using a 38kHz modulation. I have not tried these timings so please let me know how they work:
27.8ms off (perhaps 28.0ms)
0.5 ms on
repeated after a 63.0 ms pause
Here are some photos of the project.
The battery box before modification
The circuitry: battery, the power switch and the circuit board
The circuitry packed into the box
The finished project showing the switch on top and the LED poking out the front
Test photo taken using the remote control
This was a nice quick project. I have not fully tested the range of the device but it works well at 10ft from the camera. It would also be relatively easy to modify the device as mentioned by BigMike to add long distance wires for remote trigger, or modify the code to fire the camera on a repeating basis, or cause it to be triggered from some automated source.
Also check out Magnus Stromqvist's similar project for the Olympus C-4040z digital camera. He includes a self timer and multiple photo feature.
ChangesWritten: May 2, 2005
Changes: 2005/05/16 added more on programmer, a warning and limitations; 2005/06/10 - fix processor part number 12F765->12F675 (thanks Pierre); 2006/11/08 - added additional timing modulations (thanks Michael).