https://github.com/ultimatedoge5/cloudy
A weather station project based on the BME280 sensor with live database updates and a web ui.
https://github.com/ultimatedoge5/cloudy
bme280 esp32 weather-station
Last synced: 3 months ago
JSON representation
A weather station project based on the BME280 sensor with live database updates and a web ui.
- Host: GitHub
- URL: https://github.com/ultimatedoge5/cloudy
- Owner: UltimateDoge5
- Created: 2022-12-06T22:54:37.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-30T23:41:44.000Z (about 1 year ago)
- Last Synced: 2025-01-08T06:43:23.404Z (5 months ago)
- Topics: bme280, esp32, weather-station
- Language: TypeScript
- Homepage: https://cloudy.pkozak.org
- Size: 1.12 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Cloudy
A weather station with a fronted UI and PHP backend was my first-ever web project. It has been 4 years since I finished it, and I've decided to do it again but with my current knowledge.
Another reason for this project is that I wanted to learn how to design schematics and PCBs.
You can see the (hopefully) live data on the [website](https://cloudy.pkozak.org).## Hardware

The station uses a BME280 sensor to measure temperature, humidity and pressure. Besides uploading the data, it's also shown on a 0.96" OLED display (Not included in schematic).
The [schematics](/schematics/) and PCB use an ESP32-C3-MINI-N4, but because of the costs of manufacturing, assembly/stencil and
shipping, I've decided to assemble it on a breadboard with an ESP32-WROOM devkit.The [schematics](/schematics/) also include a 3.3V voltage regulator, USB type C for power and programming, and a IDC header for a PMS7003 air quality sensor that I could integrate later if I'd like to.
As for the future sensors, aside from the PM2.5 sensor, I'd like to add a rain sensor and an anemometer.
The first one is cheap and easy to do, but the second one is not so much. Anemometers are expensive, and I don't have the tools to make one myself.
Even if I had one, I do not have an appropriate location to install it.## Software
The software for the station is in the [driver folder](./driver). It's written in C++ and uses Arduino libraries. For the backend, I've decided to use Supabase, because of the REST database API and the real-time features which allowed an easy integration with the microcontroller.