IRremoteESP8266
Loading...
Searching...
No Matches
ir_Fujitsu.h
Go to the documentation of this file.
1// Copyright 2017 Jonny Graham
2// Copyright 2018-2022 David Conran
3// Copyright 2021 siriuslzx
4
13
14// Supports:
15// Brand: Fujitsu, Model: AR-RAH2E remote (ARRAH2E)
16// Brand: Fujitsu, Model: ASYG30LFCA A/C (ARRAH2E)
17// Brand: Fujitsu General, Model: AR-RCE1E remote (ARRAH2E)
18// Brand: Fujitsu General, Model: ASHG09LLCA A/C (ARRAH2E)
19// Brand: Fujitsu General, Model: AOHG09LLC A/C (ARRAH2E)
20// Brand: Fujitsu, Model: AR-DB1 remote (ARDB1)
21// Brand: Fujitsu, Model: AST9RSGCW A/C (ARDB1)
22// Brand: Fujitsu, Model: AR-REB1E remote (ARREB1E)
23// Brand: Fujitsu, Model: ASYG7LMCA A/C (ARREB1E)
24// Brand: Fujitsu, Model: AR-RAE1E remote (ARRAH2E)
25// Brand: Fujitsu, Model: AGTV14LAC A/C (ARRAH2E)
26// Brand: Fujitsu, Model: AR-RAC1E remote (ARRAH2E)
27// Brand: Fujitsu, Model: ASTB09LBC A/C (ARRY4)
28// Brand: Fujitsu, Model: AR-RY4 remote (ARRY4)
29// Brand: Fujitsu General, Model: AR-JW2 remote (ARJW2)
30// Brand: Fujitsu, Model: AR-DL10 remote (ARDB1)
31// Brand: Fujitsu, Model: ASU30C1 A/C (ARDB1)
32// Brand: Fujitsu, Model: AR-RAH1U remote (ARREB1E)
33// Brand: Fujitsu, Model: AR-RAH2U remote (ARRAH2E)
34// Brand: Fujitsu, Model: ASU12RLF A/C (ARREB1E)
35// Brand: Fujitsu, Model: AR-REW4E remote (ARREW4E)
36// Brand: Fujitsu, Model: ASYG09KETA-B A/C (ARREW4E)
37// Brand: Fujitsu, Model: AR-REB4E remote (ARREB1E)
38// Brand: Fujitsu, Model: ASTG09K A/C (ARREW4E)
39// Brand: Fujitsu, Model: ASTG18K A/C (ARREW4E)
40// Brand: Fujitsu, Model: AR-REW1E remote (ARREW4E)
41// Brand: Fujitsu, Model: AR-REG1U remote (ARRAH2E)
42// Brand: OGeneral, Model: AR-RCL1E remote (ARRAH2E)
43// Brand: Fujitsu General, Model: AR-JW17 remote (ARDB1)
44// Brand: Fujitsu General, Model: AR-JW19 remote (ARDB1)
45
46#ifndef IR_FUJITSU_H_
47#define IR_FUJITSU_H_
48
49#define __STDC_LIMIT_MACROS
50#include <stdint.h>
51#ifdef ARDUINO
52#include <Arduino.h>
53#endif
54#include "IRrecv.h"
55#include "IRremoteESP8266.h"
56#include "IRsend.h"
57#ifdef UNIT_TEST
58#include "IRsend_test.h"
59#endif
60
63 struct {
66 };
67 struct {
68 // Byte 0~1
69 uint64_t :16; // Fixed header
70 // Byte 2
71 uint64_t :4;
72 uint64_t Id :2; // Device Number/Identifier
73 uint64_t :2;
74 // Byte 3-4
75 uint64_t :16;
76 // Byte 5
77 uint64_t Cmd :8; // short codes:cmd; long codes:fixed value
78 // Byte 6
79 uint64_t RestLength :8; // Nr. of bytes in the message after this byte.
80 // Byte 7
81 uint64_t Protocol :8; // Seems like a protocol version number. Not sure.
82 // Byte 8
83 uint64_t Power :1;
84 uint64_t Fahrenheit :1;
85 uint64_t Temp :6; // Internal representation varies between models.
86 // Byte 9
87 uint64_t Mode :3;
88 uint64_t Clean :1; // Also 10C Heat in ARREW4E.
89 uint64_t TimerType :2;
90 uint64_t :2;
91 // Byte 10
92 uint64_t Fan :3;
93 uint64_t :1;
94 uint64_t Swing :2;
95 uint64_t :2;
96 // Byte 11~13
97 uint64_t OffTimer :11; // Also is the sleep timer value
98 uint64_t OffTimerEnable :1;
99 uint64_t OnTimer :11;
100 uint64_t OnTimerEnable :1;
101 // Byte 14
102 uint64_t :3;
103 uint64_t Filter :1;
104 uint64_t :1;
105 uint64_t unknown :1;
106 uint64_t :1;
107 uint64_t OutsideQuiet :1;
108 // Byte 15
109 uint64_t :0; // Checksum
110 };
111};
112
113// Constants
114const uint8_t kFujitsuAcModeAuto = 0x0; // 0b000
115const uint8_t kFujitsuAcModeCool = 0x1; // 0b001
116const uint8_t kFujitsuAcModeDry = 0x2; // 0b010
117const uint8_t kFujitsuAcModeFan = 0x3; // 0b011
118const uint8_t kFujitsuAcModeHeat = 0x4; // 0b100
119
120const uint8_t kFujitsuAcCmdStayOn = 0x00; // b00000000
121const uint8_t kFujitsuAcCmdTurnOn = 0x01; // b00000001
122const uint8_t kFujitsuAcCmdTurnOff = 0x02; // b00000010
123const uint8_t kFujitsuAcCmdEcono = 0x09; // b00001001
124const uint8_t kFujitsuAcCmdPowerful = 0x39; // b00111001
125const uint8_t kFujitsuAcCmdStepVert = 0x6C; // b01101100
126const uint8_t kFujitsuAcCmdToggleSwingVert = 0x6D; // b01101101
127const uint8_t kFujitsuAcCmdStepHoriz = 0x79; // b01111001
128const uint8_t kFujitsuAcCmdToggleSwingHoriz = 0x7A; // b01111010
129
130const uint8_t kFujitsuAcFanAuto = 0x00;
131const uint8_t kFujitsuAcFanHigh = 0x01;
132const uint8_t kFujitsuAcFanMed = 0x02;
133const uint8_t kFujitsuAcFanLow = 0x03;
134const uint8_t kFujitsuAcFanQuiet = 0x04;
135
136const float kFujitsuAcMinHeat = 10; // 10C
137const float kFujitsuAcMinTemp = 16; // 16C
138const float kFujitsuAcMaxTemp = 30; // 30C
140const float kFujitsuAcMinHeatF = 50; // 50F
141const float kFujitsuAcMinTempF = 60; // 60F
142const float kFujitsuAcMaxTempF = 88; // 88F
143const uint8_t kFujitsuAcTempOffsetF = 44;
144
145const uint8_t kFujitsuAcSwingOff = 0x00;
146const uint8_t kFujitsuAcSwingVert = 0x01;
147const uint8_t kFujitsuAcSwingHoriz = 0x02;
148const uint8_t kFujitsuAcSwingBoth = 0x03;
149
150const uint8_t kFujitsuAcStopTimers = 0b00; // 0
151const uint8_t kFujitsuAcSleepTimer = 0b01; // 1
152const uint8_t kFujitsuAcOffTimer = 0b10; // 2
153const uint8_t kFujitsuAcOnTimer = 0b11; // 3
154const uint16_t kFujitsuAcTimerMax = 12 * 60;
155
156// Legacy defines.
157#define FUJITSU_AC_MODE_AUTO kFujitsuAcModeAuto
158#define FUJITSU_AC_MODE_COOL kFujitsuAcModeCool
159#define FUJITSU_AC_MODE_DRY kFujitsuAcModeDry
160#define FUJITSU_AC_MODE_FAN kFujitsuAcModeFan
161#define FUJITSU_AC_MODE_HEAT kFujitsuAcModeHeat
162#define FUJITSU_AC_CMD_STAY_ON kFujitsuAcCmdStayOn
163#define FUJITSU_AC_CMD_TURN_ON kFujitsuAcCmdTurnOn
164#define FUJITSU_AC_CMD_TURN_OFF kFujitsuAcCmdTurnOff
165#define FUJITSU_AC_CMD_STEP_HORIZ kFujitsuAcCmdStepHoriz
166#define FUJITSU_AC_CMD_STEP_VERT kFujitsuAcCmdStepVert
167#define FUJITSU_AC_FAN_AUTO kFujitsuAcFanAuto
168#define FUJITSU_AC_FAN_HIGH kFujitsuAcFanHigh
169#define FUJITSU_AC_FAN_MED kFujitsuAcFanMed
170#define FUJITSU_AC_FAN_LOW kFujitsuAcFanLow
171#define FUJITSU_AC_FAN_QUIET kFujitsuAcFanQuiet
172#define FUJITSU_AC_MIN_TEMP kFujitsuAcMinTemp
173#define FUJITSU_AC_MAX_TEMP kFujitsuAcMaxTemp
174#define FUJITSU_AC_SWING_OFF kFujitsuAcSwingOff
175#define FUJITSU_AC_SWING_VERT kFujitsuAcSwingVert
176#define FUJITSU_AC_SWING_HORIZ kFujitsuAcSwingHoriz
177#define FUJITSU_AC_SWING_BOTH kFujitsuAcSwingBoth
178
181 public:
182 explicit IRFujitsuAC(const uint16_t pin,
184 const bool inverted = false,
185 const bool use_modulation = true);
186 void setModel(const fujitsu_ac_remote_model_t model);
188 void stateReset(void);
189#if SEND_FUJITSU_AC
190 void send(const uint16_t repeat = kFujitsuAcMinRepeat);
195 int8_t calibrate(void) { return _irsend.calibrate(); }
196#endif // SEND_FUJITSU_AC
197 void begin(void);
198 void stepHoriz(void);
199 void toggleSwingHoriz(const bool update = true);
200 void stepVert(void);
201 void toggleSwingVert(const bool update = true);
202 void setCmd(const uint8_t cmd);
203 uint8_t getCmd(void) const;
204 void setTemp(const float temp, const bool useCelsius = true);
205 float getTemp(void) const;
206 void setFanSpeed(const uint8_t fan);
207 uint8_t getFanSpeed(void) const;
208 void setMode(const uint8_t mode);
209 uint8_t getMode(void) const;
210 void setSwing(const uint8_t mode);
211 uint8_t getSwing(void) const;
212 uint8_t* getRaw(void);
213 bool setRaw(const uint8_t newState[], const uint16_t length);
214 uint8_t getStateLength(void);
215 static bool validChecksum(uint8_t* state, const uint16_t length);
216 bool isLongCode(void) const;
217 void setPower(const bool on);
218 void off(void);
219 void on(void);
220 bool getPower(void) const;
221 void setClean(const bool on);
222 bool getClean(void) const;
223 void setFilter(const bool on);
224 bool getFilter(void) const;
225 void set10CHeat(const bool on);
226 bool get10CHeat(void) const;
227 void setOutsideQuiet(const bool on);
228 bool getOutsideQuiet(void) const;
229 uint8_t getTimerType(void) const;
230 void setTimerType(const uint8_t timertype);
231 uint16_t getOnTimer(void) const;
232 void setOnTimer(const uint16_t nr_mins);
233 uint16_t getOffSleepTimer(void) const;
234 void setOffTimer(const uint16_t nr_mins);
235 void setSleepTimer(const uint16_t nr_mins);
236 void setId(const uint8_t num);
237 uint8_t getId(void) const;
238 void setCelsius(const bool on);
239 bool getCelsius(void) const;
240 static uint8_t convertMode(const stdAc::opmode_t mode);
241 static uint8_t convertFan(stdAc::fanspeed_t speed);
242 static stdAc::opmode_t toCommonMode(const uint8_t mode);
243 static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed);
244 stdAc::state_t toCommon(const stdAc::state_t *prev = NULL);
245 String toString(void) const;
246#ifndef UNIT_TEST
247
248 private:
250#else
252 IRsendTest _irsend;
254#endif
256 uint8_t _cmd;
261 void checkSum(void);
262 bool updateUseLongOrShort(void);
263 void buildFromState(const uint16_t length);
264 void setOffSleepTimer(const uint16_t nr_mins);
265};
266
267#endif // IR_FUJITSU_H_
const uint16_t kFujitsuAcStateLengthShort
Definition IRremoteESP8266.h:1270
const uint16_t kFujitsuAcMinRepeat
Definition IRremoteESP8266.h:1268
const uint16_t kFujitsuAcStateLength
Definition IRremoteESP8266.h:1269
std::string String
Definition IRremoteESP8266.h:1564
fujitsu_ac_remote_model_t
Fujitsu A/C model numbers.
Definition IRsend.h:140
@ ARRAH2E
(1) AR-RAH2E, AR-RAC1E, AR-RAE1E, AR-RCE1E, AR-RAH2U, AR-REG1U (Default) Warning: Use on incorrect mo...
Definition IRsend.h:141
Class for handling detailed Fujitsu A/C messages.
Definition ir_Fujitsu.h:180
uint8_t getStateLength(void)
Get the length (size) of the state code for the current configuration.
Definition ir_Fujitsu.cpp:245
void set10CHeat(const bool on)
Set the 10C heat status of the A/C.
Definition ir_Fujitsu.cpp:594
bool getPower(void) const
Get the value of the current power setting.
Definition ir_Fujitsu.cpp:419
bool updateUseLongOrShort(void)
Update the length (size) of the state code for the current configuration.
Definition ir_Fujitsu.cpp:135
static uint8_t convertFan(stdAc::fanspeed_t speed)
Convert a stdAc::fanspeed_t enum into it's native speed.
Definition ir_Fujitsu.cpp:770
fujitsu_ac_remote_model_t getModel(void) const
Get the currently emulated/detected model of the A/C.
Definition ir_Fujitsu.cpp:98
fujitsu_ac_remote_model_t _model
Definition ir_Fujitsu.h:257
void send(const uint16_t repeat=kFujitsuAcMinRepeat)
Send the current internal state as an IR message.
Definition ir_Fujitsu.cpp:128
static uint8_t convertMode(const stdAc::opmode_t mode)
Convert a stdAc::opmode_t enum into its native mode.
Definition ir_Fujitsu.cpp:757
uint16_t getOffSleepTimer(void) const
Get the Off/Sleep Timer setting of the A/C.
Definition ir_Fujitsu.cpp:672
static bool validChecksum(uint8_t *state, const uint16_t length)
Verify the checksum is valid for a given state.
Definition ir_Fujitsu.cpp:711
void setCelsius(const bool on)
Set the Temperature units for the A/C.
Definition ir_Fujitsu.cpp:745
IRsend _irsend
Instance of the IR send class.
Definition ir_Fujitsu.h:249
uint8_t getFanSpeed(void) const
Get the current fan speed setting.
Definition ir_Fujitsu.cpp:512
bool get10CHeat(void) const
Get the 10C heat status of the A/C.
Definition ir_Fujitsu.cpp:614
void setOffTimer(const uint16_t nr_mins)
Set the Off Timer time for the A/C.
Definition ir_Fujitsu.cpp:689
String toString(void) const
Convert the current internal state into a human readable string.
Definition ir_Fujitsu.cpp:862
void setOnTimer(const uint16_t nr_mins)
Set the On Timer setting of the A/C.
Definition ir_Fujitsu.cpp:660
uint8_t getId(void) const
Get the current device's remote ID number.
Definition ir_Fujitsu.cpp:741
void setModel(const fujitsu_ac_remote_model_t model)
Set the currently emulated model of the A/C.
Definition ir_Fujitsu.cpp:79
void stepHoriz(void)
Request the A/C to step the Horizontal Swing.
Definition ir_Fujitsu.cpp:336
void setTimerType(const uint8_t timertype)
Set the Timer type of the A/C message.
Definition ir_Fujitsu.cpp:637
uint8_t getCmd(void) const
Set the requested (special) command part for the A/C message.
Definition ir_Fujitsu.cpp:401
uint8_t _cmd
Definition ir_Fujitsu.h:256
void setId(const uint8_t num)
Set the device's remote ID number.
Definition ir_Fujitsu.cpp:734
void stateReset(void)
Reset the state of the remote to a known good state/sequence.
Definition ir_Fujitsu.cpp:101
void setSwing(const uint8_t mode)
Set the requested swing operation mode of the A/C unit.
Definition ir_Fujitsu.cpp:533
void toggleSwingVert(const bool update=true)
Request the A/C to toggle the Vertical Swing mode.
Definition ir_Fujitsu.cpp:352
void buildFromState(const uint16_t length)
Build the internal state/config from the current (raw) A/C message.
Definition ir_Fujitsu.cpp:264
bool getOutsideQuiet(void) const
Get the Outside Quiet mode status of the A/C.
Definition ir_Fujitsu.cpp:431
uint8_t _state_length_short
Definition ir_Fujitsu.h:259
bool _rawstatemodified
Definition ir_Fujitsu.h:260
void setCmd(const uint8_t cmd)
Set the requested (special) command part for the A/C message.
Definition ir_Fujitsu.cpp:361
void setClean(const bool on)
Set the Clean mode of the A/C.
Definition ir_Fujitsu.cpp:560
bool isLongCode(void) const
Is the current binary state representation a long or a short code?
Definition ir_Fujitsu.cpp:251
bool getClean(void) const
Get the Clean mode status of the A/C.
Definition ir_Fujitsu.cpp:568
int8_t calibrate(void)
Run the calibration to calculate uSec timing offsets for this platform.
Definition ir_Fujitsu.h:195
void setPower(const bool on)
Change the power setting.
Definition ir_Fujitsu.cpp:407
static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)
Convert a native fan speed into its stdAc equivalent.
Definition ir_Fujitsu.cpp:797
void stepVert(void)
Request the A/C to step the Vertical Swing.
Definition ir_Fujitsu.cpp:348
static stdAc::opmode_t toCommonMode(const uint8_t mode)
Convert a native mode into its stdAc equivalent.
Definition ir_Fujitsu.cpp:784
void setOutsideQuiet(const bool on)
Set the Outside Quiet mode of the A/C.
Definition ir_Fujitsu.cpp:423
bool setRaw(const uint8_t newState[], const uint16_t length)
Set the internal state from a valid code for this protocol.
Definition ir_Fujitsu.cpp:322
uint8_t getTimerType(void) const
Get the Timer type of the A/C message.
Definition ir_Fujitsu.cpp:626
float getTemp(void) const
Get the current temperature setting.
Definition ir_Fujitsu.cpp:488
stdAc::state_t toCommon(const stdAc::state_t *prev=NULL)
Convert the current internal state into its stdAc::state_t equivalent.
Definition ir_Fujitsu.cpp:810
uint8_t getSwing(void) const
Get the requested swing operation mode of the A/C unit.
Definition ir_Fujitsu.cpp:556
void setMode(const uint8_t mode)
Set the operating mode of the A/C.
Definition ir_Fujitsu.cpp:516
FujitsuProtocol _
Definition ir_Fujitsu.h:255
void setOffSleepTimer(const uint16_t nr_mins)
Set the Off/Sleep Timer time for the A/C.
Definition ir_Fujitsu.cpp:682
void checkSum(void)
Calculate and set the checksum values for the internal state.
Definition ir_Fujitsu.cpp:170
void on(void)
Set the requested power state of the A/C to on.
Definition ir_Fujitsu.cpp:415
void setTemp(const float temp, const bool useCelsius=true)
Set the temperature.
Definition ir_Fujitsu.cpp:444
uint8_t getMode(void) const
Get the operating mode setting of the A/C.
Definition ir_Fujitsu.cpp:527
uint8_t * getRaw(void)
Get a PTR to the internal state/code for this protocol.
Definition ir_Fujitsu.cpp:257
uint16_t getOnTimer(void) const
Get the On Timer setting of the A/C.
Definition ir_Fujitsu.cpp:652
void off(void)
Set the requested power state of the A/C to off.
Definition ir_Fujitsu.cpp:412
uint8_t _state_length
Definition ir_Fujitsu.h:258
void toggleSwingHoriz(const bool update=true)
Request the A/C to toggle the Horizontal Swing mode.
Definition ir_Fujitsu.cpp:340
void setSleepTimer(const uint16_t nr_mins)
Set the Sleep Timer time for the A/C.
Definition ir_Fujitsu.cpp:699
void setFilter(const bool on)
Set the Filter mode status of the A/C.
Definition ir_Fujitsu.cpp:577
void begin(void)
Set up hardware to be able to send a message.
Definition ir_Fujitsu.cpp:123
void setFanSpeed(const uint8_t fan)
Set the speed of the fan.
Definition ir_Fujitsu.cpp:501
bool getFilter(void) const
Get the Filter mode status of the A/C.
Definition ir_Fujitsu.cpp:585
bool getCelsius(void) const
Get the Clean mode status of the A/C.
Definition ir_Fujitsu.cpp:752
Class for sending all basic IR protocols.
Definition IRsend.h:249
int8_t calibrate(uint16_t hz=38000U)
Calculate & set any offsets to account for execution times during sending.
Definition IRsend.cpp:209
const uint8_t kFujitsuAcCmdTurnOff
Definition ir_Fujitsu.h:122
const uint8_t kFujitsuAcSwingBoth
Definition ir_Fujitsu.h:148
const uint8_t kFujitsuAcFanMed
Definition ir_Fujitsu.h:132
const uint8_t kFujitsuAcStopTimers
Definition ir_Fujitsu.h:150
const uint8_t kFujitsuAcCmdEcono
Definition ir_Fujitsu.h:123
const uint8_t kFujitsuAcFanHigh
Definition ir_Fujitsu.h:131
const uint8_t kFujitsuAcCmdToggleSwingHoriz
Definition ir_Fujitsu.h:128
const float kFujitsuAcMinHeatF
Definition ir_Fujitsu.h:140
const uint8_t kFujitsuAcCmdTurnOn
Definition ir_Fujitsu.h:121
const uint8_t kFujitsuAcSleepTimer
Definition ir_Fujitsu.h:151
const uint8_t kFujitsuAcFanAuto
Definition ir_Fujitsu.h:130
const uint8_t kFujitsuAcSwingVert
Definition ir_Fujitsu.h:146
const uint8_t kFujitsuAcCmdStepVert
Definition ir_Fujitsu.h:125
const uint8_t kFujitsuAcCmdToggleSwingVert
Definition ir_Fujitsu.h:126
const uint8_t kFujitsuAcCmdPowerful
Definition ir_Fujitsu.h:124
const uint8_t kFujitsuAcModeCool
Definition ir_Fujitsu.h:115
const uint8_t kFujitsuAcModeFan
Definition ir_Fujitsu.h:117
const uint8_t kFujitsuAcSwingOff
Definition ir_Fujitsu.h:145
const float kFujitsuAcMinTempF
Definition ir_Fujitsu.h:141
const uint8_t kFujitsuAcTempOffsetC
Definition ir_Fujitsu.h:139
const uint8_t kFujitsuAcSwingHoriz
Definition ir_Fujitsu.h:147
const uint8_t kFujitsuAcTempOffsetF
Definition ir_Fujitsu.h:143
const uint8_t kFujitsuAcFanQuiet
Definition ir_Fujitsu.h:134
const uint8_t kFujitsuAcFanLow
Definition ir_Fujitsu.h:133
const float kFujitsuAcMinHeat
Definition ir_Fujitsu.h:136
const uint8_t kFujitsuAcOnTimer
Definition ir_Fujitsu.h:153
const float kFujitsuAcMaxTemp
Definition ir_Fujitsu.h:138
const uint8_t kFujitsuAcCmdStepHoriz
Definition ir_Fujitsu.h:127
const float kFujitsuAcMaxTempF
Definition ir_Fujitsu.h:142
const uint8_t kFujitsuAcCmdStayOn
Definition ir_Fujitsu.h:120
const uint8_t kFujitsuAcModeAuto
Definition ir_Fujitsu.h:114
const uint8_t kFujitsuAcOffTimer
Definition ir_Fujitsu.h:152
const uint8_t kFujitsuAcModeHeat
Definition ir_Fujitsu.h:118
const float kFujitsuAcMinTemp
Definition ir_Fujitsu.h:137
const uint16_t kFujitsuAcTimerMax
Minutes.
Definition ir_Fujitsu.h:154
const uint8_t kFujitsuAcModeDry
Definition ir_Fujitsu.h:116
fanspeed_t
Common A/C settings for Fan Speeds.
Definition IRsend.h:61
opmode_t
Common A/C settings for A/C operating modes.
Definition IRsend.h:49
Structure to hold a common A/C state.
Definition IRsend.h:114
Native representation of a Fujitsu A/C message.
Definition ir_Fujitsu.h:62
uint64_t Clean
Definition ir_Fujitsu.h:88
uint64_t Filter
Definition ir_Fujitsu.h:103
uint64_t unknown
Definition ir_Fujitsu.h:105
uint64_t Fahrenheit
Definition ir_Fujitsu.h:84
uint64_t OffTimer
Definition ir_Fujitsu.h:97
uint8_t shortcode[kFujitsuAcStateLengthShort]
Definition ir_Fujitsu.h:65
uint8_t longcode[kFujitsuAcStateLength]
The state of the IR remote.
Definition ir_Fujitsu.h:64
uint64_t Temp
Definition ir_Fujitsu.h:85
uint64_t OutsideQuiet
Definition ir_Fujitsu.h:107
uint64_t TimerType
Definition ir_Fujitsu.h:89
uint64_t Fan
Definition ir_Fujitsu.h:92
uint64_t OnTimerEnable
Definition ir_Fujitsu.h:100
uint64_t Cmd
Definition ir_Fujitsu.h:77
uint64_t OffTimerEnable
Definition ir_Fujitsu.h:98
uint64_t RestLength
Definition ir_Fujitsu.h:79
uint64_t Mode
Definition ir_Fujitsu.h:87
uint64_t Id
Definition ir_Fujitsu.h:72
uint64_t Protocol
Definition ir_Fujitsu.h:81
uint64_t Power
Definition ir_Fujitsu.h:83
uint64_t OnTimer
Definition ir_Fujitsu.h:99
uint64_t Swing
Definition ir_Fujitsu.h:94