Skip to content

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

@hub187

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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions