What is best way to create an adjustable relay delay with a know/dial?

I have been doing quite a bit of research to determine that there are many ways to accomplish the following, however I would like some assistance establishing the most elegant way to do the following:

I am creating a remotely triggered flash array that requires a solenoid with a delay - www.supernovaphota.com. There are three modules and a single control/trigger that will connect to the hot shoe on the camera.

The solenoid (uses approximately 250mA) that needs to open when the arduino receives a contact closure. The tricky part of this that I need to control the time the relay stays open by using a dial (preferably something with detents). Ideally, it will have 10 or more stops and range from momentary to 3 seconds. (0, .1, .25, .5, .75, 1, 1.5, 2, 3). Additionally, when the solenoid opens, I need to close another relay disabling another circuit.

If anyone has some recommendations as to the parts, this is for a project at Burning Man and the dial must be able to handle considerable amounts of dust and possibly moisture as it will be exposed to the elements and panel mounted to the ammo box containing the remainder of the electronics.

I haven't purchased any parts yet as I'm not sure the best way to do this. I figure the wizards on this message board can lend a hand.

I've been looking at a multiple relay board such as - (link to company selling counterfeit boards removed by moderator) - as one of the components.

Also, what would it take to control the delays remotely using an iPod or other similar device. I was hoping to use a radio trigger from my camera equipment, however is there an easy way to both trigger and control the delay remotely from a single device.

Thank you so much for your assistance.


For the dial, consider using a rotary switch with a different resistance connected to each switch position, and connect the common terminal in series with another resistor to act as a voltage divider. You can then use an analog input to read the voltage and determine which switch position is selected from that.

For the solenoid output you will need some sort of driver circuit. You could use a standard Arduino with an H-bridge motor driver or relay shield, or a clone such as Baby Orangutan which has an integral dual H-bridge motor driver.

If it's to be used in a hostile environment I would suggest putting the whole thing inside a sealed enclosure, with just the external wiring connections and output spindle for the rotary switch exposed.

You'll need to know what the electrical characteristics of the hot shoe are to design the circuit to connect it to the Arduino. Perhaps you already know, and if not I'm sure it wouldn't be hard to find out.