Weirdly coincidental timing on this! I've been working on a PCB design (FeatherWing form factor) to track weather data on my hikes, making use of a BME280 and a GPS module. First revision of the board[1], I discovered that the sensors started out accurate, then drifted up to a steady 3° above ambient. Probably because the GPS module was heating up. So last night I found myself reading up on design considerations for temperature sensors [2], including specific things like the cutout you have on the left side of this board.
I'm guessing you designed this — any advice as I embark on designing a second revision of my hiking log?
Jose - I have done a few designs for my current employer using the BME280 for environmental sensing. I've found it a little sensitive to heat, both from the environment and itself. There's a good resource from K&R Smith[1] about comparing the sensor to others and there's some discussion about how to set up the sensor to minimize self-heating. Might be worth looking into!
Additionally, when I do my designs, I place the BME280 sensor as far away from other components as possible (I see it is close to a SOIC chip on your board) and I route a cutout in the board around the sensor to reduce any heat conduction from the board. I also ensure that I have no power planes on the little resulting "island" PCB, and use small traces (with local decoupling) to further reduce any conductive heat. See the image in [2] for an example of what I am talking about.
Another alternative I pursued in situations where convective heat was an issue is to stick the sensor on a little remote board and use an off-the-shelf wire to connect the two (check out the Sparkfun Qwiic wires[3])
Overall you want to increase airflow around the sensor as much as possible so leaving it "hanging out" somewhere is the best approach to getting accurate measurements.
The BME280 is not particular suited for ambient temperature measurements. It's for accurate and fast pressure and humidity sensing. Quote from the datasheet about the temp sensor:
Its output is used for temperature compensation of the pressure and humidity sensors and can also be used for estimation of the ambient temperature.
You will get the temperature of the sensor rather than that of the environment. The tiny BME280 is thermal coupled to the board and also heats itself up during repeated measurements. For accurate ambient temperature you could use a DTH11 or DHT22. These come in plastic housings to isolate them from the surroundings and provide better airflow.
This looks great. I've been waiting for a nice, hackable, cheap set of environmental sensors!
There's only one "improvement" I would like to see - an option to buy a cheaper version without a display attached. For my application I will not need any display, and it seems a shame to spend resources on one when it's only going to get destroyed by the elements :)
By an incredible coincidence, I am putting together something to do exactly what this does. One exception: I am including a CO2 sensor to monitor and collect atmospheric CO2 levels.
I'm guessing a there is enough I/O left on a Pi 0w such that a CO2 sensor can be added to the Enviro+?
I love Pimoroni Modules, having used the MicroDot pHAT, Unicorn boards, Touch pHAT, (and several more). The only problem I have is that the libraries aren’t particularly well written. Of course they’re open source and I would like to improve them, but as far as I know there are no schematics available.
Example being, the Touch pHAT (very good board btw) doesn’t use interrupts and library is sorta messy. I still use it though, because it’s not a big deal — however it’d be nice to be able to take full advantage of the components used in the boards. I guess my rant is mostly about not having access to some schematics of the products.
By coincidence I actually need this -- going to be doing some data analysis on indoor hydroponics grow rooms and this would give me all the environmental data I need if you include the particulate matter sensor.
I wonder how easy it would be to convert, or design something similar to the Enviro+ that is in a waterproof enclosure with battery. Could be useful for collecting data on some basic water quality(turbidity,conductivity,pH,temp) alongside water level.
We currently use In-situ Aqua Trolls[1] to gather these parameters, but a solution like this could almost be considered disposable; hand them out to people in remote areas and you could potentially realise data for rivers/creeks that rarely flow, and would otherwise go unmonitored due to the time and finial investment required.
The trick with waterproofing is that it's easy to do rainproof enclosures, but much harder to make fully submersible things.
For measuring water parameters I would be tempted to use a rugged box for the Pi and then cable (via a removable connector) to something you put in the water. Basically design a probe like the device you linked. The fewer parts that need to be fully waterproof the eaiser life gets.
I was looking into some hobby sensors for home recently and came across this the Ruuvi [1]. I prefer this model to having on-board sensors. This doesn't do everything the Enviro+ does, but for a lot of use-cases it's pretty nice and affordable.
Do I understand it correctly that this doesn't store the data, and uses bluetooth so you only see data for times when your phone was nearby, and on iOS when the app was open?
That sounds kind of limiting. I guess every hacker has old smartphone somewhere that can be used for that.
Are the sensors pre-calibrated? I found that you can easily get cheap air quality sensors from China, the problem is that they could do better with calibration, which may require expensive (in relation to the sensor itself) equipment.
There have been just as comprehensive if not even more comprehensive sensor sets available for a really similar price. It's nothing unique.
As building such boards is quite common, I too have assembled many similar boards for my own use, to monitor both indoors and outdoors air quality although I don't have any external stations to compare my values to but they're "calibrated" according to the same baseline across my setup and it allows me to keep an eye on different types of pollution - different gases, particulates, UV, noise and so on. Would be nice if all these platforms could be tied together.
Really looking forward to using this. Our local Council has a few air quality monitors in strategic places and publish the results as open data. However, they are 6 months behind in publishing data and have recently declared a "air quality emergency". They also state "Currently the level of interest in air quality appears to be rising, but this does not
seem to translate into interaction between the Council and the local communities".
With an Enviro+ on a portable Pi I'll now be able to get my figures in near real time and ignore the Council.
A quick look over the Pioneer600, the pressure sensor seems to be the only overlap in the environmental monitoring that the Enviro+ is going for. The Pioneer seems to be a utility board, great for messing around. To me they would serve different purposes.
Other than the pressure sensor I can't really see the similarity in purpose? We aimed to cram as much environmental monitoring as possible at a reasonable price point onto Enviro+. :-)
No, it's just an aspirated dust sensor. No reason you couldn't run it inside. The main reason they suggest outside is so you can contribute to a global air quality database of some kind.
Does anyone know where I can buy one of those displays? Looks amazing for the size and it has a standard connector instead of the weird hot-bar solderable ones on the other small displays I have seen.
[+] [-] josecastillo|6 years ago|reply
I'm guessing you designed this — any advice as I embark on designing a second revision of my hiking log?
[1] https://twitter.com/josecastillo/status/1134128199972130816 [2] http://www.ti.com/lit/an/snoa967a/snoa967a.pdf
[+] [-] Ductapemaster|6 years ago|reply
Additionally, when I do my designs, I place the BME280 sensor as far away from other components as possible (I see it is close to a SOIC chip on your board) and I route a cutout in the board around the sensor to reduce any heat conduction from the board. I also ensure that I have no power planes on the little resulting "island" PCB, and use small traces (with local decoupling) to further reduce any conductive heat. See the image in [2] for an example of what I am talking about.
Another alternative I pursued in situations where convective heat was an issue is to stick the sensor on a little remote board and use an off-the-shelf wire to connect the two (check out the Sparkfun Qwiic wires[3])
Overall you want to increase airflow around the sensor as much as possible so leaving it "hanging out" somewhere is the best approach to getting accurate measurements.
I hope that helps!
[1] http://www.kandrsmith.org/RJS/Misc/Hygrometers/calib_many.ht...
[2] https://www.instructables.com/id/How-to-Measure-Temperature-...
[3] https://www.sparkfun.com/products/14427
[+] [-] whiskers|6 years ago|reply
Are you sure it's the GPS module - 3 degrees sounds a lot for that? I'd try to take some measurements to confirm it before changing anything.
Which Feather board are you using?
[+] [-] volkerp|6 years ago|reply
[+] [-] m4x|6 years ago|reply
There's only one "improvement" I would like to see - an option to buy a cheaper version without a display attached. For my application I will not need any display, and it seems a shame to spend resources on one when it's only going to get destroyed by the elements :)
[+] [-] whiskers|6 years ago|reply
[+] [-] cf498|6 years ago|reply
[+] [-] JoeDaDude|6 years ago|reply
I'm guessing a there is enough I/O left on a Pi 0w such that a CO2 sensor can be added to the Enviro+?
[+] [-] whiskers|6 years ago|reply
[+] [-] zantana|6 years ago|reply
This looks interesting, but somehow it always seems wasteful to use full blown Linux servers for this stuff, so I'm dabbling in something smaller. :)
[+] [-] whiskers|6 years ago|reply
[+] [-] prashnts|6 years ago|reply
Example being, the Touch pHAT (very good board btw) doesn’t use interrupts and library is sorta messy. I still use it though, because it’s not a big deal — however it’d be nice to be able to take full advantage of the components used in the boards. I guess my rant is mostly about not having access to some schematics of the products.
[+] [-] whiskers|6 years ago|reply
[+] [-] sam0x17|6 years ago|reply
[+] [-] woile|6 years ago|reply
[+] [-] andersha|6 years ago|reply
[+] [-] whiskers|6 years ago|reply
[+] [-] jonathankoren|6 years ago|reply
I don’t think this is exactly what I want, since it has an LCD, but the sensors and board are really cool.
The only thing I wish this tracked was SO2.
I’m thinking i might have to make my own with Arduino. But this is very cool.
[+] [-] thisnews|6 years ago|reply
We currently use In-situ Aqua Trolls[1] to gather these parameters, but a solution like this could almost be considered disposable; hand them out to people in remote areas and you could potentially realise data for rivers/creeks that rarely flow, and would otherwise go unmonitored due to the time and finial investment required.
Very interesting project, thanks for sharing!
[1]https://in-situ.com/products/water-level-monitoring/aqua-tro...
[+] [-] joshvm|6 years ago|reply
For measuring water parameters I would be tempted to use a rugged box for the Pi and then cable (via a removable connector) to something you put in the water. Basically design a probe like the device you linked. The fewer parts that need to be fully waterproof the eaiser life gets.
[+] [-] deanclatworthy|6 years ago|reply
[1] https://ruuvi.com/personal/
[+] [-] glogla|6 years ago|reply
That sounds kind of limiting. I guess every hacker has old smartphone somewhere that can be used for that.
[+] [-] pergadad|6 years ago|reply
[+] [-] kmfrk|6 years ago|reply
- https://www.researchgate.net/publication/325416608_Suitabili...
- https://www.scientevents.com/proscience/download/potential-a...
They are often easy to set up, but make sure to double-check just how much you can use your particular model for.
[+] [-] polskibus|6 years ago|reply
[+] [-] whiskers|6 years ago|reply
[+] [-] F_r_k|6 years ago|reply
[+] [-] Avamander|6 years ago|reply
As building such boards is quite common, I too have assembled many similar boards for my own use, to monitor both indoors and outdoors air quality although I don't have any external stations to compare my values to but they're "calibrated" according to the same baseline across my setup and it allows me to keep an eye on different types of pollution - different gases, particulates, UV, noise and so on. Would be nice if all these platforms could be tied together.
[+] [-] FerretFred|6 years ago|reply
With an Enviro+ on a portable Pi I'll now be able to get my figures in near real time and ignore the Council.
[+] [-] darkhorn|6 years ago|reply
[+] [-] mey|6 years ago|reply
[+] [-] whiskers|6 years ago|reply
[+] [-] alfozan|6 years ago|reply
[+] [-] addicted|6 years ago|reply
[+] [-] joshvm|6 years ago|reply
[+] [-] fiftyacorn|6 years ago|reply
[+] [-] atonse|6 years ago|reply
[+] [-] whiskers|6 years ago|reply
[+] [-] spearo77|6 years ago|reply
[+] [-] frabert|6 years ago|reply
[+] [-] Ductapemaster|6 years ago|reply
[+] [-] whiskers|6 years ago|reply