ESPHome
2026.5.1
Loading...
Searching...
No Matches
esphome
components
remote_base
gobox_protocol.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
esphome/core/component.h
"
4
#include "
remote_base.h
"
5
6
namespace
esphome::remote_base
{
7
8
struct
GoboxData
{
9
int
code
;
10
bool
operator==
(
const
GoboxData
&rhs)
const
{
return
code
== rhs.
code
; }
11
};
12
13
enum
{
14
GOBOX_MENU
= 0xaa55,
15
GOBOX_RETURN
= 0x22dd,
16
GOBOX_UP
= 0x0af5,
17
GOBOX_LEFT
= 0x8a75,
18
GOBOX_RIGHT
= 0x48b7,
19
GOBOX_DOWN
= 0xa25d,
20
GOBOX_OK
= 0xc837,
21
GOBOX_TOGGLE
= 0xb847,
22
GOBOX_PROFILE
= 0xfa05,
23
GOBOX_FASTER
= 0xf00f,
24
GOBOX_SLOWER
= 0xd02f,
25
GOBOX_LOUDER
= 0xb04f,
26
GOBOX_SOFTER
= 0xf807,
27
};
28
29
class
GoboxProtocol
:
public
RemoteProtocol
<GoboxData> {
30
private
:
31
void
dump_timings_(
const
RawTimings
&timings)
const
;
32
33
public
:
34
void
encode
(
RemoteTransmitData
*dst,
const
GoboxData
&data)
override
;
35
optional<GoboxData>
decode
(
RemoteReceiveData
src)
override
;
36
void
dump
(
const
GoboxData
&data)
override
;
37
};
38
39
DECLARE_REMOTE_PROTOCOL(Gobox)
40
41
template
<
typename
... Ts>
class
GoboxAction :
public
RemoteTransmitterActionBase
<Ts...> {
42
public
:
43
TEMPLATABLE_VALUE(uint64_t, code);
44
45
void
encode(
RemoteTransmitData
*dst, Ts...
x
)
override
{
46
GoboxData
data{};
47
data.code = this->code_.value(
x
...);
48
GoboxProtocol().encode(dst, data);
49
}
50
};
51
52
}
// namespace esphome::remote_base
esphome::remote_base::GoboxProtocol
Definition
gobox_protocol.h:29
esphome::remote_base::GoboxProtocol::dump
void dump(const GoboxData &data) override
Definition
gobox_protocol.cpp:85
esphome::remote_base::GoboxProtocol::encode
void encode(RemoteTransmitData *dst, const GoboxData &data) override
Definition
gobox_protocol.cpp:23
esphome::remote_base::GoboxProtocol::decode
optional< GoboxData > decode(RemoteReceiveData src) override
Definition
gobox_protocol.cpp:41
esphome::remote_base::RemoteProtocol
Definition
remote_base.h:232
esphome::remote_base::RemoteReceiveData
Definition
remote_base.h:53
esphome::remote_base::RemoteTransmitData
Definition
remote_base.h:20
esphome::remote_base::RemoteTransmitterActionBase
Definition
remote_base.h:286
component.h
esphome::remote_base
Definition
abbwelcome_protocol.cpp:4
esphome::remote_base::RawTimings
std::vector< int32_t > RawTimings
Definition
remote_base.h:18
esphome::remote_base::GOBOX_SLOWER
@ GOBOX_SLOWER
Definition
gobox_protocol.h:24
esphome::remote_base::GOBOX_LOUDER
@ GOBOX_LOUDER
Definition
gobox_protocol.h:25
esphome::remote_base::GOBOX_UP
@ GOBOX_UP
Definition
gobox_protocol.h:16
esphome::remote_base::GOBOX_PROFILE
@ GOBOX_PROFILE
Definition
gobox_protocol.h:22
esphome::remote_base::GOBOX_FASTER
@ GOBOX_FASTER
Definition
gobox_protocol.h:23
esphome::remote_base::GOBOX_DOWN
@ GOBOX_DOWN
Definition
gobox_protocol.h:19
esphome::remote_base::GOBOX_SOFTER
@ GOBOX_SOFTER
Definition
gobox_protocol.h:26
esphome::remote_base::GOBOX_OK
@ GOBOX_OK
Definition
gobox_protocol.h:20
esphome::remote_base::GOBOX_RETURN
@ GOBOX_RETURN
Definition
gobox_protocol.h:15
esphome::remote_base::GOBOX_TOGGLE
@ GOBOX_TOGGLE
Definition
gobox_protocol.h:21
esphome::remote_base::GOBOX_MENU
@ GOBOX_MENU
Definition
gobox_protocol.h:14
esphome::remote_base::GOBOX_LEFT
@ GOBOX_LEFT
Definition
gobox_protocol.h:17
esphome::remote_base::GOBOX_RIGHT
@ GOBOX_RIGHT
Definition
gobox_protocol.h:18
remote_base.h
esphome::remote_base::GoboxData
Definition
gobox_protocol.h:8
esphome::remote_base::GoboxData::operator==
bool operator==(const GoboxData &rhs) const
Definition
gobox_protocol.h:10
esphome::remote_base::GoboxData::code
int code
Definition
gobox_protocol.h:9
x
uint16_t x
Definition
tt21100.cpp:5
Generated by
1.12.0