Irrigation/Door Main

The "Tcl" program.

I used Tcl/Tk for the GUI. By using Tcl/Tk, I could use the same code for either a linux box on my network, or my android phone using the Androwish package. I looked at creating an app from scratch for android, but way too much work. I found androwish by accident while googling and found it perfect for my application. The base androwish is pretty big, but once it is installed on the phone, it is possible to add additional apps using minimal space. The great thing about this approach is you can very quickly verify changes to the GUI on the linux box and once you have it the way you want, you can push it to the phone and have the same look and feel. Very cool.

Picture of inital display

Upon launch, the GUI displays the current status at the top and 5 buttons below. The General button displays

and is used to control the water multiplier and if the system should be suspended because of rain. If the water multiplier is adjusted, the save button must be pressed to activate the change.

The Manual button displays

and is used to manually start either a specific zone, or a program. The special "TEST" program is a builtin 1 minute per zone test. The "STOP" and "NEXT" buttons can be used to stop the program or go to the next zone in the program.

The Timers button displays

and is used to setup the programs. Pressing the PGM button displays the program. Begin by setting the zone time values for the program. Click the "Zone Times" button to switch to that display. After entering the number of minutes to water each zone, press the "Times/Days" button. To select a program using day(s) of the week, click the desired day(s) to run the program, the start time and the number of times to sequentially run the program. To select a program to run every N days, set all days to grey, and enter values for "Every" and current day. Watering occurs on day 1. After setting up the values, click "Save" to save the program.

The Config button displays

and is used to name the zones. Simply enter the name of each zone and then click the "Save" button.

All of the programs and configuration data is held in the file irrigateDefaults. The file is read by the daemon C program at startup. The program also writes the number of seconds each zone has been active during the year by day. This could be used to estimate water usage.

©2016 Stabie-Soft, Inc. All Rights Reserved.