ESPHome 2026.6.0-dev
Loading...
Searching...
No Matches
ens160_base.h
Go to the documentation of this file.
1#pragma once
2
5
6namespace esphome::ens160_base {
7
9 public:
10 void set_co2(sensor::Sensor *co2) { co2_ = co2; }
11 void set_tvoc(sensor::Sensor *tvoc) { tvoc_ = tvoc; }
12 void set_aqi(sensor::Sensor *aqi) { aqi_ = aqi; }
13
14 void set_humidity(sensor::Sensor *humidity) { humidity_ = humidity; }
16
17 void setup() override;
18 void update() override;
19 void dump_config() override;
20
21 protected:
22 void send_env_data_();
23
33
40
41 bool warming_up_{false};
42 bool initial_startup_{false};
43
44 virtual bool read_byte(uint8_t a_register, uint8_t *data) = 0;
45 virtual bool write_byte(uint8_t a_register, uint8_t data) = 0;
46 virtual bool read_bytes(uint8_t a_register, uint8_t *data, size_t len) = 0;
47 virtual bool write_bytes(uint8_t a_register, uint8_t *data, size_t len) = 0;
48
52
56
59};
60
61} // namespace esphome::ens160_base
This class simplifies creating components that periodically check a state.
Definition component.h:585
void set_co2(sensor::Sensor *co2)
Definition ens160_base.h:10
virtual bool write_byte(uint8_t a_register, uint8_t data)=0
virtual bool read_byte(uint8_t a_register, uint8_t *data)=0
enum esphome::ens160_base::ENS160Component::ErrorCode NONE
virtual bool write_bytes(uint8_t a_register, uint8_t *data, size_t len)=0
void set_tvoc(sensor::Sensor *tvoc)
Definition ens160_base.h:11
enum esphome::ens160_base::ENS160Component::ValidityFlag validity_flag_
virtual bool read_bytes(uint8_t a_register, uint8_t *data, size_t len)=0
void set_temperature(sensor::Sensor *temperature)
Definition ens160_base.h:15
void set_aqi(sensor::Sensor *aqi)
Definition ens160_base.h:12
void set_humidity(sensor::Sensor *humidity)
Definition ens160_base.h:14
Base-class for all sensors.
Definition sensor.h:47
const void size_t len
Definition hal.h:64
uint16_t temperature
Definition sun_gtil2.cpp:12