Update IRRemoteESP8266 version to 2.5.5
factorize IR send signal function between the 2 types of receiving Add new IRRemoteESP8266 protocols replace pins on mega according schema remove unecessaries spaces
This commit is contained in:
1 parent
0180a0dbd5
commit
f0305236db
149 files changed
+20957
-7850
No files matched your search
@@ -1,5 +1,6 @@
|
||||
// Copyright 2017 David Conran
|
||||
// Copyright 2017-2018 David Conran
|
||||
|
||||
#include "ir_Coolix.h"
|
||||
#include "IRsend.h"
|
||||
#include "IRsend_test.h"
|
||||
#include "gtest/gtest.h"
|
||||
@@ -21,7 +22,8 @@ TEST(TestSendCoolix, SendDataOnly) {
|
||||
"m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680"
|
||||
"m560s560m560s560m560s560m560s560m560s560m560s560m560s560m560s560"
|
||||
"m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680"
|
||||
"m560s5040", irsend.outputStr());
|
||||
"m560s5040",
|
||||
irsend.outputStr());
|
||||
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0xAA55AA);
|
||||
@@ -33,7 +35,8 @@ TEST(TestSendCoolix, SendDataOnly) {
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
"m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680"
|
||||
"m560s5040", irsend.outputStr());
|
||||
"m560s5040",
|
||||
irsend.outputStr());
|
||||
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0xFFFFFF);
|
||||
@@ -45,7 +48,8 @@ TEST(TestSendCoolix, SendDataOnly) {
|
||||
"m560s560m560s560m560s560m560s560m560s560m560s560m560s560m560s560"
|
||||
"m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680"
|
||||
"m560s560m560s560m560s560m560s560m560s560m560s560m560s560m560s560"
|
||||
"m560s5040", irsend.outputStr());
|
||||
"m560s5040",
|
||||
irsend.outputStr());
|
||||
}
|
||||
|
||||
// Test sending with different repeats.
|
||||
@@ -54,7 +58,7 @@ TEST(TestSendCoolix, SendWithRepeats) {
|
||||
irsend.begin();
|
||||
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0xAA55AA, COOLIX_BITS, 1); // 1 repeat.
|
||||
irsend.sendCOOLIX(0xAA55AA, kCoolixBits, 1); // 1 repeat.
|
||||
EXPECT_EQ(
|
||||
"m4480s4480"
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
@@ -71,8 +75,9 @@ TEST(TestSendCoolix, SendWithRepeats) {
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
"m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680"
|
||||
"m560s5040", irsend.outputStr());
|
||||
irsend.sendCOOLIX(0xAA55AA, COOLIX_BITS, 2); // 2 repeats.
|
||||
"m560s5040",
|
||||
irsend.outputStr());
|
||||
irsend.sendCOOLIX(0xAA55AA, kCoolixBits, 2); // 2 repeats.
|
||||
EXPECT_EQ(
|
||||
"m4480s4480"
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
@@ -97,7 +102,8 @@ TEST(TestSendCoolix, SendWithRepeats) {
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
"m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560"
|
||||
"m560s560m560s1680m560s560m560s1680m560s560m560s1680m560s560m560s1680"
|
||||
"m560s5040", irsend.outputStr());
|
||||
"m560s5040",
|
||||
irsend.outputStr());
|
||||
}
|
||||
|
||||
// Test sending an atypical data size.
|
||||
@@ -111,7 +117,8 @@ TEST(TestSendCoolix, SendUnusualSize) {
|
||||
"m4480s4480"
|
||||
"m560s560m560s560m560s560m560s560m560s560m560s560m560s560m560s560"
|
||||
"m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680m560s1680"
|
||||
"m560s5040", irsend.outputStr());
|
||||
"m560s5040",
|
||||
irsend.outputStr());
|
||||
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0x1234567890ABCDEF, 64);
|
||||
@@ -133,12 +140,13 @@ TEST(TestSendCoolix, SendUnusualSize) {
|
||||
"m560s560m560s560m560s1680m560s1680m560s560m560s560m560s1680m560s560"
|
||||
"m560s1680m560s1680m560s1680m560s560m560s1680m560s1680m560s1680m560s1680"
|
||||
"m560s560m560s560m560s560m560s1680m560s560m560s560m560s560m560s560"
|
||||
"m560s5040", irsend.outputStr());
|
||||
"m560s5040",
|
||||
irsend.outputStr());
|
||||
|
||||
// Bit sizes must be a multiple of 8.
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0x0, 17);
|
||||
EXPECT_EQ("" , irsend.outputStr());
|
||||
EXPECT_EQ("", irsend.outputStr());
|
||||
}
|
||||
|
||||
// Tests for decodeCOOLIX().
|
||||
@@ -153,9 +161,9 @@ TEST(TestDecodeCoolix, NormalDecodeWithStrict) {
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0x123456);
|
||||
irsend.makeDecodeResult();
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
EXPECT_EQ(COOLIX_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kCoolixBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x123456, irsend.capture.value);
|
||||
EXPECT_EQ(0x0, irsend.capture.address);
|
||||
EXPECT_EQ(0x0, irsend.capture.command);
|
||||
@@ -165,9 +173,9 @@ TEST(TestDecodeCoolix, NormalDecodeWithStrict) {
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0x0);
|
||||
irsend.makeDecodeResult();
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
EXPECT_EQ(COOLIX_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kCoolixBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x0, irsend.capture.value);
|
||||
EXPECT_EQ(0x0, irsend.capture.address);
|
||||
EXPECT_EQ(0x0, irsend.capture.command);
|
||||
@@ -177,9 +185,9 @@ TEST(TestDecodeCoolix, NormalDecodeWithStrict) {
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0xFFFFFF);
|
||||
irsend.makeDecodeResult();
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
EXPECT_EQ(COOLIX_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kCoolixBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0xFFFFFF, irsend.capture.value);
|
||||
EXPECT_EQ(0x0, irsend.capture.address);
|
||||
EXPECT_EQ(0x0, irsend.capture.command);
|
||||
@@ -194,24 +202,24 @@ TEST(TestDecodeCoolix, NormalDecodeWithRepeatAndStrict) {
|
||||
|
||||
// Normal Coolix 16-bit message with 2 repeats.
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0x123456, COOLIX_BITS, 2);
|
||||
irsend.sendCOOLIX(0x123456, kCoolixBits, 2);
|
||||
irsend.makeDecodeResult();
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
EXPECT_EQ(COOLIX_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kCoolixBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x123456, irsend.capture.value);
|
||||
EXPECT_FALSE(irsend.capture.repeat);
|
||||
|
||||
irsend.makeDecodeResult(4 * COOLIX_BITS + 4);
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
irsend.makeDecodeResult(4 * kCoolixBits + 4);
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
EXPECT_EQ(COOLIX_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kCoolixBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x123456, irsend.capture.value);
|
||||
|
||||
irsend.makeDecodeResult(2 * (4 * COOLIX_BITS + 4));
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
irsend.makeDecodeResult(2 * (4 * kCoolixBits + 4));
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
EXPECT_EQ(COOLIX_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kCoolixBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x123456, irsend.capture.value);
|
||||
}
|
||||
|
||||
@@ -225,7 +233,7 @@ TEST(TestDecodeCoolix, DecodeWithNonStrictSizes) {
|
||||
irsend.sendCOOLIX(0x12, 8); // Illegal value Coolix 8-bit message.
|
||||
irsend.makeDecodeResult();
|
||||
// Should fail with strict on.
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
// Should pass if strict off.
|
||||
ASSERT_TRUE(irrecv.decodeCOOLIX(&irsend.capture, 8, false));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
@@ -236,7 +244,7 @@ TEST(TestDecodeCoolix, DecodeWithNonStrictSizes) {
|
||||
irsend.sendCOOLIX(0x12345678, 32); // Illegal value Coolix 32-bit message.
|
||||
irsend.makeDecodeResult();
|
||||
// Shouldn't pass with strict when we ask for less bits than we got.
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, true));
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, true));
|
||||
|
||||
irsend.makeDecodeResult();
|
||||
// Should fail with strict when we ask for the wrong bit size.
|
||||
@@ -249,7 +257,7 @@ TEST(TestDecodeCoolix, DecodeWithNonStrictSizes) {
|
||||
|
||||
// Decode should fail if asked to decode non-multiples of 8 bits.
|
||||
irsend.reset();
|
||||
irsend.sendCOOLIX(0x123456, COOLIX_BITS, 2);
|
||||
irsend.sendCOOLIX(0x123456, kCoolixBits, 2);
|
||||
irsend.makeDecodeResult();
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture, 9, false));
|
||||
}
|
||||
@@ -279,12 +287,207 @@ TEST(TestDecodeCoolix, FailToDecodeNonCoolixExample) {
|
||||
|
||||
irsend.reset();
|
||||
// Modified a few entries to unexpected values, based on previous test case.
|
||||
uint16_t gc_test[39] = {38000, 1, 1, 322, 162, 20, 61, 20, 61, 20, 20, 20, 20,
|
||||
20, 20, 20, 127, 20, 61, 9, 20, 20, 61, 20, 20, 20,
|
||||
61, 20, 61, 20, 61, 20, 20, 20, 20, 20, 20, 20, 884};
|
||||
uint16_t gc_test[39] = {38000, 1, 1, 322, 162, 20, 61, 20, 61, 20,
|
||||
20, 20, 20, 20, 20, 20, 127, 20, 61, 9,
|
||||
20, 20, 61, 20, 20, 20, 61, 20, 61, 20,
|
||||
61, 20, 20, 20, 20, 20, 20, 20, 884};
|
||||
irsend.sendGC(gc_test, 39);
|
||||
irsend.makeDecodeResult();
|
||||
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture));
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture, COOLIX_BITS, false));
|
||||
ASSERT_FALSE(irrecv.decodeCOOLIX(&irsend.capture, kCoolixBits, false));
|
||||
}
|
||||
|
||||
// Tests for the IRCoolixAC class.
|
||||
|
||||
TEST(TestCoolixACClass, SetAndGetRaw) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
ircoolix.setRaw(kCoolixOff);
|
||||
EXPECT_EQ(kCoolixOff, ircoolix.getRaw());
|
||||
ircoolix.setRaw(kCoolixDefaultState);
|
||||
EXPECT_EQ(kCoolixDefaultState, ircoolix.getRaw());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, SetAndGetTemp) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
ircoolix.setTemp(25);
|
||||
EXPECT_EQ(25, ircoolix.getTemp());
|
||||
ircoolix.setTemp(kCoolixTempMin);
|
||||
EXPECT_EQ(kCoolixTempMin, ircoolix.getTemp());
|
||||
ircoolix.setTemp(kCoolixTempMax);
|
||||
EXPECT_EQ(kCoolixTempMax, ircoolix.getTemp());
|
||||
ircoolix.setTemp(kCoolixTempMin - 1);
|
||||
EXPECT_EQ(kCoolixTempMin, ircoolix.getTemp());
|
||||
ircoolix.setTemp(kCoolixTempMax + 1);
|
||||
EXPECT_EQ(kCoolixTempMax, ircoolix.getTemp());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, SetAndGetMode) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
ircoolix.setMode(kCoolixHeat);
|
||||
EXPECT_EQ(kCoolixHeat, ircoolix.getMode());
|
||||
ircoolix.setMode(kCoolixCool);
|
||||
EXPECT_EQ(kCoolixCool, ircoolix.getMode());
|
||||
ircoolix.setMode(kCoolixDry);
|
||||
EXPECT_EQ(kCoolixDry, ircoolix.getMode());
|
||||
ircoolix.setMode(kCoolixAuto);
|
||||
EXPECT_EQ(kCoolixAuto, ircoolix.getMode());
|
||||
ircoolix.setMode(kCoolixFan);
|
||||
EXPECT_EQ(kCoolixFan, ircoolix.getMode());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, SetAndGetFan) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
ircoolix.setFan(kCoolixFanMax);
|
||||
EXPECT_EQ(kCoolixFanMax, ircoolix.getFan());
|
||||
ircoolix.setFan(kCoolixFanMin);
|
||||
EXPECT_EQ(kCoolixFanMin, ircoolix.getFan());
|
||||
ircoolix.setFan(kCoolixFanZoneFollow);
|
||||
EXPECT_EQ(kCoolixFanZoneFollow, ircoolix.getFan());
|
||||
ircoolix.setFan(kCoolixFanAuto);
|
||||
EXPECT_EQ(kCoolixFanAuto, ircoolix.getFan());
|
||||
ircoolix.setFan(kCoolixFanMax);
|
||||
EXPECT_EQ(kCoolixFanMax, ircoolix.getFan());
|
||||
ASSERT_NE(3, kCoolixFanAuto);
|
||||
// Now try some unexpected value.
|
||||
ircoolix.setFan(3);
|
||||
EXPECT_EQ(kCoolixFanAuto, ircoolix.getFan());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, SetGetClearSensorTempAndZoneFollow) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
ircoolix.setRaw(kCoolixDefaultState);
|
||||
EXPECT_FALSE(ircoolix.getZoneFollow());
|
||||
EXPECT_LT(kCoolixSensorTempMax, ircoolix.getSensorTemp());
|
||||
|
||||
ircoolix.setSensorTemp(25);
|
||||
EXPECT_TRUE(ircoolix.getZoneFollow());
|
||||
EXPECT_EQ(25, ircoolix.getSensorTemp());
|
||||
|
||||
// Lower bounds
|
||||
ircoolix.setSensorTemp(kCoolixSensorTempMin);
|
||||
EXPECT_TRUE(ircoolix.getZoneFollow());
|
||||
EXPECT_EQ(kCoolixSensorTempMin, ircoolix.getSensorTemp());
|
||||
ircoolix.setSensorTemp(kCoolixSensorTempMin - 1);
|
||||
EXPECT_TRUE(ircoolix.getZoneFollow());
|
||||
EXPECT_EQ(kCoolixSensorTempMin, ircoolix.getSensorTemp());
|
||||
// Upper bounds
|
||||
ircoolix.setSensorTemp(kCoolixSensorTempMax);
|
||||
EXPECT_TRUE(ircoolix.getZoneFollow());
|
||||
EXPECT_EQ(kCoolixSensorTempMax, ircoolix.getSensorTemp());
|
||||
ircoolix.setSensorTemp(kCoolixSensorTempMax + 1);
|
||||
EXPECT_TRUE(ircoolix.getZoneFollow());
|
||||
EXPECT_EQ(kCoolixSensorTempMax, ircoolix.getSensorTemp());
|
||||
// Clearing
|
||||
ircoolix.clearSensorTemp();
|
||||
EXPECT_FALSE(ircoolix.getZoneFollow());
|
||||
EXPECT_LT(kCoolixSensorTempMax, ircoolix.getSensorTemp());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, SpecialModesAndReset) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
ASSERT_NE(kCoolixSwing, ircoolix.getRaw());
|
||||
ircoolix.setSwing();
|
||||
ASSERT_EQ(kCoolixSwing, ircoolix.getRaw());
|
||||
ircoolix.setTurbo();
|
||||
ASSERT_EQ(kCoolixTurbo, ircoolix.getRaw());
|
||||
ircoolix.setSleep();
|
||||
ASSERT_EQ(kCoolixSleep, ircoolix.getRaw());
|
||||
ircoolix.setLed();
|
||||
ASSERT_EQ(kCoolixLed, ircoolix.getRaw());
|
||||
ircoolix.setClean();
|
||||
ASSERT_EQ(kCoolixClean, ircoolix.getRaw());
|
||||
ircoolix.stateReset();
|
||||
ASSERT_NE(kCoolixClean, ircoolix.getRaw());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, HumanReadable) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
// Initial starting point.
|
||||
EXPECT_EQ(
|
||||
"Power: On, Fan: 5 (AUTO), Mode: 2 (AUTO), Temp: 25C, "
|
||||
"Zone Follow: Off, Sensor Temp: Ignored",
|
||||
ircoolix.toString());
|
||||
|
||||
ircoolix.setSensorTemp(24);
|
||||
ircoolix.setTemp(22);
|
||||
ircoolix.setMode(kCoolixCool);
|
||||
ircoolix.setFan(kCoolixFanMin);
|
||||
EXPECT_EQ(
|
||||
"Power: On, Fan: 4 (MIN), Mode: 0 (COOL), Temp: 22C, "
|
||||
"Zone Follow: On, Sensor Temp: 24C",
|
||||
ircoolix.toString());
|
||||
ircoolix.setSwing();
|
||||
EXPECT_EQ("Power: On, Fan: 3 (UNKNOWN), Swing: Toggle", ircoolix.toString());
|
||||
ircoolix.setPower(false);
|
||||
EXPECT_EQ("Power: Off", ircoolix.toString());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, KnownExamples) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
ircoolix.setRaw(0b101100101011111111100100);
|
||||
EXPECT_EQ(
|
||||
"Power: On, Fan: 5 (AUTO), Mode: 4 (FAN), Zone Follow: Off, "
|
||||
"Sensor Temp: Ignored",
|
||||
ircoolix.toString());
|
||||
ircoolix.setRaw(0b101100101001111100000000);
|
||||
EXPECT_EQ(
|
||||
"Power: On, Fan: 4 (MIN), Mode: 0 (COOL), Temp: 17C, "
|
||||
"Zone Follow: Off, Sensor Temp: Ignored",
|
||||
ircoolix.toString());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, Issue579FanAuto0) {
|
||||
IRCoolixAC ircoolix(0);
|
||||
|
||||
ircoolix.setRaw(0xB21F28);
|
||||
EXPECT_EQ(
|
||||
"Power: On, Fan: 0 (AUTO0), Mode: 2 (AUTO), Temp: 20C, "
|
||||
"Zone Follow: Off, Sensor Temp: Ignored",
|
||||
ircoolix.toString());
|
||||
}
|
||||
|
||||
TEST(TestCoolixACClass, RealCaptureExample) {
|
||||
IRsendTest irsend(0);
|
||||
IRrecv irrecv(0);
|
||||
|
||||
// From Issue #579
|
||||
uint16_t powerOffRawData[199] = {
|
||||
4444, 4434, 590, 1578, 698, 446, 590, 1578, 622, 1596, 622, 500,
|
||||
644, 476, 644, 1548, 588, 532, 594, 530, 612, 1578, 590, 532,
|
||||
588, 534, 672, 1518, 594, 1598, 590, 510, 612, 1580, 644, 480,
|
||||
612, 1578, 644, 1548, 644, 1548, 594, 1598, 642, 506, 644, 1550,
|
||||
644, 1548, 594, 1600, 644, 478, 644, 478, 642, 480, 644, 478,
|
||||
642, 1548, 594, 530, 590, 532, 614, 1578, 644, 1548, 594, 1600,
|
||||
588, 534, 566, 556, 588, 530, 590, 532, 586, 514, 612, 532,
|
||||
588, 532, 590, 534, 588, 1578, 642, 1576, 642, 1550, 588, 1602,
|
||||
588, 1580, 642, 4712, 4546, 4406, 588, 1606, 642, 478, 644, 1550,
|
||||
590, 1604, 588, 534, 586, 532, 586, 1582, 642, 480, 642, 480,
|
||||
668, 1550, 642, 480, 642, 478, 642, 1552, 612, 1578, 586, 538,
|
||||
588, 1580, 674, 472, 590, 1602, 586, 1580, 618, 1576, 642, 1548,
|
||||
594, 530, 590, 1584, 608, 1578, 644, 1550, 642, 480, 642, 478,
|
||||
642, 480, 642, 480, 642, 1550, 590, 530, 592, 528, 592, 1602,
|
||||
642, 1548, 592, 1604, 586, 584, 642, 480, 640, 480, 640, 480,
|
||||
642, 480, 642, 480, 642, 480, 642, 480, 642, 1552, 590, 1604,
|
||||
588, 1578, 642, 1552, 640, 1550, 592}; // COOLIX B27BE0
|
||||
|
||||
irsend.begin();
|
||||
|
||||
irsend.reset();
|
||||
|
||||
irsend.sendRaw(powerOffRawData, 199, 38000);
|
||||
irsend.makeDecodeResult();
|
||||
ASSERT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(COOLIX, irsend.capture.decode_type);
|
||||
EXPECT_EQ(kCoolixBits, irsend.capture.bits);
|
||||
EXPECT_EQ(kCoolixOff, irsend.capture.value);
|
||||
EXPECT_EQ(0x0, irsend.capture.address);
|
||||
EXPECT_EQ(0x0, irsend.capture.command);
|
||||
}
|
||||
Reference in new issue
Block a user