Hi All,
We have a BME280 and we intend to send it up in a small rocket so that we can measure the temperature as it falls downwards (on a parachute).
(BTW this is for a programming club),
So we want to measure the temperature every 1/10 second during the descent so that we can show a graph of the temperature at different altitudes.
This we be great fun, mainly because we get to shoot our |Arduino Nano up in the air!
Our board now works and records the data from the BME280 to our sd card.
Our problem is we can't seem to find any instructions on how to use our BME to get the altitude.
We have Googled as you can imagine, and we know that the library we use has a 'getAltitude' function, but this returns a way different value to the one my IPhone app returns.
I understand we have to use the sea level Pressure to make this work, but:
Does your iPhone use GPS for the altitude ? That is accurate.
When the baromic pressure is used, you have to know the baromic pressure for that location at sea level for that moment. It can be a different value for the next day.
Are there local weather stations ? They often give the baromic pressure adjusted for sea level.
If the height of the ground level is not very high, you can ignore the 'sea level', and use the baromic pressure at ground level.
Well the Adafruit library does have a function for altitude which you can pass the sea level pressure.
On looking at the sparkFun library, it has the standard 1030.25 hard-coded, so I was simply able to make a quick change to the code and the header.
Now the altitude reading is almost the same as my iphone app.
The Iphone app is 'My Altitude', it's hard to say if it uses pressure or GPS, the software says it can use internal sensors, but I am not sure my phone has this.
Also the phone values do not change, where as the BME280 is quite sensitive.
To sum up, I think we have a working model, and the SparkFun library can be made to work just as the Adafruit one.
The BME280 is so sensitive, if you use the highest resolution and averaging of a few samples, then you can detect a few meters, perhaps even one meter height difference.