I've currently got a Thunderboard Sense in my house, sending data via BLE, through a Raspberry Pi and into ThingSpeak (see project page).
I've found the daily checking and understanding of the Indoor Air Quality to be quite interesting, however given it is inside I always wondered how the readings might compare to those outside. Was it warmer inside or not? Was there more eCO2 inside than outside? Should I open the windows for some more fresh air.
The issue with outside measure is that you need something which can both be in touch with the air (for accurate temperature, humidity, etc.) measurements, and be weather-proof enough not be damaged by rain, dust, mist, etc. I've really enjoyed working with the Silicon Labs Thunderboard Sense boards, and have found their collection of sensors to be easy to interface.
This led me to the next project, a Thunderboard Sense, located outside, protected however reading valid external related weather measurements.
How to house the device? Well I settled on a birdhouse looking object, with some ventilation, connection to power and the necessary front "clear" plastic window to allow light measurement.
The unit is powered by 12V, and then stepped down in the white enclosure to a more reasonable 5V. The 12V is sourced from my irrigation controller (another fine project from this website).
The board is mounted vertically, and with the light sensor located in the middle of the circular clear plastic printed element.
Why a birdhouse? Primarily to blend in. I didn't want an industrial looking box bolted to the tree. With guests around they might just see it as a mini birdhouse, and think nothing further, nor that it houses a complex wireless multi-sensor board.
For the interface into the cloud I chose a Raspberry Pi, given my previous project used the same. I leaned on some python code from MediumOne and their development kit which includes the same (details here) although some code changes were made to incorporate the upload to ThingSpeak as well (see the previous link for their link to their GitHub repository).
The only other localisation I've had to program in is some power failure recovery code (power cuts common in South Africa). So when both the Thunderboard and Raspberry Pi reboot they most automatically make the connection, and start transmitting into the cloud. For the Pi this happens with a python code on startup / CLI and for the Thunderboard Sense I reprogrammed it to advertise via BLE for much longer than the standard code (3 minutes now, instead of 30 seconds I think).
From the I can now compare inside and outside values for all the 7 measurements (temperature, humidity, pressure, light, eCO2, TVOC and sound) every 5 minutes, when both boards upload their most recent measurement. I've had the boards running now for more than a week and have had no issues.
Overall I'm very pleased to be able to see this data. ThingSpeak works well to analyse and visualise the code, and I enjoy the flexibility the MATLAB coding gives (vs. some other cloud based visual services).
Another project done, what should be the next use of another Thunderboard Sense? Another room in the house perhaps?