Main requirements:
- Water level range 0-10m
- Accuracy - 1 cm
- Autonomous work time - 180 days (at least)
- Ability to retrieve data from logger within the cave
There are virtually only two types of sensor that can be used (excluding expensive TOF optical sensors) - ultrasound and barometric
Ultrasound sensors were tested, but accuracy was poor, and the large water surface was needed for stable work.
The main problem with barometric sensors is that one sensor is not enough to measure water level. Second sensor is needed to compensate atmospheric pressure fluctuations
There is a similar to my project - The Cave Pearl Project. I've asked them a couple of questions, and Edward Mallon kindly gave me some advices about using barometric pressure sensors under water. I've decided, that MS5803-05BA sensor fits my requirements the most.
The device consists of main and underwater units connected with 20m cable. The main unit is built around STM32L152RD microcontroller. It has microSD card slot and batteries inside. Underwater unit consists of sensor, STM8S003 MCU and differential pair driver. It is hermetically encapsulated with thermal glue.