First of all, I would like to wish everyone a Great 2024.
Secondly, I would like to thank everyone who helped me with the project I am about to discuss/update. In Aug. '23, I was finally able to install this ultrasonic water level sensor project into one of our domestic water supply tanks.
Fast forwarding - it has been a dismal failure. This was a two-years-in-the-making project, but unfortunately, once installed, nothing seemed work as it did during months of testing in my shop.
Functionality
In brief, the project sketch was designed to:
- send water level 'daily texts' @ 0800, 1400 and 2100 hours every day;
- send 'low level' texts if the tank water level fell below 8 feet;
- send tank level data to Adafruit's IO;
- if main/USB power is lost the LiPo powers the board until the main power returns
The well house enclosure has a LCD which shows: water level (ft), temperature ºF, humidity % and LiPo voltage level.
Initially, everything worked as it should. Then gradually, the 'daily texts' were sent sporadically if at all. This was followed by the 'low level' texts being sent erroneously non-stop at all hours of the day and night. I finally had to hide the text file to stop the texts. The Adafruit IO never faltered. These are all ultrasonic sensor issues.
Causes
I can make a lot of guesses, but that is all they would be - guesses. Two 'conditions' that exist in the tank that were absent from my shop environment were humidity and temperature differences. Neither of these are extreme and each are within the operating range of all sensors. This is not the problem.
Board, Sensors and Cable
- Adafruit HUZZAH32-ESP32 Feather
- Temperature/Humidity - Am2302. Now discontinued but still functional.
- Ultrasonic Sensor - DYP-A01-V2.0 A01NYUB Waterproof Ultrasonic Sensor Wiki - DFRobot
- The 40 ft 18-4 AWG cable was used for testing and final installation. This was done to avoid the obvious.
One odd thing about the ultrasonic sensor is that it continues to report a daily water level of either 14.4 ft or 17.2 ft without fail regardless of what the actual water level is. The water level changes slowly throughout the day and night so why it would just report these values is beyond me. The horn has been wiped down several times to remove condensation, but condensation was minimal and should not cause these misreadings in the first place.
Bottom Line
While I learned a LOT during the development of this project, the knowledge I gained cannot be taken from me. That cannot ever be construed as a a waste of time. However, hindsight indicates that for this 18 ft-height water tank project, using an ultrasonic sensor may not have been the best choice.
I will be switching to a transducer pressure sensor. They should arrive in a day or so and look forward to testing these sensors for this water tank.
Thanks.