I love measuring things. I really want to monitor environmental conditions and log them. My long term goal is to build a weather station outside that sends data via WIFI, so I became really interested in building all of the parts of this. While figuring out how to weatherproof everything, I have really enjoyed watching the environmental conditions of a room indoors. I have been writing about the steps I needed to do this at my blog, alexkend.com. The code required to run all of this is being recorded in my Github. I essentially built an indoor (for now) weather monitor.
I used an Arduino MKR WIFI 1010 to control a sensor and then send data to a internet of things dashboard. I wanted two things: a long term log of data, and a cool way to display it. Ultimately I decided on uploading data to Grafana cloud while keeping a local copy of the data in SQLite via Python on a Raspberry Pi I have. This is optional! I just want to keep a local log.
To monitor indoor conditions, I am using the BME280, the sensor is shown below. It measures temperature, barometric pressure and humidity. It works great, essentially plug and play with no soldering required.
This sensor is then connected to the correct pins of the Arduino MKR. The BME280 can run off of 3-5V inputs, so this sensor works fine with 3.3V pins.
Now that I'm collecting data with the BME280, I send that data via MQTT to a Raspberry Pi that then sends the data via a Prometheus client to my Grafana Cloud dashboard. Now I can monitor my room's environmental conditions from anywhere.
It is also optional, but I am using a lithium ion battery to power the Arduino so I can collect data for a long time without needing to constantly provide power to the Arduino.
Comments
Please log in or sign up to comment.