hts221 - Driver for HTS221 temperature and humidity sensor¶
- group hts221
ESP-IDF driver for HTS221 temperature and humidity sensor.
Datasheet: http://www.st.com/resource/en/datasheet/hts221.pdf Technical note on interpreting humidity and temperature readings in the HTS221 digital humidity sensor: https://www.st.com/resource/en/technical_note/tn1218-interpreting-humidity-and-temperature-readings-in-the-hts221-digital-humidity-sensor-stmicroelectronics.pdf Copyright (c) 2021 saasaa mail@saasaa.xyz
ISC Licensed as described in the file LICENSE
Defines
-
HTS221_I2C_ADDRESS¶
Enums
-
enum hts221_temperature_avg_t¶
Number of averaged temperature samples.
Values:
-
enumerator HTS221_AVGT_2¶
2 averaged temperature samples
-
enumerator HTS221_AVGT_4¶
4 averaged temperature samples
-
enumerator HTS221_AVGT_8¶
8 averaged temperature samples
-
enumerator HTS221_AVGT_1¶
16 averaged temperature samples
-
enumerator HTS221_AVGT_32¶
32 averaged temperature samples
-
enumerator HTS221_AVGT_64¶
64 averaged temperature samples
-
enumerator HTS221_AVGT_128¶
128 averaged temperature samples
-
enumerator HTS221_AVGT_256¶
256 averaged temperature samples
-
enumerator HTS221_AVGT_2¶
-
enum hts221_humidity_avg_t¶
Number of averaged humidity samples.
Values:
-
enumerator HTS221_AVGH_4¶
4 averaged humidity samples
-
enumerator HTS221_AVGH_8¶
8 averaged humidity samples
-
enumerator HTS221_AVGH_16¶
16 averaged humidity samples
-
enumerator HTS221_AVGH_32¶
32 averaged humidity samples
-
enumerator HTS221_AVGH_64¶
64 averaged humidity samples
-
enumerator HTS221_AVGH_128¶
128 averaged humidity samples
-
enumerator HTS221_AVGH_256¶
256 averaged humidity samples
-
enumerator HTS221_AVGH_512¶
512 averaged humidity samples
-
enumerator HTS221_AVGH_4¶
-
enum hts221_data_rate_t¶
Output data rate.
Values:
-
enumerator HTS221_ONE_SHOT¶
-
enumerator HTS221_1HZ¶
-
enumerator HTS221_7HZ¶
-
enumerator HTS221_12_5HZ¶
-
enumerator HTS221_ONE_SHOT¶
Functions
-
esp_err_t hts221_init_desc(hts221_t *dev, i2c_port_t port, gpio_num_t sda_gpio, gpio_num_t scl_gpio)¶
Initialize the HTS221 Device descriptor.
- Parameters
dev – [out] Device descriptor
port – I2C port number
sda_gpio – GPIO pin number for SDA
scl_gpio – GPIO pin number for SCL
- Returns
ESP_OK
on success
-
esp_err_t hts221_free_desc(hts221_t *dev)¶
Free device descriptor.
- Parameters
dev – Device descriptor
- Returns
ESP_OK
on success
-
esp_err_t hts221_init(hts221_t *dev)¶
Reset device parameters, read calibration data.
Reboot device, reset calibration data
- Parameters
dev – Device descriptor
- Returns
ESP_OK
on success
-
esp_err_t hts221_get_power_mode(hts221_t *dev, bool *power_down)¶
Get power mode.
- Parameters
dev – Device descriptor
power_down – [out] true if device in power down mode
- Returns
ESP_OK
on success
-
esp_err_t hts221_set_power_mode(hts221_t *dev, bool power_down)¶
Set power mode.
- Parameters
dev – Device descriptor
power_down – true to set device to power down mode
- Returns
ESP_OK
on success
-
esp_err_t hts221_get_data_rate(hts221_t *dev, hts221_data_rate_t *dr)¶
Get output data rate.
- Parameters
dev – Device descriptor
dr – [out] Data rate
- Returns
ESP_OK
on success
-
esp_err_t hts221_set_data_rate(hts221_t *dev, hts221_data_rate_t dr)¶
Set output data rate.
- Parameters
dev – Device descriptor
dr – Data rate
- Returns
ESP_OK
on success
-
esp_err_t hts221_get_heater(hts221_t *dev, bool *enable)¶
Get heater state.
- Parameters
dev – Device descriptor
enable – [out] true when heater is enabled
- Returns
ESP_OK
on success
-
esp_err_t hts221_set_heater(hts221_t *dev, bool enable)¶
Switch heater on/off.
- Parameters
dev – Device descriptor
enable – true to switch heater on
- Returns
ESP_OK
on success
-
esp_err_t hts221_get_averaging(hts221_t *dev, hts221_temperature_avg_t *t_avg, hts221_humidity_avg_t *rh_avg)¶
Get average configuration.
- Parameters
dev – Device descriptor
t_avg – [out] Temperature average configuration
rh_avg – [out] Humidity average configuration
- Returns
ESP_OK
on success
-
esp_err_t hts221_set_averaging(hts221_t *dev, hts221_temperature_avg_t t_avg, hts221_humidity_avg_t rh_avg)¶
Set average configuration.
- Parameters
dev – Device descriptor
t_avg – Temperature average configuration
rh_avg – Humidity average configuration
- Returns
ESP_OK
on success
-
esp_err_t hts221_get_drdy_config(hts221_t *dev, bool *enable, hts221_drdy_mode_t *mode, hts221_drdy_level_t *active)¶
Get configuration of DRDY pin.
- Parameters
dev – Device descriptor
enable – [out] true if DRDY pin is enabled
mode – [out] DRDY pin mode (Push-pull or open drain)
active – [out] Pin active level
- Returns
ESP_OK
on success
-
esp_err_t hts221_set_drdy_config(hts221_t *dev, bool enable, hts221_drdy_mode_t mode, hts221_drdy_level_t active)¶
Set configuration of DRDY pin.
- Parameters
dev – Device descriptor
enable – true if DRDY pin is enabled
mode – DRDY pin mode (Push-pull or open drain)
active – Pin active level
- Returns
ESP_OK
on success
-
esp_err_t hts221_is_data_ready(hts221_t *dev, bool *ready)¶
Check the availability of new RH/T data.
ready
parameter will be true only if new data for both temperature and humidity is available.- Parameters
dev – Device descriptor
ready – [out] true if new RH/T data available
- Returns
ESP_OK
on success
-
esp_err_t hts221_start_oneshot(hts221_t *dev)¶
Start one shot measurement.
- Parameters
dev – Device descriptor
- Returns
ESP_OK
on success
-
struct hts221_calibration_param_t¶
- #include <hts221.h>
Struct for storing calibration parameters.
Unique for every HTS221 Sensor.
-
struct hts221_t¶
- #include <hts221.h>
-
HTS221_I2C_ADDRESS¶