This page contains the schematics of the DIY waterdrop device. It’s a collection of information I found on the internet and used to build my waterdrop device. Credits go to the people who designed it. Sometimes it’s hard to get specific component types. Usually it is okay to use a similar type.
Table of contents:
Arduino Uno
Valve Control
Flash and Shutter Control
Voltage Regulator 5 and 9 volts
LCD display
Keypad using 1 analog input pin
Sound Detection
You can find all information necessary on www.arduino.cc. I suggest to just buy it pre-build from some local reseller. If you want to build it yourself, you can find the schematics on this site too. The Uno has just sufficient memory and ports. You have to program this one efficient in case you want to store settings in memory etc. Buying the Mega gives you more memory and ports.
(I have connected a 20×4 LCD, Keypad and the Flash-, Shutter-, Sound- and Valve Triggers and still have ports available on the Uno)
The Shako valve uses 24 volts DC. I would prefer to use 12 volts because it doesn’t heat the voltage regulators that much, but 24 volts will do the job. The Arduino cannot provide the power to activate the valve, therefore you need this electronic circuit: (check the connection pins of the TIP121 or compatible carefully. I don’t know if the pin numbers are correct in this drawing)
Use 3 optocouplers of type 4N25 or equal to trigger the flash and shutter. The benefits of an optocoupler is an optical isolation between the flash- and cameracircuits from the electronic part of the microcontroller. The schematic created for 1 flash and 1 camera. The shutter requires two optocouplers (1 for autofocus and 1 for shutter. Even when you don’t use autofocus. You have to imitate the functionality of the shutter button of your camera which is half way press = autofocus and full press is shutter.) The other optocoupler is to trigger your external flash. In case you need more flashes, just extend the schematic. Remember keep the electronic circuits of the microcontroller and camera and flash seperated from each other (so do not connect the GND between Microcontroller and/or Camera and/or flash.
Each optocoupler is connected to one digital pin on the arduino. Making the pin high will turn on a led inside the optocoupler which makes the optical transistor inside the optocoupler to switch. No other external power is necessary for the optocoupler to work. Build as many optocoupler circuits as devices (or switches) you need. An optocoupler can handle a very limited amount of current so don’t switch heavy currents. Modern flashes use about 6 volts to be triggered. Older flashes may use up to 300 volts which might damage the optocoupler. I don’t know if there are optocouplers that can handle this voltage, but I think they exist.
Voltage Regulator 5 and 9 volts
The Arduino can handle voltages between 5 and 12 volts but only works stable between 7 and 12 volts (above 12 volts the onboard voltage regulator will overheat). The input voltage of my system is 24 volts because I need 24 volts for the valve. I created 3 voltages in my system:
- 24 volt DC;
- 9 volt DC for powering the Arduino Uno;
- 5 volt DC for powering external circuits like the sound trigger.
The 9 volt is chosen because it’s within the limits of the Arduino Uno specs and I wanted a high as possible voltage to make the difference with 24 volts as little as possible. (The bigger the difference, the hotter the regulator will be). I could choose 12 volts, but that is on the limit of the Arduino.
The Arduino has its own voltage regulator and will output 5 volts on the digital pins which is perfect for all the other components like the optocouplers and so on.
The 5 volt regulator is used to power external devices like a sound trigger. I didn’t want to load to much on the Arduino and this circuits costs a couple of euro’s.
The voltage regulator used are a 7805 for 5 volts and the 7809 for 9 volts. Make sure you get the 1A version or even the 2A version. Mount a heatsink on the 780x component.
The capacitor C3 is an electrolitic (ELCO), the others are regular (ask your supplier, they can advise you).
LCD displayJust buy a nice LCD display on ebay based on the HD44780 driver IC. Use one of the size you like 16×2 or 20×4.
connect pins RS, Enable, D4, D5, D6 and D7 to the Arduino. Connect pin R/W to ground so you can write info to the display.
Use Google to find one of the many explanations on how to connect the LCD Display.
This is a PDF manual of the LCD I used. All LCD’s look like the same approach so it might be valid for yours too.
Keypad using 1 analog input pin
A matrix keypad can also be bought on ebay for a couple of dollars. Normally you need several digital input pins to read the matrix. By using a voltage divider you only need 1 analog input. This works great even on a 16 button keypad. In software, read the value of the analog port while pushing a key. Then you know the approximate value that that specific keypress will provide. The pins on the keypad are probably 4 rows + 4 columns (or 4 col + 4 rows). Just use your multimeter to see which pins are connected when pushing a button. I used the 5 volts of the Arduino board to ‘power’ this matrix.
More info on Arduino Forum and on this site.
I also build a sound detection interface to trigger the flash when a noise occurs. I used the circuit found in this PDF which I did not designed myself. It does work but I think there are better solutions which are more accurate. Search for it !














Hi
I have just started to set up a water drop rig. I am using an Adruino Uno. I would be very interested in your offer as I don’t have much foor to use the laptop to control everything.
Regards
Tony
Hi Tony,
I’ve send the sourcecodes by email.
Good luck,
Alex
I have started to build the same set-up as you have and already got the hardware required. Now i just wonder where you got the software from or did you write it yourself?
Hello
I am currently building an assembly identical
would it be possible to have your code to test
cordially
Hi there, i read your blog from time to time and i own a similar one and i was just wondering if you get a lot of spam comments?
If so how do you reduce it, any plugin or anything you can suggest?
I get so much lately it’s driving me crazy so any help is very much appreciated.
Hi,
I just use Akismet and Conditional Captcha plugin. Within Conditional Captcha I configured ReCaptcha. Seems to be sufficient for my site.
ReCaptcha
Alex
I have been torturing my brain for a while now how to setup a project like this and would really appreciate receiving your source code.
Source code is in your email
Enjoy building
Thank you for sharing your building plans and schematics…….could I too bother you for your source code? It would be greatly appreciated.
Thank you,
Tony
Hi, Source is in your mail.
Hi
I’m sorry to ask again but I have lost the source codes you sent me. I have had to rebuild my computer because of a hdd failure. Sadly your code was on that drive.
Kind regards
Tony Poole
Hi Tony,
link should be in your mail now.
Is it possible to see your source code so I can try and base my own off it?
Appreciate the work your doing!
Source is in your mailbox
alex
Great page and very informative. I had set up something similar but used interrupt routines on the arduino to capture the camera shutter being triggered via a hot shoe contact. So I’d use a wireless trigger for the camera on a 1 sec shutter, this would be detected by the arduino and trigger the water drops and flash at the appropriate times.