Water level monitoring system (Watmonitor) is a IoT dasboard based on PHP, HTML5 and lightweight Bootstrap Bare template. It provides gateway for sensor node to pass the data of water level measurement into SQL database in periodical 5-minute intervals. For users it comes with user friendly responsive web interface that offers real-time data of water level and water volume, connection status of sensor node, but it provides also historical data visualisations via graphs, table visualisations or also minimal or maximal measurement per day, week or month. The web interface is universal and can be used with any sensor node for hobby / industrial usage. There are example source codes available for open-source hardware Arduino, ESP32 and ESP8266 and ultrasonic sensors that can be used for sending data into the dashboard. These examples utilize ultrasonic sensors, including popular models like HC-SR04 and its waterproof variant JSN-SR04T, to record data about the water level in dug wells through a sensor node equipped with a microcontroller. In addition to HC-SR04 and JSN-SR04T, our program supports various sensors with Trigger/Echo signals, such as RCW, US-XXX, IOE-SR0X, SR0X, HC-SR0X, HY-SRF0X, DYP-MEXXX, and Parallax PING)))™ series, providing flexibility in implementation. There is possible also to use ToF laser ranging sensors such as VL53L0X or VL53L1X (200 or 400 cm range). The sensor node routinely conducts 10 averaged measurements with the ultrasonic sensor every 5 minutes. The recorded values are then transmitted to the server via multiple interface options, including WiFi, Ethernet, IoT network LoRaWAN, NB-IoT, or Sigfox. Web interface comes in various language options.
Ultrasonic sensors operate by sending a Trigger signal with a 10 μs duration, which reflects off the water surface and returns as the Echo. The Time-of-Flight method calculates the time between transmission and reception to determine the distance of the water level from the sensor. The speed of sound is calculated at 343 m/s at a temperature of 20 °C, forming the basis for accurate distance measurement. An essential parameter is the beam width, representing the detection characteristic. The HC-SR04 sensor features a narrow 15° detection characteristic, making it suitable for narrower wells and tanks. While the HC-SR04 is ideal for narrower environments, it is not waterproof and has a higher risk of corrosion in wet conditions. Therefore, placing it above the well is recommended to minimize the impact of humidity. The JSN-SR04T, a waterproof sensor, has a wider 60° detection characteristic. However, this limits its use in narrow wells, as the beam widens with distance. A larger well diameter is required (e.g., 6 meters diameter for a well depth of 4.5 meters) to guarantee accurate measurements without reflections. Ultrasonic sensors, in general, are maintenance-free. However, the JSN-SR04T sensor has a control electronic board that should not be exposed to moisture and water. The sensors, including JSN-SR04T, can measure a maximum height of approximately 400 to 450 cm, providing a versatile range for various well depths. Understanding the intricacies of ultrasonic water level sensors empowers effective monitoring, ensuring precision and reliability in diverse environmental conditions. Explore placement strategies and the features of HC-SR04 and JSN-SR04T for optimal results in your water level measurement system.

Enhance your well monitoring experience with our advanced web interface, backed by a powerful backend that leverages trigonometry to estimate the maximum depth of your well. This innovative solution is designed to calculate the optimal depth for each sensor, based on its unique characteristics, making it accessible even for those unfamiliar with sensor selection. The project seamlessly integrates with microcontrollers, with the option to use the widely popular Arduino platform (Uno/Mega) in revision R3. This compatibility extends to Ethernet shields communicating via the ICSP interface. Alternatively, Ethernet modules such as Wiznet W5100, W5500, and USR-ES1, as well as MicroChip's ENC28J60 with software TCP stack, are fully supported, enabling HTTP connectivity on port 80. Explore the versatility of WiFi microcontrollers, including Espressif Systems' ESP8266 and ESP32, both of which offer various operating modes such as StandBy, StandBy + OTA for remote firmware updates, and deep sleep mode for ultra-low-power applications. The ESP microcontrollers stand out by providing encrypted communication through the HTTPS protocol. ESP32 goes a step further, allowing the use of PHY Ethernet with the LAN8720 RMII interface, supporting both HTTP and HTTPS connections. Security is a priority with the incorporation of Root CA certificates in .pem format directly into the source code of the microcontrollers, stored in flash memory (PROGMEM) to optimize RAM usage. These certificates, issued for 10 to 20 years, eliminate the need for frequent renewals. Effortlessly access real-time data on water level and volume in JSON format through the web interface. Take your well monitoring to the next level by integrating our water level monitor project via MQTT into popular home automation platforms like Hassio, Domoticz, and Loxone. Visualize data on dedicated dashboards such as Grafana, Ubidots, Thingsboard, or Cayenne. Empower your peripheral control capabilities by using data from the web interface to manage irrigation, watering, and domestic waterworks. Elevate your well monitoring experience with our user-friendly and technologically advanced solution, catering to both experts and novices alike.
| Operating mode | StandBy | StandBy + Over The Air (OTA) | Ultra Low Power (ULP) | FreeRTOS |
|---|---|---|---|---|
| Microcontroller | - | - | - | - |
| Arduino + Ethernet | ✓ | × | × | × |
| ESP8266 | ✓ | ✓ | ✓ | × |
| ESP32 | ✓ | ✓ | ✓ | ✓ |
| Library name | Library function | Download |
|---|---|---|
| NewPing |
Library for AVR microcontrollers (ATmega) Arduino Uno / Nano / Mega. It allows to perform measurements with ultrasonic distance sensors RCW, US-XXX, IOE-SR0X, SR0X, HC-SR0X, HY-SRF0X, DYP-MEXXX, Parallax PING)))™. |
Download |
| NewPingESP8266 |
Library for ESP8266 and ESP32 microcontrollers. It allows to perform measurements with ultrasonic distance sensors RCW, US-XXX, IOE-SR0X, SR0X, HC-SR0X, HY-SRF0X, DYP-MEXXX, Parallax PING)))™. |
Download |
| VL53L1X |
Library for Arduino, ESP8266 and ESP32 microcontrollers. Allows you to perform ToF measurements with STMicroelectronics VL53L1X laser sensors. |
Download |
| Ethernet2 |
Library for AVR microcontrollers (ATmega) Arduino Uno / Nano / Mega. It enables communication with the Ethernet module Wiznet W5200 to W5500 via the SPI interface. |
Download |
| Ethernet3 |
Library for AVR microcontrollers (ATmega) Arduino Uno / Nano / Mega. It enables communication with Ethernet module Wiznet W5500 V2 - USR-ES1 via SPI interface. |
Download |