When I sit in my tea room, I have a decent view out the sliding glass doors to the backyard. I can see the pool, the patio, the cacti that my wife and I planted, and… a really ugly pool filler.
Something I didn’t know before having a pool, but which would have been obvious after any amount of contemplation, is that pool water evaporates. Our pool loses approximately 50-100 gallons a day. Most people stick a hose in and fill it every once in a while, but I hate non-automated solutions, so I got a mechanical pool filler, which is just hose with a float valve attached to it that you set on the edge of the pool. When the water level drops, the float inside it lowers, and that moves a lever that opens the valve and lets water in.
I works really well, but the fact that it is visible is like a pebble in my shoe. I think about it all the time and try to come up with ways to get rid of it. Newer pools have built in fillers, but they require a separate pipe to be plumbed to the pool, which would be very expensive to retrofit.
You could argue that I don’t always choose the most important targets, but when I get my sights locked onto something I am tenacious. This month, I decided, would be the month that I get rid of the pool filler.
There were two fundamental problems to solve. The first was detecting the level of the pool water, and the second was getting water into the pool. Neither has an obvious solution when you aren’t willing to run wires or pipes to the pool.
First I decided to tackle the water level. The first method I tried was ultrasound. I bought an ultrasonic sensor, attached it to the eave of the house closest to the pool, connected it to an ESP32 ($7 general purpose computer) and for the life of me I couldn’t get it to read the water level of the pool. I measured all of the angles, but maybe I got them wrong (I tried a few variants), or maybe ultrasonic sensing doesn’t work at the angle I was attempting and needs a flat surface for a reflection. After two days of trying different things, I gave up on it.
Next I briefly tried computer vision, but quickly realized that the camera feed I was going to use for detection was so bad that even I couldn’t tell what the water level was, and I decided this would cause too many headaches and maybe not be reliable enough.
Then I had a genius idea. There’s a conduit that runs from the pool equipment to the light fixture in the pool. The entry point to it is a few feet above the pool, but it obviously goes down to the level of the water underground, and it must have water in it. I could put a water sensor in the conduit at just the right level and detect when it was full. I built a water sensor and for some reason it didn’t really work. If I put it in water outside of the pipe it triggered, but if I put it way into the pipe it would trigger and then say it was dry. If I pulled it up it was clearly soaking wet and was deep into the pipe. I tried modifying it a few different ways but couldn’t get it to be reliable.
I did have an idea for a more reliable method, but it was a more complex project than I’d done before so I was avoiding it. But after trying three other methods, I decided it was time. It took me about two weeks of trial and error and large 3D printed parts, but I built a solar powered device that could replace the skimmer cover on the pool deck and would extend a probe into the water. While I was at it I added a thermometer to it so that I could also replace the ugly thermometer floating in the pool.
The electronics of it were actually much easier than I expected, especially the battery and solar management, but I ran into a few issues with the complex 3D printed parts that I designed. Even on my very fast Bambu P1P printer they took 4+ hours each to print, so when a cable was a bit too tight or the shaft of the probe was too narrow to allow the float sensors to move freely, I had to reprint and rebuild.
Next I had to figure out how to get the water into the pool. My original idea was to arc it through the air over the fence hiding the pool equipment and into the pool. It was a bit ridiculous and I figured I could come up with a more elegant way, but part of me was hoping that nothing else would work so that I would have to have an arc of water flying through the air into the pool.
The most practical solution seemed to be tapping into the pipes of the pool pump somehow. I almost drilled holes into the pipes but then realized that I would have to make sure the pump was always on when I was injecting water or it might flush the filter backwards. The more I thought about it the more I was worried that there might be some unintended consequence to tampering with the pool pipes, so I decided not to do it.
Just as I was about to start building the arc, I had another idea. What about the conduit that ran the wire to the light? Why not just dump water in there? I got a hose adapter and a piece of 1/4″ PEX pipe that I stuck way down into the conduit, turned the hose on full blast, and watched. There was some settled debris in the conduit that flushed out, but after that it was nice clear water. Perfect!
I bought a 12v 1/4″ valve, hooked it up to a relay, and wrote some logic for everything in Home Assistant, and then waited for the pool to evaporate enough to trigger the sensor. After all the roadblocks getting to that point I was relieved that the sensor stayed charged from the sun, reported the level accurately, and that the valve worked.
Today when I had tea I got to look out the window and not see the old pool filler, it was glorious.
A couple things worth thinking about:
Sometimes I’m surprised at how not tenacious people are. If I have an idea of something I want to exist that I know must be possible, I will not stop until I figure out a way to do it. The pool filler is an obviously frivolous example, but most of the best things in my life have come as a result of being tenacious. At the very least, building a pool filler is good practice for seeing things through and persevering through roadblocks.
When I want to build or do something, I always try to come up with my own way first before I find out how other people have done it. I do this because I think the process is fun, and also because it will sometimes lead to solutions no one else has thought of. It turns out a company built a nearly identical sensor (which also checks water quality, something I also considered and would have done if I didn’t have a pool guy), but as far as I can tell no one has ever filled a pool through the light conduit. I don’t take it too far, though. If I can’t figure out a good solution to something I’ll find out how other people do it.
Photo is the pool filler installed in the pool deck. My old filter cover was cracking, so it was a double bonus to not have an old one in there.
Thinking about doing a little Vegas meetup in mid-August. If you’re interested message me at vegas at this domain and include a short bio and whether or not you live in Vegas.