I'm trying to understand how to use BSEC with a BME680 sensor. The only example in the bsec_v2-5-0-2.tar.gz download skips a delay() call between bme68x_set_op_mode() and bme68x_get_data(). Is that correct? Details... The example code in bsec_iot_example/bsec_integration.c calls bme68x_set_op_mode(), and then immediately calls bme68x_get_data(), with no delay. bsec_v2-5-0-2.tar.gz: examples/BSEC_Integration_Examples/examples/bsec_iot_example/bsec_integration.c [lines 671-697] This is at odds with various other sources of information: 1. The example code in BME68x_SensorAPI always calls bme68x_get_meas_dur(), and delays for the resulting time, before calling bme68x_get_data(). https://github.com/boschsensortec/BME68x_SensorAPI/blob/master/examples/forced_mode/forced_mode.c [lines 71-72] https://github.com/boschsensortec/BME68x_SensorAPI/blob/master/examples/parallel_mode/parallel_mode.c [lines 97-98] 2. The BME680 datasheet describes the delay between setting ctrl_meas register, and data becoming available. "BME680 - Datasheet" rev1.9, BST-BME680-DS001-09 3. The BSEC-Arduino-library (also owned by boschsensortech) calls bme68x_get_meas_dur(), and delays for the resulting time, before calling bme68x_get_data(). https://github.com/boschsensortec/BSEC-Arduino-library/blob/master/src/bsec.cpp [lines 388-390]
... View more