Leopard Interface "Screen Shots"
This page shows several "screen images" of the Leopard touch-screen controller. I apologize for the pictures; I cleaned this up as best I could, but LCD displays don't photograph well; attempting to hit them with external lighting to get better contrast just reflects back at you.
All of these were taken of the ACTUAL Leopard on my family room wall using my actual in service screens in my home. No "mocked up fakes" here.

This is the top-level screen. Note that the house's status, including the indoor and outdoor temperature are displayed, along with the heating and cooling setpoints and mode indicators.
On the pool side there is the circulation temperature (taken from the "suction" side of the pump); the circulation pump state is displayed, along with the status of both heaters and the temperatures available at the solar panels and the return to the pool, respectively. The setpoints for both pool and spa temperature are also on this display. (The setpoint for the pool is 81, not "01" as it appears - that's an artifact of the digital picture - sorry!)

If you press the "House" button on the top panel you get this page. These are all "direct execution" buttons; hit them and they do something. In the case of all but the two "set" buttons, that something is a HomeDaemon event.
The top row has two "setpoint" controls. Hit either of those and you get....

Yes, a real numeric keypad. No more "up, up, up" button nonsense. You want 75 degrees, key 75 degrees. HomeDaemon's event list has filters to make sure you don't do something stupid (like try to set the heating setpoint above the cooling one, or set either to outrageous values.)
The pool button off the top level brings up a screen identical in design to the Home button but with different captions and functions:

The important thing to note here is that the PAGE in the Leopard used to display both this and the "Home" control are IDENTICAL. The only difference is the Leopard control file in HomeDaemon. You can literally define ANY number of these pages, all using just ONE screen. Since the Leopard has only 24 screens (plus the user bitmap) available, for complex configurations this is extremely useful. All the buttons on these pages start completely filled in (black) and the "white" effect is done by the actual display code. This allows you to have buttons look "inactive" (black) if you don't fill up a particular control page with relative ease.
The leopard interface module also supports a "timers" function, where you can set timed execution of any function you would like to permit. Here is the "top level" display:

If you press "SET", you will be presented with a list of functions you can set as a timer, and then prompted for a time in DDHHMM format (the day, "DD", is optional; if omitted it defaults to either "today" or "tomorrow", if the time is BEFORE the current time). This allows you to do things like set the spa to come on at 4:30 PM tomorrow, so when you get home at 6:00 its hot and waiting for you....
The simple-looking functionality here belies rather extreme complexity under the surface. For example, if you press "Spa On" in the above page, what actually happens depends on a set of factors - is the pool pump on when you command it, is there solar heat (and is it of sufficient quantity) available, and is the "Party" mode (which is not visible on these screens) set? If the pool pump was not on when you commanded the spa to be enabled, the spa first is cycled to dump the existing water into the pool via the spillover before it is put in "run" mode and the heater (either or both) are engaged. If "party" mode is engaged, then every three hours we execute a shorter (about 1/3rd of the water volume) water turnover, preserving the water quality (since chlorine is rapidly depleated with lots of swimmers in the hottub, but cycling ALL the water would unacceptably cool the spa - so we do it a bit at a time.)
When the Spa is disabled a similar decision tree is executed. First, the heater (solar, gas or both) is shut down. If the pool requires heat the contents of the spa are cycled into the pool, thereby not wasting the heat that was previously used for the spa. If the pool is still in its normal daily filter routine then it returns to normal operation; otherwise the circulation pump is shut down once the heaters have cooled and (if necessary) the spa's water has been cycled into the pool.
HomeDaemon DIRECTLY controls the HVAC in my home through a RLY8XA module, and a second one provides pool and spa control (activating the heater and valves directly, and through a 220V contactor for the pool pump itself.) The temperature sensors are simple LM34s that I run through an op-amp to get the appropriate range, then into a SECUI16 in order to provide analog input values. Resolution on these sensors is approximately one half degree fahrenheit. The temperature sensors for the pool plumbing (several) and outdoor temp are potted in epoxy inside 1/2" PVC nipples, allowing them to be replaced if they fail without tearing out the plumbing - given that the LM34s are a whole buck a piece, this is a good thing and makes for a very reliable and nice installation. The LM34 for the house temperature is simply sitting behind the old analog thermostat cover - which remains active and automatically will "take over" if the automation fails due to the way it is wired into the HVAC controls. All "short cycle" protection and similar requirements are provided internally by HomeDaemon's event file logic.
Hit <BACK> on your browser to return to HomeDaemon's page.