OpenPoolController...pool owners will want to read this

Since I got my first photon I have wanted to build one thing, a pool automation solution that isn’t thousands of dollars, is truly “smart” and doesn’t waste energy. Behind ac and lawn sprinklers pools are the number 2 consumer of electricity and water for homes so equipped. They are a great addition to a home (not a sound investment though) and my family loves to jump in the pool on a hot Texas day but there aren’t any truly smart controllers out there. What I’m hoping to accomplish is to create a community of people that want to modernize their pools so they can enjoy them and not have to constantly manage them.

This is NOT an attempt at making a chemicals manager, there are two companies doing amazing work in this arena: PHin and Sutro. Or just stick with your current pool person/routine, I’m not all that interested in displacing local jobs.

What it will manage:
The circulation: 1/3 of water hygiene is proper circulation and movement of water. There are rules of thumb to apply for this that limit the waste of over-circulation which saves money but also ensures healthy pool water.

The filtration: another 1/3 and while linked to the circulation it requires looking at things over time. What was the filter PSI when you last cleaned it, what is it now, did I backwash long enough or properly clean the cartridges? Was it really windy the day before, should I run the filter/Polaris longer to account for added dirt and leaves?

The heater: learn how long it takes to heat the spa/pool so an owner can just set an app for a certain day/time and the system would fire up the heater to meet that goal.

The valves: move the valves to switch between pool/spa mode for shared equipment systems, turn off/on water features.

The Polaris/cleaner: run the booster pump to set free the Polaris/cleaner, add a little extra time after windy days or maybe in the spring/fall if you have foliage that drops into the pool during those times.

The lights: many people are switching to LEDs which use proprietary PLC protocols BUT they are almost all documented someplace so modular code based on manufacturer would be great!

The pumps: Single, Two and Variable speed pumps have varying levels of control we could access. For the variable speed pumps they are all RS-485 and again well documented. I shortcut the modbus process and installed an Autelis unit so I have web access to change speeds, read current wattage being used, see current RPM. I am betting someone could tap into that same pump directly and save others about 300 bucks. For the others, signal relays to large relays will do the trick. Most likely an electrician would be needed if you have the venerable Intermatic yellow timers.

Rules of Thumb and Logic:
Run the pool 1 hour for every 10 degrees it is outside, in the winter months I run a minimum of 4 hours. Get the weather, set a schedule and adjust up until the schedule starts. The owner would just set the window of hours that they would want their pool to do all this stuff (9am to 9pm for example).

If the pool ran for 6 hours overnight due to freeze protection…don’t run it again that day. This drives me insane.

When it is really windy out, shut off fountains and falls…water loss is accelerated by wind. A cover is always best but they are all manual unless you own a 10k autocover so I think that falls out of scope.

The ask:
I have a start to all of this but would love to get some feedback on my code and help to move the ball further down the field. I think that commercial parts will handle everything outside of the Photon itself but in the future if a board was developed I would pay for the production of those boards for those that contributed.

If anyone would be interested in contributing to this project and putting something out in the world that is OpenEverything and surpasses the industry…reply here and lets get organized!


Hi Luke,

Fellow Texas here (NTX). I built my pool controller last week with similar goals:

  • Control over 5 relays (main pump, polaris, blower for hot tub, salt generator, and heater)
  • Control of 2 valve actuators (24v)
  • physical buttons for pumps, hottub
    o Internet weather checks (1 hr per 10 min)
    o app access for, well everything.
    o RS485 serial bus to the heater and salt generator
    o web / mobile app

+=done / o=on the radar

Right now the hardware is ready (I’m using a photon with the relay shield, plus an external 4x relay board) for a total of 8 relays. All will switch 24v A/C. The pumps have a second high power relay stage so these are ( DPST dual pole single throw relays)

Right now the calendar/schedule is hard coded. What are you considering for you scheduler? I was even looking at google Calendar’s APIs for external accessibility. Any ideas there?

I’m happy to share my (simple) code. where ot post?

Hi, this sounds great - Is this project posted somewhere ?

Hi @Seamusk , I documented a basic pool controller here, in case you would be interested.

Thanks for sharing it Gustavo! I am riffing off that project as my first Photon project. I have a thermistor already installed that is currently connected to my Pentair solar touch system. I was trying to see if i could use the single thermistor for both the solar touch and the Photon so i could avoid drilling more holes.

Another project I had in mind was to read the output from the variable speed pumps via the RS-485 - which was referenced in this post. Was interested to see if community had any success with this.


for using a thermistor, you can look at this project here. :slight_smile:


It took a backseat for a while now. I have picked it back up and started poking at the edges of it but lots to do. I have a variable speed main pump that uses RS-485 so I have learn ModBus and start picking apart the messaging before I can do much on that front. As for the booster, heater and instrumentation I have made more progress there. I will write up what I have and share it sometime soon (soon = in the next month or so).