Arduino Camera Flash Control

23,657

53

20

About: My name is Randy and I am a Community Manager in these here parts. In a previous life I had founded and run the Instructables Design Studio (RIP) @ Autodesk's Pier 9 Technology Center. I'm also the author ...

This is a simple method for controlling a camera flash using an Arduino. The nice thing about this method is that it uses an optoisolator to separate the Arduino from potentially high voltage spikes produced by the flash. I choose to use and optoisolator instead of a relay because the response time is much quicker, which is important when dealing with split second camera timing. Being able to control a camera flash in this manner is not only useful for Photography, but can come in handy for making a haunted house display (and miscellaneous hijinks).

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Go Get Stuff

You will need:

- Arduino
- Camera Flash (with input jack)
- Breadboard
- MOC3021 optocoupler (Triac)
- 220 ohm to 1K resistor
- 3/32" mono plug
- Solid core wire

Step 2: Wire the Plug

Open the casing for your plug and solder a red wire to the center terminal pin and a black wire to the outer terminal.

Reassemble the casing.

Step 3: Wire It Up

Connect pin 13 from the Arduino to one leg of a 1K resistor.

Connect the other leg of the 1K resistor to pin 1 of the chip (this is the pin next to the dot).

Connect ground from the Arduino to pin 2 on the chip.

Connect the red wire from the 3/32" plug to pin 6 and the black wire to pin 4.

Step 4: Plug It In

Insert your plug into the trigger port on the electronic flash.

Step 5: Program and Go

Program the Arduino with the following code:
Assuming that your flash is turned on, it should now be triggered every 7 seconds.
4th Epilog Challenge

Participated in the
4th Epilog Challenge

Be the First to Share

    Recommendations

    • Assistive Tech Contest

      Assistive Tech Contest
    • Reuse Contest

      Reuse Contest
    • Made with Math Contest

      Made with Math Contest

    20 Discussions

    0
    None
    popwar

    Question 1 year ago

    I have built this to work with a slightly different flash model. I am able to trigger the flash once. I have adjusted the code for a longer delay to give the flash plenty of time to charge, but it will still only flash once unless I disconnect and reconnect the flash input from the optocoupler. Once disconnected and reconnected it will flash as the code dictates... but only once until disconnected again. Do you have any ideas as to why this may be happening?

    3 answers
    0
    None
    randofopopwar

    Answer 1 year ago

    Are you using the same exact optocoupler that I am?

    If so, can you trigger the flash over and over by manually touching its contacts together? If this works, it is not the flash unit that is latching, but the optocoupler.

    The next step after this would be to check the wiring really carefully against the data sheet.

    If it is still not working, maybe the optocoupler itself is faulty and you just need a new one, or, you need to get a different model (for some reason).

    0
    None
    popwarrandofo

    Answer 1 year ago

    The flash unit was working great.

    I was using the same make and model of the optocoupler, went through the wiring with a fine tooth comb and tried the extra I had purchased but was still unable to get it to work properly. Not quite sure what I was doing wrong.

    I ended up just using a solid state relay (the "clicking" sound worked out great for my purposes).

    0
    None
    popwarrandofo

    Reply 1 year ago

    First, let me say thank you for getting back to me quickly. The flash is the same type of trigger. it can be flashed over and over by creating continuity between its contacts.

    It is definitely the optocoupler.

    I am using the same model number, it is the one from your link. I ordered a few of them and have attempted 2 different optocouplers. My resistance is dropping the voltage to a safe level for communication to the optocoupler. I have read through the datasheet for the unit, and have everything wired to the correct pins. It just seems that the internal gate between the two main terminals (pin 6 and pin 4) is failing to close on at least the two units that I have tried so far.

    I'm going to give it one more try and see if I can get it to work with a fresh opto. I have made it work using a relay, but want to figure out how to get these optos working.

    0
    None
    PabloF8

    2 years ago

    How fast can go the flash? 1 per second? 10 per second? Is it there a limit?

    1 reply
    0
    None
    randofoPabloF8

    Reply 2 years ago

    It depends on the reset rate of your specific flash unit. I have not use this specific flash in a while, but I imagine it around every one or two seconds to give them capacitor a moment to recharge

    0
    None
    Kay O.S

    3 years ago

    Hi Randofo! Thanks for this tutorial. I've been thinking of making some complicated photo flash setups and this might just be the ticket to making them happen.

    One question, as I'm a super noob when it comes to Arduino, how many flashes could one control from one Arduino? Assuming I want independent control of each.

    P.S.: Noticed you got the flash from the store I work at. ;)

    1 reply
    0
    None
    randofoKay O.S

    Reply 3 years ago

    13 - 18. If you get an Arduino Mega, then you can control about 50.

    You could also get other chips to interface with the Arduino such as a shift registers, and this would allow you to control even more. However, this is a bit more of an advanced topic.

    0
    None
    malixlizard

    7 years ago on Introduction

    I am trying to build this but would like to order the parts through a particular website, will any optocoupler work? or can i use a transistor maybe? THANKS!!

    3 replies
    0
    None
    randofomalixlizard

    Reply 7 years ago on Introduction

    I know this one works. It may not work with other types. You can perhaps test and see. Not all optocouplers have the same switching mechanism inside.

    0
    None
    malixlizardrandofo

    Reply 7 years ago on Introduction

    Ok i am reading everything i can find on optocouplers and continue to be baffled, the ratings on the couplers seems to be about 1.25v yet the arduino will output a HIGH of 5v, so how is your system not failing? Not criticizing your design just trying to understand and obviously something is not clicking for me, thank you!

    0
    None
    randofomalixlizard

    Reply 7 years ago on Introduction

    You are basically powering an LED. You will need to add a resistor in series with the photodiode in the optocoupler.

    0
    None
    dannye90

    7 years ago on Introduction

    Maybe this is a stupid question.. but what does the 'to 1K' part of the resistor measurement mean?

    4 replies
    0
    None
    dasigi

    7 years ago on Step 3

    The trigger port baffles me, I have not seen one on any flash! Would it be possible to create an alternative, for example, with an off-camera shoe mount or some such?

    1 reply
    0
    None
    randofodasigi

    Reply 7 years ago on Step 3

    You can buy hot shoe to PC flash sync cable adapter mounts.

    0
    None
    ynze

    8 years ago on Introduction

    Pretty neat! The search for unintended use for a flashlight starts here...