https://github.com/chl33/boiler
Software for monitoring water level in a home boiler
https://github.com/chl33/boiler
boiler-monitor esp32 platformio
Last synced: about 1 month ago
JSON representation
Software for monitoring water level in a home boiler
- Host: GitHub
- URL: https://github.com/chl33/boiler
- Owner: chl33
- License: mit
- Created: 2024-08-24T21:03:30.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-31T23:41:46.000Z (over 1 year ago)
- Last Synced: 2025-03-29T01:42:32.275Z (about 1 year ago)
- Topics: boiler-monitor, esp32, platformio
- Language: C++
- Homepage: https://selectiveappeal.org/posts/room133/
- Size: 155 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Boiler133

Has your boiler ever shut down because it ran out of water?
This is software for monitoring the water level of a boiler, using a PCBA based
on an ESP32.
It is based on the [og3](https://github.com/chl33/og3) C++ framework.
The PCBA and project box are shared with the
[Room133](https://github.com/chl33/Room133) box.
See the Room133 [blog post](https://selectiveappeal.org/posts/room133/).
## Features
* **Water Level Monitoring:** Uses a non-contact sensor to detect if the boiler needs refilling.
* **Environmental Monitoring:** Measures Temperature and Humidity using an SHTC3 sensor.
* **Home Assistant Integration:** Automatically discovers devices in Home Assistant via MQTT.
* **Local Display:** Shows status (Water OK/Empty, Temp, Humidity) on an OLED screen.
* **Web Interface:** Built-in web server for viewing status and configuring WiFi/MQTT settings.
* **OTA Updates:** Supports Over-The-Air firmware updates.
## Hardware
* **Board:** ESP32 (NodeMCU-32S compatible)
* **Sensors:**
* [Taidacent Non Contact Water Level Sensor](https://www.amazon.com/gp/product/B07FC8K28F) (Connected to GPIO 23)
* SHTC3 Temperature & Humidity Sensor (I2C)
* **Display:** SSD1306 OLED Display (I2C)
* **LEDs:**
* Red: GPIO 18
* Yellow: GPIO 19
* Blue: GPIO 20

This is the board used for running the boiler software, which is in the Room133 project.

This is what the device looks like in its 3D printed project box.

## Getting Started
### Prerequisites
* [PlatformIO](https://platformio.org/) (VSCode extension or CLI)
### Configuration
1. Clone the repository.
2. Copy `secrets.ini.example` to `secrets.ini`.
3. Edit `secrets.ini` to provide your configuration:
```ini
[secrets]
udpLogTarget =
otaPassword =
```
### Build and Upload
Run the following command to build and upload the firmware:
```bash
pio run -t upload
```
To monitor the serial output:
```bash
pio device monitor
```