ESPHome 2025.5.0
Loading...
Searching...
No Matches
bedjet_fan.h
Go to the documentation of this file.
1#pragma once
2
5#include "esphome/core/hal.h"
10
11#ifdef USE_ESP32
12
13namespace esphome {
14namespace bedjet {
15
16class BedJetFan : public fan::Fan, public BedJetClient, public PollingComponent {
17 public:
18 void update() override;
19 void dump_config() override;
20 float get_setup_priority() const override { return setup_priority::AFTER_WIFI; }
21
22 /* BedJetClient status update */
23 void on_status(const BedjetStatusPacket *data) override;
24 void on_bedjet_state(bool is_ready) override{};
25 std::string describe() override;
26
27 fan::FanTraits get_traits() override { return fan::FanTraits(false, true, false, BEDJET_FAN_SPEED_COUNT); }
28
29 protected:
30 void control(const fan::FanCall &call) override;
31
32 private:
33 void reset_state_();
34 bool update_status_();
35};
36
37} // namespace bedjet
38} // namespace esphome
39
40#endif
bool is_ready() const
This class simplifies creating components that periodically check a state.
Definition component.h:301
void dump_config() override
fan::FanTraits get_traits() override
Definition bedjet_fan.h:27
float get_setup_priority() const override
Definition bedjet_fan.h:20
void control(const fan::FanCall &call) override
void on_bedjet_state(bool is_ready) override
Definition bedjet_fan.h:24
void on_status(const BedjetStatusPacket *data) override
std::string describe() override
const float AFTER_WIFI
For components that should be initialized after WiFi is connected.
Definition component.cpp:26
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7
The format of a BedJet V3 status packet.