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:
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:
- Temperature
- Humidity
- Air pressure
- Air quality (something to do with CO or CO2)
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 (nRF52832)
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:
Lastly I will be using Segger Embedded Studio as the IDE and Segger J-Link as the programmer.
Lastly I will be using Segger Embedded Studio as the IDE and Segger J-Link as the programmer.
Sensors (BME280 & SGP30)
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:
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.
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)
- Ethanol
- H2
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.