This repository contains the hardware design and software for a wireless, energy harvesting flow meter. This is an inexpensive water consumption sensor that does not require external power or cables to transmit data. It uses a turbine as power supply, the power supply is also used as input to estimate water consumption.
This project was done as part of the Advanced Practical IoT and Seminar course given at the Delft University of Technology. If you are interested in the research, an accompanying paper is available in this repository.
This project is split up into different components:
pcb
KiCAD files for the prototypeanalysis.ipynb
Notebook containing all plots and analysis from the dataset indata
gateway
- Firmware for the receiver ESP32
- UART-to-MQTT script, parses the serial data from the receiver ESP and publishes that to a MQTT server
- All code for the web dashboard for tracking water usage
stm32f4_firmware
Code for the testing setup with a STM32, based around MBed OS.esp32_firmware
ESP32 firmware for the prototype, transmits the estimated water flow rate and power metrics via ESP-NOW to the receiver. Built using FreeRTOS and ESP-IDF.