ESPHome 2025.12.0-dev
Loading...
Searching...
No Matches
uart_switch.h
Go to the documentation of this file.
1#pragma once
2
6
7#include <cinttypes>
8#include <vector>
9
10namespace esphome {
11namespace uart {
12
13class UARTSwitch : public switch_::Switch, public UARTDevice, public Component {
14 public:
15 void loop() override;
16
17 void set_data_on(std::vector<uint8_t> &&data) { this->data_on_ = std::move(data); }
18 void set_data_on(std::initializer_list<uint8_t> data) { this->data_on_ = std::vector<uint8_t>(data); }
19 void set_data_off(std::vector<uint8_t> &&data) { this->data_off_ = std::move(data); }
20 void set_data_off(std::initializer_list<uint8_t> data) { this->data_off_ = std::vector<uint8_t>(data); }
21 void set_send_every(uint32_t send_every) { this->send_every_ = send_every; }
22 void set_single_state(bool single) { this->single_state_ = single; }
23
24 void dump_config() override;
25
26 protected:
27 void write_command_(bool state);
28 void write_state(bool state) override;
29 std::vector<uint8_t> data_on_;
30 std::vector<uint8_t> data_off_;
31 bool single_state_{false};
32 uint32_t send_every_;
34};
35
36} // namespace uart
37} // namespace esphome
Base class for all switches.
Definition switch.h:39
bool state
The current reported state of the binary sensor.
Definition switch.h:56
std::vector< uint8_t > data_off_
Definition uart_switch.h:30
void write_state(bool state) override
void set_data_on(std::vector< uint8_t > &&data)
Definition uart_switch.h:17
void set_data_off(std::initializer_list< uint8_t > data)
Definition uart_switch.h:20
void write_command_(bool state)
std::vector< uint8_t > data_on_
Definition uart_switch.h:29
void dump_config() override
void set_data_on(std::initializer_list< uint8_t > data)
Definition uart_switch.h:18
void set_single_state(bool single)
Definition uart_switch.h:22
void set_data_off(std::vector< uint8_t > &&data)
Definition uart_switch.h:19
void set_send_every(uint32_t send_every)
Definition uart_switch.h:21
Providing packet encoding functions for exchanging data with a remote host.
Definition a01nyub.cpp:7