
Transmitter
mvanbrab/water-level
A project to measure the water level in a water reservoir, using a waterproof ultrasonic sensor

A project to measure the water level in a water reservoir, using a waterproof ultrasonic sensor
Receiver is an open-source printed circuit board by mvanbrab, from the mvanbrab/water-level repository on GitHub. It is a 2-layer board of 85.1 × 53.3 mm with 17 parts on 48 nets, routed with 151 tracks and 2 vias.
It is built around the ESP32-DEVKITC-VE and MAX3232ID. Its parts include 6 connectors, 5 capacitors and 2 ICs. It belongs with the ESP32 boards of this library.
Here I share hardware and software about my water-level project, whose purpose is to measure the water level in a water reservoir, located under the ground.
This project actually has a predecessor. Enjoy reading about it in this bit of history.
The first piece of hardware is a transmitter. It measures the water level with a waterproof ultrasonic sensor and sends the measurement result as a JSON object via RS232 to a possibly connected receiver.
The positioning of this sensor in my project is described in the physical setup.
Here are some pictures showing the transmitter in practice.
In the folder hardware/transmitter you'll find the hardware design as a KiCad project. Without Kicad installed, you can view
The folder software/WaterLevelTransmitter is an Arduino sketch, containing the software of the transmitter part of the project.
Read more about this piece of software here.
The second piece of hardware is the receiver. It requests output from the transmitter and publishes is to whatever destination.
Here are some pictures showing the receiver in practice.
In the folder hardware/receiver you'll find the hardware design as a KiCad project. Without Kicad installed, you can view
About the receiver hardware:
The folder software/WaterLevelReceivers is contains a set of Arduino sketches, each containing a different software solution for the receiver part of the project.
Read more about this piece of software here.
| Transmitter | Receiver |
|---|---|
| GND (J1.2) | GND (J1.3) |
| TXD (J1.4) | RXD (J1.2) |
| RXD (J1.5) | TXD (J1.1) |
| Qty | Value | Footprint | References |
|---|---|---|---|
| 5 | 100n | Capacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mm | C1, C2, C3, C4, C5 |
| 4 | MountingHole | MountingHole:MountingHole_3.2mm_M3 | H1, H2, H3, H4 |
| 2 | Conn_01x02 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | J2, J4 |
| 2 | Conn_01x19 | Connector_PinHeader_2.54mm:PinHeader_1x19_P2.54mm_Vertical | J3, J5 |
| 1 | Conn_01x03 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J1 |
| 1 | Conn_01x04 | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J6 |
| 1 | ESP32DevKitC | MyFootprints:DIP-38_W25.4mm | U2 |
| 1 | MAX3232 | Package_DIP:DIP-16_W7.62mm_LongPads | U1 |
It measures 85.1 × 53.3 mm and has 2 copper layers, 1.6 mm thick.
17 parts, built around the ESP32-DEVKITC-VE and MAX3232ID. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
From the mvanbrab/water-level repository on GitHub, at the commit this page was made from: the board is hardware/receiver/receiver.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Its repository states no licence, so its author keeps all rights: ask mvanbrab before reusing the design.

mvanbrab/water-level
A project to measure the water level in a water reservoir, using a waterproof ultrasonic sensor

cole8888/SRNE-Solar-Charge-Controller-Monitor
Read data from SRNE solar charge controllers.

doudar/SmartSpin2k
Transform your spin bike into a Smart Trainer!


zephray/ELTerm
ANSI/VT100-compatible serial terminal built with Raspberry Pi Pico and EL640.480-AM/AG screen


Tjeerdie/SPECTRE
Speeduino compatible engine control unit (ECU) based around black STM32F407VET6 board.

scrapcomputing/ThrottleBlaster
A Turbo circuit with a MHz display that can slow down the CPU speed
