My house is not a consistent temperature and I don't know why (well, counting the number of vents gives me a clue...). To find out the scale of the temperature differential and how if related to my furnace heating cycles, I'm developing this application.
- Collect temperature data
- Store data in a SQLite database
- Pull data from database and graph
- Test-driven development using PyTest
- Multithreading (ESP32-CAMs are slooooow)
- Containerization to handle application resilience (restart on failure)
- ESP-32 CAM microcontroller with DS18B20 waterproof temperature sensor on breadboard. See this Random Nerd Tutorials article.
- Rasperry Pi 3 running the temperature server 24/7.
- ESP-32 programmed with file in /ESP32_ArduinoC/Remote_Temp_ESP32.ino. Runs as a REST endpoint and serves JSON temperature data.
- SQLite3 database to store temperature data, sensors
- Python server that polls all sensors for data and stores the temperatures returned.
- Docker container encapsulating Python server and database.