The goal for the second iteration of this project is to make it less centralized. Sensors should be independent of logging and visualization. After version 1.5 this is already achieved partially: database and graphing run on my home server and the sensors are connected to an independent Raspberry Pi. Only reading out a few sensors every couple of seconds is no challenge for the Pi but wastes power. Running a full-fledged operating system for this simple task is just too much overhead – almost every micro controller can do that. Since I know python but I’m not as well versed in Arduino, C or similar, I would like to use a micro controller that can run python. Although python requires higher perfomance by design, there is a number of capable micro controllers out there today. The ESP32 is also overkill in terms of performance but I wanted to play around with one for a while. The built-in WiFi and Bluetooth come in handy for this project.
(Disclaimer: I know that there are a million other ways to get a data logging system and most of them are more efficient or better in some sense. But … I just want to work with an ESP32 😉
Another thing that I wanted to give a try for a long time now is the make custom PCBs (circuit boards) and 3D-print enclosures. This project seems perfect to learn those new skills as well: Develop a standardized PCB that can then be equipped with several sensors each and have one sensor board in each room. Finally, it becomes a true “home”climate system instead of just a room climate system.
Since most electronics slowly shift to USB-C today, this new iteration of the homeclimate project is also the oppurtunity to learn about USB-C. Spoiler: it is not as easy as it at first seems. Luckily, reading specifications and choosing the correct pull-down resistor is enough to get USB power delivery working.
A preview on the current status of this project:
Homeclimate v2 is currently in the testing stage with most sensors and the ESP32 on a simple perf board. Once the hardware and software work as they should, the next step is to get custom PCBs. At the moment, the prototype PCB is still in the making.