Comments (5)
Nevermind, I got it figured out.
/* ==== Functions ==== /
void printBME280Data(Stream client){
float temp(NAN), hum(NAN), pres(NAN);
uint8_t pressureUnit(B010); // unit: B000 = Pa, B001 = hPa, B010 = Hg, B011 = atm, B100 = bar, B101 = torr, B110 = N/m^2, B111 = psi
bme.ReadData(pres, temp, hum, metric, pressureUnit); // Parameters: (float& pressure, float& temp, float& humidity, bool hPa = true, bool celsius = false)
Still not sure what to do with oversampling though...
from bme280.
Hello! Thanks, I am glad to hear it is getting used!
There might be some slight confusion because I forgot to update the comment in the example code (just changed). As you probably found out the comment shows binary values correlating to the pressure units. The desired pressure unit can be specified by passing a numerical value in through the parameter pressureUnit by converting the Binary to Hex or Decimal.
Oversampling is well described on the wiki: https://en.wikipedia.org/wiki/Oversampling.
More specific details about the oversampling performed on the BME280 can be found in the BME280 data sheet: http://ae-bst.resource.bosch.com/media/_tech/media/datasheets/BST-BMP280-DS001-12.pdf
on page 15 under each measurement, and page 18 under Noise.
On the wiki here is a good explanation:
"In practice, oversampling is implemented in order to achieve cheaper higher-resolution A/D and D/A conversion.[1] For instance, to implement a 24-bit converter, it is sufficient to use a 20-bit converter that can run at 256 times the target sampling rate. Combining 256 consecutive 20-bit samples can increase the signal-to-noise ratio at the voltage level by a factor of 16 (the square root of the number of samples averaged), effectively adding 4 bits to the resolution and producing a single sample with 24-bit resolution.[3]"
So to sum it up, oversampling is the term used for collecting a number of samples and then getting the average. The advantage is greater accuracy and less noise. The disadvantage is increased power consumption.
Does that help?
-Tyler
from bme280.
Tyler, thanks again for the explanations. Now, can you point me to how to load variables (float? Long? Int?) with values from the bme library, to ready them for sending via rf24's?
from bme280.
I figured out how to load individual floats with temp, hum, and pres, but I think I need an array or struct.
from bme280.
I am not sure I understand your question. Upload your code and I will take a look at it.
from bme280.
Related Issues (20)
- Filter is only applied to temperature and pressure HOT 3
- STM32F103C8 - bme.begin (); - program stops HOT 3
- BME280 v3.0 not work with u8g2 and display HX1230_SW_SPI HOT 3
- The question of the wind chill HOT 3
- non void function without return value HOT 1
- Propose License Change to LGPL/MIT HOT 28
- AbsoluteHumidity and HeatIndex environment calculations missing HOT 1
- Implement CI HOT 1
- Change Wire hard code over to passed in wire instance in I2C class
- BME280 no humidity :( HOT 1
- BME680 integration HOT 1
- SPI.h is inculed althought BME280Spi is not in use HOT 1
- non-void-return issue in 3.0.0 HOT 6
- ESP32 boot loop when calling bme.begin() HOT 3
- I2C to USB
- delete
- delete HOT 1
- Latest commits do not show on Platformio. Tries to revert to "some 3.0.0" version
- Compiler warning when deleting a BME280I2C object
- Normal mode not working
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bme280.