si7021 - Driver for Si7013/Si7020/Si7021/HTU2xD/SHT2x and compatible¶
- group si7021
ESP-IDF driver for Si7013/Si7020/Si7021/HTU2xD/SHT2x and compatible temperature and humidity sensors.
Copyright (c) 2019 Ruslan V. Uss unclerus@gmail.com
BSD Licensed as described in the file LICENSE
Defines
-
SI7021_I2C_ADDR¶
I2C address.
-
SI7021_MAX_HEATER_CURRENT¶
Maximum current of the heater for Si70xx.
Enums
-
enum si7021_device_id_t¶
Device model for Si70xx.
Values:
-
enumerator SI_MODEL_SI7013¶
Si7013.
-
enumerator SI_MODEL_SI7020¶
Si7020.
-
enumerator SI_MODEL_SI7021¶
Si7021.
-
enumerator SI_MODEL_SAMPLE¶
Engineering sample.
-
enumerator SI_MODEL_UNKNOWN¶
Unknown model.
-
enumerator SI_MODEL_SI7013¶
-
enum si7021_resolution_t¶
Measurement resolution.
Values:
-
enumerator SI7021_RES_RH12_T14¶
Relative humidity: 12 bits, temperature: 14 bits.
-
enumerator SI7021_RES_RH08_T12¶
Relative humidity: 8 bits, temperature: 12 bits.
-
enumerator SI7021_RES_RH10_T13¶
Relative humidity: 10 bits, temperature: 13 bits.
-
enumerator SI7021_RES_RH11_T11¶
Relative humidity: 11 bits, temperature: 11 bits.
-
enumerator SI7021_RES_RH12_T14¶
Functions
-
esp_err_t si7021_init_desc(i2c_dev_t *dev, i2c_port_t port, gpio_num_t sda_gpio, gpio_num_t scl_gpio)¶
Initialize device descriptor.
- Parameters
dev – Device descriptor
port – I2C port
sda_gpio – SDA GPIO pin
scl_gpio – SCL GPIO pin
- Returns
ESP_OK
on success
-
esp_err_t si7021_free_desc(i2c_dev_t *dev)¶
Free device descriptor.
- Parameters
dev – Device descriptor
- Returns
ESP_OK
on success
-
esp_err_t si7021_reset(i2c_dev_t *dev)¶
Reset device.
- Parameters
dev – Device descriptor
- Returns
ESP_OK
on success
-
esp_err_t si7021_get_heater(i2c_dev_t *dev, bool *on)¶
Get heater state.
This function is supported by:
SI7013
SI7020
SI7021
SHT2x
- Parameters
dev – Device descriptor
on – [out]
true
if heater enabled
- Returns
ESP_OK
on success
-
esp_err_t si7021_set_heater(i2c_dev_t *dev, bool on)¶
Switch heater on/off.
This function is supported by:
SI7013
SI7020
SI7021
SHT2x
- Parameters
dev – Device descriptor
on – if
true
, heater will be enabled
- Returns
ESP_OK
on success
-
esp_err_t si7021_get_heater_current(i2c_dev_t *dev, uint8_t *level)¶
Get heater current.
This function is supported by:
SI7013
SI7020
SI7021
- Parameters
dev – Device descriptor
level – [out] Heater current, see datasheet
- Returns
ESP_OK
on success
-
esp_err_t si7021_set_heater_current(i2c_dev_t *dev, uint8_t level)¶
Set heater current.
This function is supported by:
SI7013
SI7020
SI7021
- Parameters
dev – Device descriptor
level – Heater current, see datasheet
- Returns
ESP_OK
on success
-
esp_err_t si7021_get_resolution(i2c_dev_t *dev, si7021_resolution_t *r)¶
Get measurement resolution.
- Parameters
dev – Device descriptor
r – [out] Resolution
- Returns
ESP_OK
on success
-
esp_err_t si7021_set_resolution(i2c_dev_t *dev, si7021_resolution_t r)¶
Set measurement resolution.
- Parameters
dev – Device descriptor
r – Resolution
- Returns
ESP_OK
on success
-
esp_err_t si7021_measure_temperature(i2c_dev_t *dev, float *t)¶
Measure temperature.
- Parameters
dev – Device descriptor
t – [out] Temperature, deg. Celsius
- Returns
ESP_OK
on success
-
esp_err_t si7021_measure_humidity(i2c_dev_t *dev, float *rh)¶
Measure relative humidity.
- Parameters
dev – Device descriptor
rh – [out] Relative humidity, %
- Returns
ESP_OK
on success
-
esp_err_t si7021_get_serial(i2c_dev_t *dev, uint64_t *serial, bool sht2x_mode)¶
Get serial number of device.
This function is supported by:
SI7013
SI7020
SI7021
SHT2x
- Parameters
dev – Device descriptor
serial – [out] Serial no.
sht2x_mode –
true
for SHT2x devices
- Returns
ESP_OK
on success
-
esp_err_t si7021_get_device_id(i2c_dev_t *dev, si7021_device_id_t *id)¶
Get device model.
This function is supported by:
SI7013
SI7020
SI7021
- Parameters
dev – Device descriptor
id – [out] Device model
- Returns
ESP_OK
on success
-
SI7021_I2C_ADDR¶