ESPHome
2026.11.0-dev
Loading...
Searching...
No Matches
esphome
components
remote_base
dyson_protocol.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
remote_base.h
"
4
5
#include <cinttypes>
6
7
namespace
esphome::remote_base
{
8
9
static
constexpr
uint8_t IGNORE_INDEX = 0xFF;
10
11
struct
DysonData
{
12
uint16_t
code
;
// the button, e.g. power, swing, fan++, ...
13
uint8_t
index
;
// the rolling index counter
14
bool
operator==
(
const
DysonData
&rhs)
const
{
15
if
(IGNORE_INDEX ==
index
|| IGNORE_INDEX == rhs.
index
) {
16
return
code
== rhs.
code
;
17
}
18
return
code
== rhs.
code
&&
index
== rhs.
index
;
19
}
20
};
21
22
class
DysonProtocol
:
public
RemoteProtocol
<DysonData> {
23
public
:
24
void
encode
(
RemoteTransmitData
*dst,
const
DysonData
&data);
25
optional<DysonData>
decode
(
RemoteReceiveData
src
);
26
void
dump
(
const
DysonData
&data);
27
};
28
29
DECLARE_REMOTE_PROTOCOL(Dyson)
30
31
}
// namespace esphome::remote_base
esphome::remote_base::DysonProtocol
Definition
dyson_protocol.h:22
esphome::remote_base::DysonProtocol::decode
optional< DysonData > decode(RemoteReceiveData src)
Definition
dyson_protocol.cpp:37
esphome::remote_base::DysonProtocol::dump
void dump(const DysonData &data)
Definition
dyson_protocol.cpp:65
esphome::remote_base::DysonProtocol::encode
void encode(RemoteTransmitData *dst, const DysonData &data)
Definition
dyson_protocol.cpp:22
esphome::remote_base::RemoteProtocol
Definition
remote_base.h:319
esphome::remote_base::RemoteReceiveData
Definition
remote_base.h:55
esphome::remote_base::RemoteTransmitData
Definition
remote_base.h:22
esphome::remote_base
Definition
ir_rf_base.cpp:221
esphome::src
const void * src
Definition
hal.h:68
remote_base.h
esphome::remote_base::DysonData
Definition
dyson_protocol.h:11
esphome::remote_base::DysonData::operator==
bool operator==(const DysonData &rhs) const
Definition
dyson_protocol.h:14
esphome::remote_base::DysonData::code
uint16_t code
Definition
dyson_protocol.h:12
esphome::remote_base::DysonData::index
uint8_t index
Definition
dyson_protocol.h:13
Generated by
1.12.0