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