Skip to content

Temperature and Humidity readings from get_bsec_data() and get_digital_nose_data() are really off vs. "reality" #26

Description

@hub187

I started tinkering with the bsec python library and the pi3g breakout board (bme688 sensor). Loved the coding part but my readings are really off vs. a control DHT22 which I have running on the same desk (10cm apart). I plotted this in grafana to see what was going on. The DHT22 values are also very similar to a dehumidifier which shows relative humidity levels as well (hence why I take this as "source of truth").

Did anyone experience something similar? Can anyone suggest what could be happening?

image
(the spike in bsec data at 2200 is due to a reboot of my script. I found first values from the sensor to be off and then stabilise)

Details:

  • rpi4 32 bits OS (armhf v7 raspbian) bsec 2.0.6.1.
  • my code calls get_bsec_data() in LP mode every 180 seconds approx, and get_digital_nose_data() in HIGH_PERFORMANCE mode.
  • I send both data (humidity and temperature for now) back to a postgres DB to plot grafana.
  • the bsec data used to be OK close to DHT temperature and humidity level (with maybe a 5 degree offset to subtract to the actual temperatures of the DHT though). But now it is consistently way off.

Sample of my code (indentation might be off i had to edit it below so it shows on github as code)

`

while True:
   message_time = str(datetime.datetime.utcnow())
   bsec_data = None
   while bsec_data is None:
       sensor.set_sample_rate(bsec.BSEC_SAMPLE_RATE_LP)
       bsec_data = get_data(sensor)

   sleep(delay_between_measurements / 2)
   message_time_nose_data = str(datetime.datetime.utcnow())
   bsec_nose_data = None

   while bsec_nose_data is None:
       sensor.set_sample_rate(bsec.BSEC_SAMPLE_RATE_HIGH_PERFORMANCE)
       bsec_nose_data = get_nose_data(sensor)

 try:
    extract_variables_and_publish()
except Exception:
    print("There was a problem extracting data and sending data - maybe a sensor failure.")`

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions