12static const uint8_t W_REG = 0x04;
13static const uint8_t ALS_REG = 0x05;
14static const uint8_t ID_REG = 0x09;
22static const uint8_t CONFIG_REG_IT_BIT = 12;
23static const uint8_t CONFIG_REG_DG_BIT = 5;
24static const uint8_t CONFIG_REG_G_BIT = 3;
28static const uint8_t DEVICE_ID = 0x35;
32static const float LUX_MULTIPLIER_BASE = 0.00213f;
66 void setup()
override;
This class simplifies creating components that periodically check a state.
This Class provides the methods to read/write bytes from/to an i2c device.
Base-class for all sensors.
bool refresh_config_reg()
VEML3235ComponentIntegrationTime integration_time_
float auto_gain_threshold_high_
void set_digital_gain(VEML3235ComponentDigitalGain digital_gain)
float auto_gain_threshold_low_
float counts_to_lux_(uint16_t counts) const
VEML3235ComponentGain gain()
void set_sensitivity_factor_(uint16_t factor)
uint16_t integration_time_ms_() const
float auto_gain_threshold_low()
void set_integration_time(VEML3235ComponentIntegrationTime integration_time)
bool measurement_in_progress_
bool adjust_sensitivity_(uint16_t counts)
void set_auto_gain(bool auto_gain)
void read_and_publish_(uint8_t adjustments_left)
void set_auto_gain_threshold_high(float auto_gain_threshold_high)
VEML3235ComponentIntegrationTime integration_time()
void set_gain(VEML3235ComponentGain gain)
VEML3235ComponentGain gain_
void dump_config() override
uint16_t sensitivity_factor_() const
void set_auto_gain_threshold_low(float auto_gain_threshold_low)
float auto_gain_threshold_high()
VEML3235ComponentDigitalGain digital_gain()
uint8_t gain_factor_() const
VEML3235ComponentDigitalGain digital_gain_
VEML3235ComponentDigitalGain
@ VEML3235_DIGITAL_GAIN_2X
@ VEML3235_DIGITAL_GAIN_1X
VEML3235ComponentIntegrationTime
@ VEML3235_INTEGRATION_TIME_100MS
@ VEML3235_INTEGRATION_TIME_200MS
@ VEML3235_INTEGRATION_TIME_50MS
@ VEML3235_INTEGRATION_TIME_800MS
@ VEML3235_INTEGRATION_TIME_400MS