dropControllerV4 Preview

This page is no longer being updated. Please visit the new pages starting at dropcontrollerv4

Last update: 07.11.2021. Added a new firmware







Firmware: DC4_R2_0596 (07.11.2021)
Firmware: DC4_R1_0586 (15.09.2021)
DC4_0585 (10.09.2021)
Firmware: DC4_0582 (01.09.2021)
Firmware: DC4_0560 (11.08.2021)

– Added better error trapping when the dropController does not respond
– When in Loop Mode, added the sequence number to the LCD display
– bug fix. There is no upper limit to the sequence number and on rare occasions, the dropController would crash when sequence number became too high. Still no upper limit and the controller may still crash should the sequence number become very high but now needs to be very very high.

– Tweaked the layout slightly.
– Added a keep alive option on the Settings Page.

Keep Alive
On mobile devices, after short period of non use, the screen may turn itself off to save battery. At the same time the device may also pause things like wifi connections. This can cause the dropController to loose the connection to the webapp. The dropController has a Keep Alice function that helps combat this, however, the Keep Alive function does not work in all situations or on all devices.
When the Keep Alive option is ON, the dropController sends a dummy signal every period to keep the connection with the webpage open/alive. This is not normally required but if you find the webapp goes to sleep and you have to refresh it turning Keep Alive ON may help.
The keep alive function does not stop the phone or tablet from going to sleep and turning off the screen. On many devices, when the screen goes off, active connections are also put to sleep. When this happens just refresh the webapp.

– Manual Drain now returns to the last tab used.
– reformatted the layout. Hopefully better for larger displays.
– Separated the firmware for 8 and 16 valve controllers

DC4_0560 (accumulative 0552-0560)
– Fixed a timing issue that caused some devices not to connect when in Local Mode.
– Display the version number on the Settings Page just above the Update button.
– Display the version number on the screen using the SET button. SET button now cycles through Connection Information => App version => Ready.
– Tweaked the layout of the Trigger section. Should look better on devices with smaller viewport sizes. Still can’t get everything exactly aligned on all devices though.
– Moved the Extension check to pin 23. On prototype PCBs this pin will be floating and may cause some issues. May randomly get the controls for 16 valves.

– Manual Drain function added.
– Started to tidy up the code, especially the css and javascript.
– Bug fixes for the 16 valve version.
– Removed the closed webpage message.

– Updated the START button position.
– Added a closed webpage message.

– Moved the START button to a fixed position at the bottom of the screen.

– Fixed an issue with delta values.

Update the firmware through Settings => Update. See below for details.


Known Issues

  • Times are not fully validated when they are entered. In some cases this can cause invalid values. I plan to fix this.
  • There are no drop time checks. This means you can overlap drops with each other. I have not yet decided if I will add this or not.
  • The scale on the graph gets crowded if the numbers get too large (need to be very large). I need to recalculate the scale.


To Do / ideas

  • Add a save function for specific sequences.
  • Add a time out to the valve drain function.
  • Format numbers (add leading zeros) when updating the screen. Partially done.
  • May add a camera keep awake function using the focus trigger.
  • Clean up the code. Reduce the javascript character count. Maybe minimise the js and css.
  • Remove the top button switch (switch 2) from the PCB and remove the top hole from the case. The SEL button has been moved to the front panel next to the SET button.
  • Rename FT2 to AUX on the side plate.
  • Remove the Input trigger. The Input trigger has been removed on the latest version.
  • Add a PCB connector for 24v. This is for the 16 valve version.



The 8 valve version allows up to 24 drops. Any valve can be used with any drop.
When the SEND button is clicked, the drop data is sent to the dropController device and the drop sequence is started. While the sequence is active the controls in the web app are inactive (same as previous versions).

Clicking the Number of drops label or quantity brings up a number of drops dialogue. This will be a hidden feature.

Enter “dbon” and “dbof” (no quotes) to start and stop debugging mode.


Hardware Changes

I have made a couple of hardware changes to the latest design.

General design

I decided to keep and use the SEL button so I moved it to the front next to the SET button. I think this looks and works better and means the hole in the top panel is not required. The SEL button is now used for Manual Drain.

