ESPHome 2026.11.0-dev
Loading...
Searching...
No Matches
gobox_protocol.h
Go to the documentation of this file.
1#pragma once
2
4#include "remote_base.h"
5
6namespace esphome::remote_base {
7
8struct GoboxData {
9 int code;
10 bool operator==(const GoboxData &rhs) const { return code == rhs.code; }
11};
12
13enum {
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
29class 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);
35 optional<GoboxData> decode(RemoteReceiveData src);
36 void dump(const GoboxData &data);
37};
38
39DECLARE_REMOTE_PROTOCOL(Gobox)
40
41} // namespace esphome::remote_base
optional< GoboxData > decode(RemoteReceiveData src)
void dump(const GoboxData &data)
void encode(RemoteTransmitData *dst, const GoboxData &data)
std::vector< int32_t > RawTimings
Definition remote_base.h:20
const void * src
Definition hal.h:68
bool operator==(const GoboxData &rhs) const