“To expand my microcontroller and programming knowledge I have decided to try and make a Solar Powered Weather Station. My goal is to record parameters like:
Air quality (something to do with CO or CO2)
I then hope to send (wirelessly) the data to a base station and log/display it on a simple website.
To make things interesting I also aim to power the data gathering station from a large supercapacitor (~100F), and in keeping with my solar tradition the supercapacitor will be charged from a solar-cell. Just like with my last project I want this thing to last for a good 20-40years with minimal intervention, meaning I will also have to dive into the wonderful world of watchdogs as well as structure my code to handle glitches properly.
With all that said here is what I have so far:
MCU + Tx/Rx
After a bit of research I decided to go with the Nordic Semiconductor nRF52832 as doing so will allow me to have an MCU + Tx/Rx capability all on the one chip. Also this chip supports Bluetooth 5 so is ideal for this low power & data rate application:
To cover temperature, humidity, & air pressure I will be using the trusty Bosch BME280.
For air quality I will use the Sensirion SGP30. This nifty IC can give out readings like:
Total Volatile Organic Compounds (TVOC)
Equivalent CO2 (eCO2)
I should point out that the SGP30 does not measure CO2 levels directly but instead monitors equivalent CO2 (eCO2), it does this by looking at changes in Volatile Organic Compounds (VOC) levels as these can be linked to a possible rise/fall in actual CO2. If you are after something that can measure true levels of CO2 then you will need to use an IR based sensor like the CO2meter K30.
Another thing to note about the SGP30 is that though it draws similar current as the popular AMS CCS811 (48.8mA vs 54mA) the SGP30 has a much quicker conditioning period (aka warm-up time before a reading should be taken, 15sec vs 20min). So in the long run it is more suitable for this low power application.”