-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
Hi and thanks for the excellent work!
I was trying out j5 on my Raspberry Pi 2 Model B
and noticed that the readings for Multi
as well as `Barometer' and 'Humidity' return wrong values for a Sparkfun BME280 breakout.
As I am new in the IoT scene, I am assuming that I am doing something wrong or have not read enough, but here are some assumptions followed by some questions:
- Using the python library
Adafruit_Python_BME280
I get the following results:
Temp = 24.140 deg C
Pressure = 991.88 hPa
Humidity = 41.53 %
- Using another python library I get similar results:
Chip ID : 96
Version : 0
Temperature : 24.14 C
Pressure : 991.880802123 hPa
Humidity : 41.5296441194 %
- But when I use NodeJS with j5 and
Multi
I get:
--------------------------------------
Thermometer
celsius : 21.55
--------------------------------------
Barometer
pressure : 76.27
--------------------------------------
Hygrometer
humidity : 71.061
--------------------------------------
I noticed that both python libraries set (by default) the oversampling mode
or oversampling rate
to 8
. When I set it to 1
, even with python I get similar wrong values.
For reference I am using an external/handheld barometer and 2 different hygrometers which all report similar values to the oversampled ones (i.e. relative humidity ~ 42 and pressure ~ 992 hPa)
My questions are:
- Is there a way to set the oversampling rate in j5?
- Why does the BME280 need such a high oversampling mode in order to provide correct values?
- Can you point me to some reading material about oversampling and how/why it affects the readings so much?
- I notice that even the temperature is off a bit, can I assume that this is a normal fluctuation?
- After getting data with node/j5 one of the two python libraries also reports wrong data: i.e.
Chip ID : 96
Version : 0
Temperature : 21.55 C
Pressure : 762.681500693 hPa
Humidity : 71.0611180087 %
but then I run the Adafruit lib again and it corrects/resets it. Its like the JS code messes with the sensor in a way I can't explain...