I haven’t been happy with the reliability of the ultrasonic level sensor on my rainwater tank, so I cobbled together a water pressure sensor on the tank outlet. Now, rather than measuring how much water is not in the tank, I’m measuring the pressure — and therefore the height — of the water above the outlet.
An ESP32 running OpenMQTTGateway sends the data to my Home Assistant server, where an alarm is triggered if the level decreases too quickly or for too long. I can also keep track of our water usage and possibly correlate it with other household activities.
One interesting side effect of the pressure sensor is when the pump kicks in, the pressure goes to 0, so I can use those downward spikes to keep track of when the pump is running. Next step is to get all this data into InfluxDB so I can make some nicer graphs.