Skip to content

Sensor sanity check #112

@baranyaib90

Description

@baranyaib90

Arduino board: Arduino Nano v3
Arduino IDE version (found in Arduino -> About Arduino menu): 2.3.2

Dear Maintainers!
I would like to ask for some improvement of this library to make it more robust in case of wiring issues.
Because of thermal expansion sometimes my wires get loose and I have contact issues. I know, this is my problem, I should have solder it, and so on.
But I would expect to have some sanity check functionality from the library side.

Given the following test scenario:

  1. Running the code of: bme280test.ino
BME280 test
-- Default Test --

Temperature = 28.53 °C
Pressure = 1003.00 hPa
Approx. Altitude = 85.73 m
Humidity = 50.89 %

Temperature = 28.74 °C
Pressure = 1003.03 hPa
Approx. Altitude = 85.46 m
Humidity = 50.77 %
  1. When I disconnect the sensor, I do not get NAN values (except Approx. Altitude), instead invalid values:
Temperature = 179.55 °C
Pressure = -160.23 hPa
Approx. Altitude = nan m
Humidity = 100.00 %

Temperature = 179.55 °C
Pressure = -160.23 hPa
Approx. Altitude = nan m
Humidity = 100.00 %
  1. After reconnecting the sensor, finally there are NAN values:
Temperature = nan °C
Pressure = nan hPa
Approx. Altitude = nan m
Humidity = nan %

Thanks to NAN values, I can call the begin() function again and I can make the sensor work properly.
But I have no workaround for now to avoid the invalid values.
If there would be a possibility to check if the sensor is really connected and responding properly, that would be great!
For example:

  1. sensorID() function could actually querry the sensor ID and not returning a cached value. I don't want to call begin() all the time before measurement.
  2. There could be a isConnected() or similar function which checks if the sensor responds to a command with valid data.

Thank you in advance!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions