All code and apps are provided free for non-commercial use. You are free to change the code and designs in way you like for your own personal use.


Android App

The Android app (v 2019_006_001) is available on the Play Store here. You can also download the apk file directly from the below links. Apps are compatible with dropControllerV3 and V2.
dropController Android app version 2019_006_001
dropController Android app version 2019_005_002
dropController Android app version 2019_005_001
dropController Android app version 2019_001_003
dropController Android app version 2019_001_001

The app was created in app inventor 2 and the aia file is included in the download. Be warned, the app is at the upper limit of what app inventor can do and your browser will be extremely sluggish when editing.



Changed loop mode delay to seconds.

Bug fix: Flash Trigger 3 command

Bug fix: Flash Trigger 3

Added flash trigger 3
Added a drop data graph. This adds a visual representation of the drop times.
Minor bug fix.

Adapted the version 3 app. Initial release.


Android App Beta / Pre-release

Android app version 2020_008_101 available in beta. The app is only available here at the moment (not yet on the Play Store) and will need to be side loaded on to an Android device. The download is a zip file containing the apk file and the app inventor aia file.

Download Android app version 2020_008_101

• Better compatibility with smaller devices
• Turn individual drops on and off
• Hide/show FT2 and FT3
• New FT1 sync mode – Sync the shutter release to FT1 trigger time.
• New Bulb/Sync preshort offset and post shot offset settings
• Removed Mirror Lockup function
• New style graph with clearer display of drop times
• Tidied up the valve drain code. No more annoying error messages saying Bluetooth is turned off.
• Fixed an issue with missing drops when drop 1 is turned off.


Windows Program

dropController Windows App version 2020_001_001
dropController Windows App version 2019_006_001
dropController Windows App version 2019_005_001
dropController Windows App version 2019_004

The Windows program does not need to be installed and is run directly from a folder. It requires the .net framework, minimum version 4.0, available at Microsoft .net 4.0 download page and will run on Windows XP SP2 and above.



Fixed delta values not showing correctly in the Loop Page.

Changed the loop mode timer time to seconds.
Added a forum link to the menu.

Added flash trigger 3.
Minor bug fix.


Windows Program Source Files

dropController Windows App version 2020_001_001 source files (11.1MB).
dropController Windows App version 2019_006_001 source files (11.1MB).
dropController Windows App version 2019_005_001 source files (11.9MB).
dropController Windows App version 2019_004_001 source files

The Windows app was written in Visual Basic 2013 and maintained in VS2017 and now VS2019 Visual Studio Community IDE.

Visual Studio 2019 Community is free to use for students, open source contributors and small development teams and it is available for download at The download is just the installer which will download the main program from the internet.


Windows Program Beta / Pre-release

Windows App v 2020_7_2_1 now available as a beta. No need to install, just run from the folder.

Download Windows App v 2020_7_2_1


Add on / off controls to individual drops
Number of drops fixed at 9 drops
Change the camera trigger button. Sequence now is OFF => ON => BULB.
Removed the separate BULB button
Set the minimum time of the graph to 1000ms
Add drop labels to the graph
Add key to the graph showing the colours used for the drops
Drop data is now saved on exit of drops data page
Removed debug button status from save function
Add live checks to drop times. If times overlap the start time turns red. No pop up error message until the user clicks the START button
Cosmetic change to the valve drain buttons


dropControllerV3 Arduino Sketch

The sketch requires the digitalIOPerformance library, see below.
dropControllerV3 Arduino Sketch 2019_V3_005_003.
dropControllerV3 Arduino Sketch 2019_V3_005_002.
dropControllerV3 Arduino Sketch 2019_V3_005_001.
dropControllerV3 Arduino Sketch 2019_V3_003.



Bug fix. Double quotes causing havoc.
This release is regarded as final and there are no further updates planned. Bugs will still be fixed if and when any are discovered.

Very minor changes. Tidied some comments, moved some code.

Added Flash Trigger 3
Bug fix: FT2 and FT3 flags

Added !Serial for Leonardo & Micro
Changed the non-connected blink rate

Corrected the pins used for the Bluetooth module

New version release


dropControllerV2 Arduino Sketch

The sketch requires the digitalIOPerformance library, see below.
dropControllerV2 Arduino Sketch 2019_V2_001. For use on the version 2 device.

See the Updating the Firmware page for details on how to upload a new firmware.

Since version 2 was purely DIY I have presumed people know how to use the Arduino IDE and haven’t posted the HEX file.



The Arduino sketches requires the digitalIOPerformance library. This is actually outdated but still works with all 328 based Arduinos like the Nano. I have tried in Arduino IDE 1.6.3 and 1.8.5 and the sketch compiles fine. The library does not work with newer non 328P based Arduinos such as the Arduino Micro & Leonardo which are based on the ATmega32U4 chip.

Arduinos are fairly slow at switching pins on an off and digitalIOPerformance speeds things up by cutting out a lot of unnecessary functions the Arduino normal performs. It only works on older Arduinos though. On Arduinos that it does not support the code defaults to the regular Arduino way. In practice I am not sure this makes a difference when using solenoid valves.


dropControllerV3 HEX File

If you are not familiar with the Arduino IDE or you simply do not want to install it you can use the HEX file to update the dropController. The HEX file is a pre-compiled firmware that is ready to upload.

dropControllerV3 2019_V3_005_003 HEX file.

The Download includes everything you need to upload the new firmware. The Arduino IDE is not required.

See the Updating the Firmware page for details on how to upload a new firmware.