GoPro Hero2 on-off

Hi,
I would like to use Arduino to switch a GoPro on/off via pin (12).
Do I need to use a transistor/optocoupler, or can I just tie any Arduino pin straight to camera, and switch it HI/LOW?

Thanks,
Leo

Does the Hero II have the same 30-pin "iPod-like" connector as the GoPro HD?

https://code.google.com/p/arducam-osd/wiki/GoPro_HD_Hacking

Looks like you ground pin 12 for a second. The safest way would be with an optoisolator. To the Arduino that would look like an LED. Next safest is with an NPN transistor, like this:
http://www.redbikepix.com/gallery3/index.php/Trail-Camera-Pics/GoPro-Trail-Cam/GoPro-Schematic

Cheapest and easiest is direct connect. If the GoPro pin is at a lower voltage than the Arduino pins you should probably switch between INPUT and OUTPUT,LOW to pull the pin LOW. Using OUTPUT,HIGH could fry something on the GoPro.

       // Turn on the GoPro
      digitalWrite(GoProPowerPin, LOW);    // Yes, you can set the logic level before setting the mode
      pinMode(GoProPowerPin, OUTPUT);
     delay(1500);  // Over a second
      pinMode(GoProPowerPin, INPUT);   // Set to high impedance (disconnect)

This method worked fine for me on some similar video cameras in a high altitude balloon.

johnwasser:
Next safest is with an NPN transistor, like this:

Except that you do not use that diagram!

That is for control by a relay contact.

To control with an Arduino, you connect the interface ground - pin 1 and the emitter of the transistor - to the Arduino ground and the 10k resistor to the Arduino output.

johnwasser:
If the GoPro pin is at a lower voltage than the Arduino pins you should probably switch between INPUT and OUTPUT,LOW to pull the pin LOW. Using OUTPUT,HIGH could fry something on the GoPro.

       // Turn on the GoPro

digitalWrite(GoProPowerPin, LOW);    // Yes, you can set the logic level before setting the mode
      pinMode(GoProPowerPin, OUTPUT);
    delay(1500);  // Over a second
      pinMode(GoProPowerPin, INPUT);  // Set to high impedance (disconnect)

Of course, not only must you set the output to LOW before making it an output, but you must switch on the Arduino before connecting it to the camera.

Paul__B:
Except that you do not use that diagram!

That is for control by a relay contact.

To control with an Arduino, you connect the interface ground - pin 1 and the emitter of the transistor - to the Arduino ground and the 10k resistor to the Arduino output.

Of course, not only must you set the output to LOW before making it an output, but you must switch on the Arduino before connecting it to the camera.

Actually that is my diagram. Where do you see a relay? Pin 12 on the GoPro is being controlled by by a NPN transistor. The base of the transistor is being biased by motion detector. Please explain why it won't work?