In an earlier version of the dropController I had hardware buttons to open the valves. I removed these when I started selling the device. I have regretted removing the buttons ever since. Manual Drain adds back the ability to open and close the valves without using the app. This is handy for cleaning and draining.


The pin used to check if the device is an 8 valve or 16 valve controller has been moved and therefore, the pin used on the prototype PCBs is no longer valid and not used in the code. The new pin on the prototype PCB is floating and may confusew the dropController. Because the signal is floating there is a chance the dropController will think it is a 16 valve version. This effects the prototypes only and the new PCBs using the new pin works as expected.
I have separated the code for the 8 valve and 16 valve versions.


dropController V4 Introduction

dropController is now IOT!

Easy to use, easy to understand interface that can use on any networked device that has a web browser; PC, laptop, phone, tablet.
– super fast multi-core controller
– 8 valve and 16 valve versions
– LCD status screen
– camera trigger port (shutter & focus)
– flash trigger port
– auxiliary trigger port
– can be used as a 24v or 12v system
– easy to update
– Local mode – connect directly to the dropController (requires a device with wifi)
– Network mode – connect the dropController to your local network

Includes the new advanced features from dropControllerV3
– Camera SYNC trigger
– Loop Mode COPY
– Sequence number can be increased on the Graph Page to see the effects of delta values
– turn focus trigger ON/OFF


dropControllerV4 Device


AUX = Axillary Trigger Port
FT = Flash Trigger Port
CT = Camera Trigger Port
SEL = Select button
SET = Set button
RESET = Reset

AUX Port

Single channel non-powered trigger. The connection is closed when triggered which means the attached circuit has to have it’s own vcpower. Max voltage should be kept to 5V or less. Can be used as an additional flash trigger or used to trigger something like a actuator/release clamp designed to drop things.

Flash Trigger Port

Single channel non-powered trigger. The connection is closed when triggered which means the attached circuit has to have it’s own vcc. Max voltage should be kept to 5V or less.

Camera Trigger Port

Dual channel trigger (focus + shutter) non-powered trigger.
The focus signal can be disabled in software (there is a control on the Settings Page).
Plug tip = shutter
Plug mid = focus
Plug base = ground

Select button

Used to enter Manual Drain Mode

Set button

This is a multifunction button.
1 – if pressed when the dropController is in use, shows the network connection properties (IP address), then the firmware version.
2 – Holding the SET button idown while resetting the dropController erases any saved connection settings and activates the dropController connection wizard.
3 – Using in combination with the SEL button to open and close the valves. Press SEL to enter Manual Drain Mode and to cycle through the valves. SET open or closes the selected valve.


Resets the devices (cycles the power). Handy if you want to use the SET button to erase saved network credentials.


8 Valve Ports


dropControllerV4 Connection Modes

Local Mode
Local Mode is where the user connects directly to the dropController using the dropControllers built in wifi network. This allows the dropController to be used when a local network is not available.
Network Mode
Network Mode is where the dropController connects to a local network and the user then connects to the dropController via the local network.


Network connection wizard

The easiest way to use the dropController is in Network Mode using your local or home wifi. In Network Mode any device (computer, phone, tablet) that is connected to the same network can be used to control the dropController. Before you can use Network Mode though you need to connect the dropController to the local network. To make the setup process as easy as possible the dropControllerV4 has a built in network connection manager/wizard.

The connection manager uses the dropControllers internal wifi network. To use the connection manager the basic process is:
– connect to the dropController network
– load the connection manager by visiting
– enter your home network details
– the dropController connects and saves the details
– restart the dropController
– on restart the dropController automatically connects to the local network.
– Go to the IP address displayed on the dropController screen.

Setting up the connection to the local network is only required once. After the dropController connects to the local network it will remember the login data and automatically connect every time it is started.

The dropController is able to create it’s own network. This is used for the Connection Manager and also Local Mode. The connection manager is active only on the dropControllers own wifi. This means you need to connect to the dropController to set up the wifi network.

When there are no saved network credentials the dropController Connection Manager is opened automatically on start. The Connection Manager is enabled for 100 seconds. If, after 100 seconds, there is no connection the dropController will default to Local Mode.

