12static const uint8_t GROVE_GAS_MC_V2_HEAT_ON = 0xFE;
13static const uint8_t GROVE_GAS_MC_V2_HEAT_OFF = 0xFF;
14static const uint8_t GROVE_GAS_MC_V2_READ_GM102B = 0x01;
15static const uint8_t GROVE_GAS_MC_V2_READ_GM302B = 0x03;
16static const uint8_t GROVE_GAS_MC_V2_READ_GM502B = 0x05;
17static const uint8_t GROVE_GAS_MC_V2_READ_GM702B = 0x07;
20 if (sensor ==
nullptr) {
24 if (!this->
read_bytes(address, (uint8_t *) &value, 4)) {
25 ESP_LOGW(TAG,
"Reading Grove Gas Sensor data failed!");
35 if (!(this->
write_bytes(GROVE_GAS_MC_V2_HEAT_ON, {}))) {
40void GroveGasMultichannelV2Component::update() {
42 if (!this->
read_sensor_(GROVE_GAS_MC_V2_READ_GM102B, this->nitrogen_dioxide_sensor_))
44 if (!this->
read_sensor_(GROVE_GAS_MC_V2_READ_GM302B, this->ethanol_sensor_))
46 if (!this->
read_sensor_(GROVE_GAS_MC_V2_READ_GM502B, this->tvoc_sensor_))
48 if (!this->
read_sensor_(GROVE_GAS_MC_V2_READ_GM702B, this->carbon_monoxide_sensor_))
54void GroveGasMultichannelV2Component::dump_config() {
55 ESP_LOGCONFIG(TAG,
"Grove Multichannel Gas Sensor V2");
57 LOG_UPDATE_INTERVAL(this);
58 LOG_SENSOR(" ", "Nitrogen Dioxide", this->nitrogen_dioxide_sensor_);
59 LOG_SENSOR(" ", "Ethanol", this->ethanol_sensor_);
60 LOG_SENSOR(" ", "Carbon Monoxide", this->carbon_monoxide_sensor_);
61 LOG_SENSOR(" ", "TVOC", this->tvoc_sensor_);