This is an IoT metering application running on my home based Raspberry Pi.
Earlier this year I got a new layer of insulation added to the attick of our family house and I was wondering how much protection it provides against heatwaves. I knew that on some hot summer days the attick - which is not used for living - becomes extremely hot and after a while also the rooms beneath follow. But I wanted to see the facts. Obviously the insulation is not only against heatwaves but rather against the cold winter days. However, the insulation was prepared during the spring time and I developed this application afterwards.My purpose was to find a realiable method for collecting temperature data of three places for a period of a couple of days: the outdoor temperature, the temperature of the attick and also that of the room below it. Although the IoT sensors are fairly cheap, I decided to buy only two items and get the outdoor data from the free service of Openweathermap.
| The attick of my house with the insulation with the insulation and the temperature sensor. |
Once the script seemed stable enough, I run it for a couple of days while keeping the windows closed in the room. When the amount of data was big enough I uploaded the csv-formatted log file to Google Sheets and get the below chart there.
I used two Sonoff SNZB-02 ZigBee sensors for metering the indoor temperature and got the hourly outdoor data from the Openweathermap API. The ZigBee sensors pushed their data to a Sonoff USB Zigbee dongle connected to the Raspberry Pi 4. My Python script is using the Paho MQTT client class to receive the messages. The data is logged to a plain CSV that I upload to Google Sheets manually.
The development took a bit longer than expected because although the two sensors are of the same model, they push data at different intervals and this caused me a bit of a headache.
As for the future I will of course run the script during the winter season, but I also have a couple of devlopment ideas both for collecting and presenting the data.


