ESPHome 2025.5.0
Loading...
Searching...
No Matches
dht.h
Go to the documentation of this file.
1#pragma once
2
4#include "esphome/core/hal.h"
6
7namespace esphome {
8namespace dht {
9
20
22class DHT : public PollingComponent {
23 public:
39 void set_dht_model(DHTModel model);
40
41 void set_pin(InternalGPIOPin *pin) { pin_ = pin; }
42 void set_model(DHTModel model) { model_ = model; }
43 void set_temperature_sensor(sensor::Sensor *temperature_sensor) { temperature_sensor_ = temperature_sensor; }
44 void set_humidity_sensor(sensor::Sensor *humidity_sensor) { humidity_sensor_ = humidity_sensor; }
45
47 void setup() override;
48 void dump_config() override;
50 void update() override;
52 float get_setup_priority() const override;
53
54 protected:
55 bool read_sensor_(float *temperature, float *humidity, bool report_errors);
56
59 bool is_auto_detect_{false};
62};
63
64} // namespace dht
65} // namespace esphome
This class simplifies creating components that periodically check a state.
Definition component.h:301
Component for reading temperature/humidity measurements from DHT11/DHT22 sensors.
Definition dht.h:22
bool is_auto_detect_
Definition dht.h:59
float get_setup_priority() const override
HARDWARE_LATE setup priority.
Definition dht.cpp:70
void update() override
Update sensor values and push them to the frontend.
Definition dht.cpp:34
void dump_config() override
Definition dht.cpp:16
sensor::Sensor * temperature_sensor_
Definition dht.h:60
sensor::Sensor * humidity_sensor_
Definition dht.h:61
void set_humidity_sensor(sensor::Sensor *humidity_sensor)
Definition dht.h:44
InternalGPIOPin * pin_
Definition dht.h:57
void set_pin(InternalGPIOPin *pin)
Definition dht.h:41
DHTModel model_
Definition dht.h:58
void set_model(DHTModel model)
Definition dht.h:42
void setup() override
Set up the pins and check connection.
Definition dht.cpp:10
void set_temperature_sensor(sensor::Sensor *temperature_sensor)
Definition dht.h:43
bool read_sensor_(float *temperature, float *humidity, bool report_errors)
Definition dht.cpp:75
void set_dht_model(DHTModel model)
Manually select the DHT model.
Definition dht.cpp:71
Base-class for all sensors.
Definition sensor.h:57
@ DHT_MODEL_AUTO_DETECT
Definition dht.h:11
@ DHT_MODEL_DHT22
Definition dht.h:13
@ DHT_MODEL_AM2302
Definition dht.h:15
@ DHT_MODEL_SI7021
Definition dht.h:17
@ DHT_MODEL_DHT22_TYPE2
Definition dht.h:18
@ DHT_MODEL_AM2120
Definition dht.h:14
@ DHT_MODEL_RHT03
Definition dht.h:16
@ DHT_MODEL_DHT11
Definition dht.h:12
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7
uint16_t temperature
Definition sun_gtil2.cpp:12