11 namespace pulse_meter {
28 void setup()
override;
56 uint32_t last_detected_edge_us_ = 0;
57 uint32_t last_rising_edge_us_ = 0;
69 uint32_t last_sent_edge_us_ = 0;
75 uint32_t last_intr_ = 0;
76 bool latched_ =
false;
77 bool last_pin_val_ =
false;
Copy of GPIOPin that is safe to use from ISRs (with no virtual functions)
void set_filter_us(uint32_t filter)
static void edge_intr(PulseMeterSensor *sensor)
InternalFilterMode filter_mode_
Filter state for pulse mode.
sensor::Sensor * total_sensor_
uint32_t last_processed_edge_us_
void dump_config() override
void set_timeout_us(uint32_t timeout)
BedjetMode mode
BedJet operating mode.
void set_total_pulses(uint32_t pulses)
static void pulse_intr(PulseMeterSensor *sensor)
void set_filter_mode(InternalFilterMode mode)
Implementation of SPI Controller mode.
float get_setup_priority() const override
void set_pin(InternalGPIOPin *pin)
ISRInternalGPIOPin isr_pin_
Base-class for all sensors.
esphome::sensor::Sensor * sensor
Filter state for edge mode.
void set_total_sensor(sensor::Sensor *sensor)