Timing a physical connection

Hi all,

I'm new to the Arduino and loving it. I have gone through the basics of blinking leds and using buttons as switches for completing power circuits. I'm now trying to control a Nikon MC-DC1 physical shutter release with timed intervals specified in a sketch. The physical remote is disassembled and hookup wire attached to the input wires for easier handling.

I do not want electricity to travel through these three wires leading back to the camera. I only want to time when the wires will be connected. Is it possible to use the Arduino to complete a connection between input pins? For example, if I have each wire from the remote going into pins 6,7,8 respectively, can I control a connection with code and delays?

Thanks, Brij

Hi I am not sure if you are a bit mixed up or if it is poor English:-

I only want to time when the wires will be connected.

Connected to what?

can I control a connection with code and delays?

You now talk about control, that implies you want the Arduino to make your trigger do something.

If you only want to time how long things are at various states you will have to wire a ground signal from your trigger to the Arduino. Then connecting the wires to input pins will allow the sketch to time how long they are in a high or low state.

You probably want to use a relay or relays to do the connections, to avoid hooking the Arduino's voltages to the camera.

Do you know what connections the remote makes among those 3 wires?


Hi Mike,

I meant when the wires are connected to each other. It's this physical connection that triggers the shutter. I would like to open and close the shutter for the purposes of bracketing using the Arduino for precision timing.

Hi Ran,

There are three wires which control the shutter: White, Black and Green

Black and Green touching auto focuses the lens Black + Green + White opens the shutter

In Bulb mode the Nikon D80 I'm using will keep the shutter open for as long as the three wires are touching.

Thanks, Brij

I meant when the wires are connected to each other.

In order for this to have any effect then a current must be flowing through those wires. When they are not connected a voltage must be across the wires.

The difficulty you have is in knowing what this voltage is, is it too much for the Arduino? Is it not enough for the Arduino? What is the polarity?

The best bet is to measure it with a voltmeter. Then connect one wire to the Arduino ground and the other to an analogue input pin. Make sure the one you connect to the pin is the more positive of the two wires and make sure it is not greater than 5V. Then monitoring the analogRead(0) and you should see a zero (or very low) when the wires are connected together and a big number when they are not connected. Note there must not be any other common signal between the camera and the arduino or you risk shorting things out.

That helps me understand a bit more Mike... Thank you.


The trick to triggering a camera externally is to use an opto isolator such as the 4N28 chip. This acts similar to a relay, but is not mechanical and uses a little less power. There was a thread here a while back from someone who built exactly what you're building. But I could not find it in a search.

But the basic idea was the Arduino would trigger the auto focus and then the shutter. And all the electrical signals were separated from the camera.