Version one of the swimming pool controller was always intended to be just a proof of concept and to be replaced with a more advanced firmware once we knew what needed improving.
First of all, the original system worked worked really well. The main functionality was that of reading temperature sensors and decide whether the pump was allowed to run and if a specific valve needed to be open or closed. Nothing to complex there. The main focus was on the electronics and collecting data for a future replacement.
So what improvements will be made?
Graphical User Interface
The original had a basic 4 x 16 character display showing only the most important information. It will be replaced by a 320 x 240 color TFT display. To be able to work with so many pixels the microprocessor I will be using will be a Teensy 3.0. The display will be used for the following:
The previous system only provided error messages. Now a menu and a communications interface will provide the means of changing system settings and changing the between views on the display. There are two ways you can communicate with the system:
General Software Changes
To make a stable and more versatile system the system will rely heavily on error handling when a sensor fails. When a sensor fails the system should go to a "safe" state and enable the buzzer for an audio feedback that the system needs to be checked. The menu provides a means to override the system in case maintenance to swimming pool filtration system is required.
There will be a few little hardware changes. Some of these are part of future proofing the design for possible upgrades.
George Timmermans, Research Toolmaker, Software Engineer and Tinkerer