Is there value in using the same series of boards and hats?

I’m looking to start my first project and have big ambitions to follow but I need a little help to get started.

The first project is to build a water level tracker for the pool by putting an ultrasonic sensor (A02YYUW) under the skimmer box lid and transfer the data into my home wifi network where I’ll track, send alerts, etc.

What Arduino based board and ESP8266 should I be looking at?
Does it make sense to stick with the same brand/range or are they entirely interchangeable?
I hear the positioning of the ESP8266 can affect its range, are there some combinations better than others?



Hey Josh,

That sounds like an awesome project Idea! I would recommend having a quick look at our ESP naming convention guide here. I can see the sensor you are looking at works via UART, so any ESP variant board should be suitable.



Hi Josh
I am not trying to put a dampener on your project but I think something like this has been looked at before without much success I seem to remember. Not necessarily on this forum. The difficulty is the rapidly changing level in the skimmer box, particularly if there is anyone in the pool. I think even wind caused a significant level change.

It is very conceivable you have thought of a solution for this. I think everyone would be interested to hear if there is some way to overcome the problem.

Useful project, best of luck with it.
Cheers Bob


Hi Blayden,

Thanks for the information. I’ll get reading and make a decision.



Hi Bob,

Good point, with the motion of wind or anyone in the pool your water level will fluctuate back and forth around its true water level.
I imagine it should be possible to determine the average water level by taking samples often enough to catch the peaks, troughs, and middles between the “waves”. This will be faster or slower depending on the kind of disturbance.
I can’t say I’ve ever wondered what the Nyquist frequency of pool water is before today, every day a new challenge.


Hi All
I think one problem is the confined space in the skimmer box. Seems to “amplify” any water movement something like a blowhole at places like Kiama etc.
Cheers Bob


Hi Bob and Trent,

The variability in the water level based on the different conditions of the pool have gone through my head many times.

With the way the pool was installed (before my time) the dumb pump/filter/chlorinator setup has had instances where the pump runs dry for hours and the despite flagging “no flow” it keeps going. So what I’m hoping to achieve is to determine whether the water level is sufficient to allow enough flow into/through the skimmer box when the pump is on and where its not send an email alert. I can do this as the pump starts up and in the evening while it is hopefully calm.

Once I have it all “working” I plan to start in the plant room and get more data out of the dumb system, such as the filter pressure, etc.



Hi Josh
Good. You have obviously had thoughts on the water disturbance problem and possible ways around it.

I have only ever had 1 pool and that was in Papua New Guinea where the problem was too much water (annual rainfall about 200 inches/year). The excess was used to backwash the filter.
Cheers Bob


Hi Josh,

Sounds like you’ve got a pretty good plan to tackle this.
Since you don’t strictly need to know what the water level is as a measurement, just that it is at least a threshold level you might be able to simplify your system by using some sort of float switch as an alternative to an analog sensor.
Having the depth rather than a threshold is nice though if you can manage it.


You’re right, I don’t need a specific measurement.

The moment there is something mechanical my kids seem to have this unspoken promise to shorten it’s life. They get curious, push and pull until it pops. I like the idea of the ultrasonic sensor that will tuck up nicely underneath the skimmer box lid and be out of sight and out of mind.

Longer term it’d be great to understand how much water we lose to evaporation under certain weather conditions (or how much we save by keeping the blanket on) and all those things. But the pipe dreams can wait for now.


Just a suggestion here

To ‘dampen’ the fluctuations may I suggest a tube with the sensor at the top, and an inlet port at the bottom, with a piece of expanded foam filter across it. That way the fluctuations would be a lot slower / lower, and it would provide a ‘mechanically damped’ mean water level for you. Don’t forget to put a small breather hole at the top of the tube, noting that a small hole may also add dampening due to back pressure in the tube. You might need to experiment so that the back pressure doesn’t add a ‘compressive spring’ effect though…



Hi Josh and all,

Awesome insights into the pool aspect of the project and some solutions

If your budget allows I’d look for an ESP32 - with more memory and processing power it will only make your projects easier :smiley:

Any of the legitimate ESP32 (not S or C series, more below) have immaculate integration with the Arduino IDE, while there is some extra work vs an Uno.
It’s another step up for the S or C series (ESP32-S2, ESP32-S3, ESP32-C3) In terms of specifications the ESP32-C3 is the closest specification-wise to the 8266.
I’d check out these boards:

And a more value oritented option:

The main processor is mostly unchanged between brands but documentation is a gamechanger - and bonus features like battery monitoring.

There are a ton of variables when determining range, try to keep the antenna portion away from metal and dense materials such as brick, water ect. If you grab a devboard with an external antenna it will let you find a favourable position.
Running the sensor lines a bit longer will help a ton!



Thank you everyone so far.

@Blayden I had to read it a couple of times but I think I’ve got some understanding of the range now.
@Liam this is exactly the sort of recommendations and information I was after.

Time to make a choice and see how I go pulling it together. I know there are going to be plenty of iterations here.