I am using the BSEC Library v2.4.0.0 Generic Release 23012023 and trying to use the library to get IAQ data. I read the API docs and the examples to build my own application. I am calling bsec_update_subscription with these parameters bsec_sensor_configuration_t requested_virtual_sensor = { .sensor_id = BSEC_OUTPUT_IAQ, .sample_rate= BSEC_SAMPLE_RATE_LP}; const uint8_t n_requested_virtual_sensors = 1; bsec_sensor_configuration_t required_sensor_settings[BSEC_MAX_PHYSICAL_SENSOR]; uint8_t n_required_sensor_settings = BSEC_MAX_PHYSICAL_SENSOR; bsec_update_subscription(requested_virtual_sensor, n_requested_virtual_sensors, required_sensor_settings, &n_required_sensor_settings); These parameters should give me as output the sensors required to get the IAQ output. After executing the function I get the following sensors IDs in the array required_sensor_settings with a sample rate of 0.3333 (i.e. BSEC_SAMPLE_RATE_LP) 2,3,4,22,23,24 According to the header bsec_datatypes.h enum bsec_physical_sensor_t, sensor IDs 2,3,4 are humidity, temperature, gasresistor respectively. What I do not know is what is the meaning of sensor ID 22,23,24. ID 22 is not specified and I do not find an example on what value should be assigned to the signal data member of struct bsec_input_t. In addition, could you explain what values should I assign to sensor IDs 22 (undefined), 23 (BSEC_INPUT_DISABLE_BASELINE_TRACKER) and 24 (BSEC_INPUT_PROFILE_PART). From my attempts at understanding the sample code, sensor ID 23 (BSEC_INPUT_DISABLE_BASELINE_TRACKER) should be assigned to gas index if the operation mode of the BME688 is not FORCED_MODE (line 380 file bsec_integration.c). But sensor ID 22 and 24 (BSEC_INPUT_PROFILE_PART) are not used in the samples. Is it safe and valid to use bme68x_bsec_process_data for my use case (IAQ virtual sensor) ignoring input ID 22 and 24 (i.e., sample rate = BSEC_SAMPLE_RATE_DISABLED) ? If not could this be added to the docs or answered in this question? Thanks in advanced and if I am missing something please let me know as I am new to the BSEC library. As further information I am calling as per documentation first bsec_init and then bsec_set_configuration with config from folder bme688_sel_18v_3s_4d file bsec_selectivity.c.
... View more