On a networked enabled device (here I am using a Samsung phone running Android) open settings and go to Connections. Select Wifi. and Scan for networks. You should see dropController.
Connect to the dropController network. If you are asked for a password try 12345678
Note. The dropController does not offer internet connection and some devices (like many Android phones) will try to jump back to the previous network. If you cannot connect check that your device is still connected to the dropController.

After you have connected to the dropController network open a browser and enter or, if you have the option on your device, click Manage Router (they both do the same thing).

If using a mobile and you still cannot connect make sure the network has not switched back to the default network. If you still cannot connect, try another browser. Once you have established a connection you will connect to the dropController Connection Page.

You should see the main Connection Manager menu.
Click SCAN NETWORKS to search for available networks.

The dropController displays a list of the found networks, click the one you want to connect to, the name of the network is automatically copied to the form. Enter the password and click SAVE & CONNECT.
The dropController then tries to connect to the selected network.

After waiting a few seconds or when the LCD shows CONNECTED! either go back to the Connection Manager Menu or click RESTART.

If you go back to the Connection Manager menu, if the dropController is connected to the network, the network details will be displayed.
If the dropController is not connected Not Connected will be shown.

If the connection was successful, clicking RESTART will restart the dropController and when it restarts the controller will try to join the local network automatically.

When the dropController successfully connects to a local network it will remember the settings and automatically try to connect every time it is started.

When using the basic connection wizard the IP address will be assigned by the router / wireless access point. To connect using a static IP address, on the Network List page, click the Show advanced settings link. This will open the advanced options.
Here you can enter the details for a static/fixed IP address.
This is currently disabled. I want to find out if people need this option. I can make the code a lot simpler if I do not have this option.


Erasing Saved Network Credentials

To clear saved network credentials, hold the SET button down and restart the dropController by clicking the RESET button. To show that the SET button is active/held the dropController title will be inverted (black on white).
[image: screen shot showing inverted title]


Unable to Connect

After you have connected the dropController to your local network, if you cannot connect from a desktop on the local network check the following:
1 – the dropController and PC are on the same network.
2 – is a firewall is blocking the connection (Windows firewall may be blocking unknown IP addressees on the local network by default).


Web Control App

The control app is based on the previous Android app design and the controls should be familiar to anybody who has used a previous version of the dropController. Almost all the controls are the same as in the previous version and you can get a good overview from the version 3 guides under the User Guide menu.

There are 5 main pages
– Drops
– Settings
– Drain
– Graph
– About

There are 2 popup screens
– Loop Page
– Firmware update

After the dropController connects to the local network, go to the assigned IP address. In the example here my IP is, and the main Drop Page should appear.


Updating the Firmware

dropControllerV4 has an easy to use update function on the Settings page:

Download the firmware from the link at the top of the page. The download will normally be a zip file.

Unpack and place the folder somewhere convenient. Mine is on the desktop.

In the app, go to the Settings Page and click the Update button. This opens the Update Page.

On the Update Page you can see the current firmware version. Mine is DC4_0527. I will be updating to DC4_0528.

Click the Browse button and navigate to where you put the bin file. Click Open.

Click the Upload button to start the update.

When the update in complete the dropController will reset.

Refresh the browser and go back to the Update Page to check the current firmware version.


Manual Drain Function

dropControllerV4 has a Manual Drain function. Here is how to use it.

dropControllerV4 manual drain function
To enter Manual Drain click the SEL button.

The screen will change to the Manual Drain menu.

Click the SEL button to increment the valve. The valve number increments; 1,2,3,4,5,6,7,8. After valve 8 EXIT is displayed.

Pressing the SET button will open and close the valve.

To exit; press the SEL button until EXIT appears then click the SET button. You will return to the main display.


Web App

If the web app is open while using Manual Drain, the app will follow the dropController.

When the SEL button is pressed to enter Manual Drain, the app will open the Drain Page. Note that the menu in the app is not active.

When a valve is opened using the SET button, the app control turns green to show it is open.

When Manual Drain is exited, the app will return to previous page.

Manual Drain can only be used when there are no active drops.
Drops cannot be made while using Manual Drain
Valves automatically close when incrementing the valve number and on EXIT.