Arduino Flash Controller for Photography

Being a broke amateur photographer isn't easy.

Film, chemicals and paper aren't cheap and a budget for some studio lights is non existant.

So, I decided to, with the help of my trusty arduino, create my own sync controller to use with disposable camera flash circuits.  

By using a photoresistor the arduino can sense when the flash from your camera (master) is triggered and then trips the relay activating the disposable flashes (slaves). Since every environment has a different ambient light level I incorporated a potentiometer to adjust the threshold of light that will trigger the relay. I also added a push button to trip the flash bypassing the photoresistor altogether (this is still a bit buggy and does not always work).
Remove these adsRemove these ads by Signing Up

Step 1: Gather The Materials


1 - Arduino (I have the Uno)
2 - 5mm Red LED's
1 - 5mm Green LED
1 - 10k ohm resistor
1 - 2.2k ohm resistor
1 - Transistor (P2N222AG) (TO92)
1 - Diode (1N4001)
1 - Potentiometer (10k)
1 - Relay (5v DPDT)
1 - Push Button
1 - Photoresistor (CdS)
     Various lengths of wire
     Disposable camera flash circuits
     Box to mount it in (OPTIONAL)

- Tools Needed - 

Soldering Iron
Needles nose pliers
Rubber gloves (to avoid being shocked from the flash circuit)

I have the Arduino Experimentation kit which contains all of the components listed above (except the flash circuits) but you can find all of those components at your local electronics store or on the Adafruit website. 
JKTECHAZ2 months ago

A very simple way to add a delay to a pre-flash camera is to use an rc time circuit on the output of D2 in this circuit to charge up a capacitor and bleed that voltage to turn on the relay. Just choose the R&C to add a proper delay to the transistor. When the flash is sensed from the phototransistor and triggers the d2 pin the voltage output from d2 doesn't charge up the cap instantly. Another simpler technique is to use a delay routine in the d2 output pin. use msdelay or similar to delay the output trigger for the specific desired response.

Phil B1 year ago
You use film cameras. I had hoped you might discuss a slave flash triggering system for digital cameras with a built-in flash that emits pre-flashes.
Zakafarious (author)  Phil B1 year ago
It would work with any type of flash, film or digital. Possibly even a strobe machine but I doubt it could keep up with the frequency of flashes.
The problem with a digital camera using a flash with pre-flashes is that the slave trigger needs to ignore the pre-flashes and fire only on the flash that occurs when the shutter is open. The pre-flashes are intended to make the iris of the eye contract in order to reduce red eye, which is a reflection of the flash off of the blood vessels at the back of the eye.
Zakafarious (author)  Phil B1 year ago
Hmm true, as I shoot with film I forgot that digital cameras do that. From what I can remember aren't the pre-flashes less intense? Maybe adjusting the threshold would make only the main flash trigger the slaves?
I do not know as much about that as I would like. I expect the pre-flashes are weaker so that the most part of the flash's charge can be saved for illuminating the exposure. I once found a couple of circuits for building your own slave trigger to be used with a common digital camera emitting pre-flashes. One involved programming a logic chip and one did not. I tried building the second, although results may have been better with the programmable logic chip. The circuit I attempted had been tested with an oscilloscope by the author during its development, and he claimed it worked. He even had sample photos in his article to show that it worked. I was careful to follow the schematic closely, but mine did not work and I do not know why. Perhaps there was some difference in the number of pre-flashes between his camera and mine or some other thing. As I remember, there were two staged resistance/capacitance timer circuits, both of which filled to capacity in a series so that the third flash closed the switching device on the trigger circuit. Amazon has an inexpensive slave flash unit (about $15 US) with an adjustment dial to match the delay to the number of pre-flashes on the owner's camera. But, the customer reviews are overwhelmingly mixed and leaning to negative.
Phil, I built a unit just with one logic IC a transistor and a thyristor, a photdiode and a few resistors and caps and it works perfectly. All on a very tiny piece of PCB. If you are interested, send me a message, I'll dig up the circuit.
Alternatively I bougt some cheap flashes that can skip several preflashes. Not sure if it is the same one as on Amazon, but I am very very happy with them. They work great. Got them at dealextreme:
but let me add that indeed my circuit is just for 1 preflash. Should not be so hard to find out though how many preflashes yr cam has. The circuit I have worked on a number of nikon, konica, olympus, canon and konica camera's
Thank you for your offer. I have given away my two Vivitar 283 units, so I probably will not be using any slave flashes on my Kodak z710 camera. Congratulations on working out a good solution.
for those interested:
Zakafarious (author)  Phil B1 year ago
Ive only very briefly touched on logic chips in a class I took but not enough to work with. Based on my circuit I'm wondering if incorporating some type of delay between the light threshold being breached and the relay triggering would work? I have also seen those flash triggers on amazon and maybe if I had some lights to connect them to I would experiment with a couple but my lights are disposable camera flashes for now :P

Get More Out of Instructables

Already have an Account?


PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!