167                                    int16_t slope, uint16_t time_constant);
 
  178                                    int16_t *slope, uint16_t *time_constant);
 
  214    const sen5x_t *dev, int16_t index_offset, int16_t learning_time_offset_hours,
 
  215    int16_t learning_time_gain_hours, int16_t gating_max_duration_minutes,
 
  216    int16_t std_initial, int16_t gain_factor);
 
  234    const sen5x_t *dev, int16_t *index_offset, int16_t *learning_time_offset_hours,
 
  235    int16_t *learning_time_gain_hours, int16_t *gating_max_duration_minutes,
 
  236    int16_t *std_initial, int16_t *gain_factor);
 
  257    const sen5x_t *dev, int16_t index_offset, int16_t learning_time_offset_hours,
 
  258    int16_t learning_time_gain_hours, int16_t gating_max_duration_minutes,
 
  259    int16_t std_initial, int16_t gain_factor);
 
  280    const sen5x_t *dev, int16_t *index_offset, int16_t *learning_time_offset_hours,
 
  281    int16_t *learning_time_gain_hours, int16_t *gating_max_duration_minutes,
 
  282    int16_t *std_initial, int16_t *gain_factor);
 
Definition of the generic [S]ensor [A]ctuator [U]ber [L]ayer.
 
uint_fast8_t i2c_t
Default i2c_t type definition.
 
int sen5x_init(sen5x_t *dev, const sen5x_params_t *params)
Initialize the given device.
 
void sen5x_set_warm_start(const sen5x_t *dev, uint16_t warm_start)
Set the parameter for a warm start on the device, to improve initial accuracy of the ambient temperat...
 
void sen5x_wake_no_pm(const sen5x_t *dev)
Starts a continuous measurement without PM.
 
void sen5x_clean_fan(const sen5x_t *dev)
Sets the fan to maximum speed, to clean it within 10 seconds.
 
void sen5x_set_temperature_offset(const sen5x_t *dev, int16_t temp_offset, int16_t slope, uint16_t time_constant)
Set a custom temperature offset to the ambient temperature.
 
void sen5x_wake(const sen5x_t *dev)
Starts a continuous measurement.
 
void sen5x_get_voc_state(const sen5x_t *dev, uint8_t *state, uint8_t state_size)
Set the VOC Algorithm state.
 
void sen5x_get_warm_start(const sen5x_t *dev, uint16_t *warm_start)
Get the warm start parameter.
 
void sen5x_sleep(const sen5x_t *dev)
Stops the measurement and returns to idle mode.
 
void sen5x_get_temperature_offset(const sen5x_t *dev, int16_t *temp_offset, int16_t *slope, uint16_t *time_constant)
Set a custom temperature offset to the ambient temperature.
 
void sen5x_get_voc_algorithm_tuning(const sen5x_t *dev, int16_t *index_offset, int16_t *learning_time_offset_hours, int16_t *learning_time_gain_hours, int16_t *gating_max_duration_minutes, int16_t *std_initial, int16_t *gain_factor)
Get the VOC Algorithm tuning parameters.
 
void sen5x_set_rht_acceleration(const sen5x_t *dev, uint16_t mode)
Set the mode for the RH/T acceleration algorithm.
 
void sen5x_read_values(const sen5x_t *dev, sen5x_measurement_t *values)
Read measured mass concentration, humidity and temperature values.
 
void sen5x_read_pm_values(const sen5x_t *dev, sen5x_measurement_t *values)
Read measured particle matter values.
 
void sen5x_set_voc_algorithm_tuning(const sen5x_t *dev, int16_t index_offset, int16_t learning_time_offset_hours, int16_t learning_time_gain_hours, int16_t gating_max_duration_minutes, int16_t std_initial, int16_t gain_factor)
Set the parameters for the VOC Algorithm tuning.
 
void sen5x_set_voc_state(const sen5x_t *dev, const uint8_t *state, uint8_t state_size)
Get the VOC Algorithm state.
 
bool sen5x_data_ready_flag(const sen5x_t *dev)
Sets the fan to maximum speed, to clean it within 10 seconds.
 
void sen5x_get_nox_algorithm_tuning(const sen5x_t *dev, int16_t *index_offset, int16_t *learning_time_offset_hours, int16_t *learning_time_gain_hours, int16_t *gating_max_duration_minutes, int16_t *std_initial, int16_t *gain_factor)
Get the NOx Algorithm tuning parameters.
 
int sen5x_reset(const sen5x_t *dev)
Execute a reset on the given device.
 
void sen5x_set_nox_algorithm_tuning(const sen5x_t *dev, int16_t index_offset, int16_t learning_time_offset_hours, int16_t learning_time_gain_hours, int16_t gating_max_duration_minutes, int16_t std_initial, int16_t gain_factor)
Set the parameters for the NOx Algorithm tuning.
 
void sen5x_get_rht_acceleration(const sen5x_t *dev, uint16_t *mode)
Get the mode for the RH/T acceleration algorithm.
 
Low-level I2C peripheral driver interface definition.
 
Wrapper for measured values.
 
uint16_t mass_concentration_pm4p0
raw value is scaled with factor 10: PM4.0 [µg/m³] = value / 10
 
uint16_t number_concentration_pm4p0
raw value is scaled with factor 10: PM4.0 [#/cm³] = value / 10
 
uint16_t mass_concentration_pm10p0
raw value is scaled with factor 10: PM10.0 [µg/m³] = value / 10
 
uint16_t number_concentration_pm0p5
raw value is scaled with factor 10: PM0.5 [#/cm³] = value / 10
 
int16_t ambient_humidity
raw value is scaled with factor 100: RH [%] = value / 100
 
uint16_t mass_concentration_pm1p0
raw value is scaled with factor 10: PM1.0 [µg/m³] = value / 10
 
uint16_t mass_concentration_pm2p5
raw value is scaled with factor 10: PM2.5 [µg/m³] = value / 10
 
int16_t voc_index
raw value is scaled with factor 10: VOC Index = value / 10
 
int16_t ambient_temperature
raw value is scaled with factor 200: T [°C] = value / 200
 
uint16_t number_concentration_pm10p0
raw value is scaled with factor 10: PM10.0 [#/cm³] = value / 10
 
int16_t nox_index
raw value is scaled with factor 10: NOx Index = value / 10
 
uint16_t number_concentration_pm1p0
raw value is scaled with factor 10: PM1.0 [#/cm³] = value / 10
 
uint16_t typical_particle_size
raw value is scaled with factor 1000: Size [µm] = value / 1000
 
uint16_t number_concentration_pm2p5
raw value is scaled with factor 10: PM2.5 [#/cm³] = value / 10
 
Device initialization parameters.
 
uint8_t i2c_addr
I2C address.
 
i2c_t i2c_dev
I2C device which is used.
 
Device descriptor for the driver.
 
sen5x_params_t params
Device initialization parameters.