Particle Photon Pool Pump and Solar Heating control

I built out a fully custom pool automation controller using a Particle Photon and a custom PCB printed by OSHPark. The Photon has some integrated web functionality and supports HTTP POST and GET, so this seemed like a great way to learn how to make a SmartThings Device Type. After tons of trial and error (wow is the SmartThings stuff finicky to write code for), I have two fully working device types, one to control my Pool Pump, another to control my Solar heater.

The biggest improvement I made was to leverage the Particle Photon for much more custom use than what was previously available (mostly turning on and off switches).

More information and how you could make your own or customize my Device Types to suit your needs are available on the GitHub repository: https://github.com/Here-Be-Dragons/Pool-Controller

Here is the actual controller:

And for a bonus, I also have it all logging and graphing to a Graphana dashboard:

6 Likes

Very cool! Thanks for sharing your work

Hi Sceptre,

Great project! Thanks for sharing!!

I want to get one, did you share your design file on OSHPark? Is it possbile for me to send your design to another cheap pcb manufacturer for fabrication? Thank you!

Yes, I have the .brd and .sch EAGLE files in the GitHub repo. You can order them from whomever you’d like, and modify them as you wish using the freeware version of EAGLE.

Any pics of how its wired to your pool?

It looks like crap inside the box. But basically the pool pump can be controlled using 3 on/off relays that allow you to choose between 2^3 speeds. Unfortunately it is only a one-direction communication, so I have no way of guaranteeing that the pool pump is actually working as intended. There is someone that recently opened an issue on my GitHub repo that has two-way communication working, where you could actually read live data from the pool pump using the serial Hayward communication protocol and get current wattage and speed data. I want to do this, it may be a bit over my head, though.

You can read more about it here: https://github.com/Here-Be-Dragons/Pool-Controller/issues/4
There’s a schematic that shows how to wire from the controller to my specific brand of pump for the relay control method. And here’s how it looks installed in my current box (I want to move it out to its own box.)