aht - Driver for AHT10/AHT15/AHT20 temperature and humidity sensor

group aht

ESP-IDF driver for humidty/temperature sensors AHT10/AHT15/AHT20.

Copyright (c) 2021 Ruslan V. Uss unclerus@gmail.com

BSD Licensed as described in the file LICENSE

Defines

AHT_I2C_ADDRESS_GND

Device address when ADDR pin connected to GND.

AHT_I2C_ADDRESS_VCC

Device address when ADDR pin connected to VCC.

Enums

enum aht_type_t

Device types.

Values:

enumerator AHT_TYPE_AHT1x

AHT10, AHT15.

enumerator AHT_TYPE_AHT20

AHT20.

enum aht_mode_t

Device modes.

Values:

enumerator AHT_MODE_NORMAL

Normal mode.

enumerator AHT_MODE_CYCLE

Continuous measurements mode, undocumented.

Functions

esp_err_t aht_init_desc(aht_t *dev, uint8_t addr, i2c_port_t port, gpio_num_t sda_gpio, gpio_num_t scl_gpio)

Initialize device descriptor.

Parameters
  • dev – Device descriptor

  • addr – Device I2C address

  • port – I2C port

  • sda_gpio – SDA GPIO

  • scl_gpio – SCL GPIO

Returns

ESP_OK on success

esp_err_t aht_free_desc(aht_t *dev)

Free device descriptor.

Parameters

dev – Device descriptor

Returns

ESP_OK on success

esp_err_t aht_init(aht_t *dev)

Init device.

Parameters

dev – Device descriptor

Returns

ESP_OK on success

esp_err_t aht_reset(aht_t *dev)

Soft reset device.

Parameters

dev – Device descriptor

Returns

ESP_OK on success

esp_err_t aht_get_status(aht_t *dev, bool *busy, bool *calibrated)

Get device status.

Parameters
  • dev – Device descriptor

  • busy[out] Busy flag

    • true: device currently measuring

    • false: device in indle mode

  • calibrated[out] Calibration success flag

    • true: sensor calibrated

    • false: sensor not calibrated

Returns

ESP_OK on success

esp_err_t aht_get_data(aht_t *dev, float *temperature, float *humidity)

Get temperature and relative humidity.

Parameters
  • dev – Device descriptor

  • temperature[out] Temperature, degrees Celsius

  • humidity[out] Relative humidity, percents

Returns

ESP_OK on success

struct aht_t
#include <aht.h>

Device descriptor.