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
@@ -79,8 +79,8 @@ TEST(TestSendPronto, MoreDataThanNeededInBoth) {
|
||||
irsend.reset();
|
||||
|
||||
// We should handle when we are given more data than needed. (repeat seq.)
|
||||
uint16_t pronto_test[10] = {0x0000, 0x0067, 0x0001, 0x0001,
|
||||
0x0001, 0x0002, 0x0003, 0x0004, 0x5, 0x6};
|
||||
uint16_t pronto_test[10] = {0x0000, 0x0067, 0x0001, 0x0001, 0x0001,
|
||||
0x0002, 0x0003, 0x0004, 0x5, 0x6};
|
||||
irsend.sendPronto(pronto_test, 10);
|
||||
EXPECT_EQ("m25s50", irsend.outputStr()); // Only send the data required.
|
||||
irsend.sendPronto(pronto_test, 10, 1);
|
||||
@@ -110,20 +110,18 @@ TEST(TestSendPronto, NonRepeatingCode) {
|
||||
// It was an example of a poor Pronto code.
|
||||
// It turned out to be a 4 copies of a Sony 12-bit code. Who knew!?!
|
||||
uint16_t pronto_test[108] = {
|
||||
0x0000, 0x0067, 0x0034, 0x0000,
|
||||
0x0060, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0030, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0452, 0x0060, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0452, 0x0060, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0452, 0x0060, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0030, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018};
|
||||
0x0000, 0x0067, 0x0034, 0x0000, 0x0060, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0452, 0x0060, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0030, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0452, 0x0060, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0030, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0452, 0x0060, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0030,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018};
|
||||
|
||||
// Send the Pronto code without any repeats set.
|
||||
irsend.reset();
|
||||
@@ -131,7 +129,7 @@ TEST(TestSendPronto, NonRepeatingCode) {
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(SONY, irsend.capture.decode_type);
|
||||
EXPECT_EQ(SONY_12_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kSony12Bits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x10, irsend.capture.value);
|
||||
EXPECT_EQ(0x1, irsend.capture.address);
|
||||
EXPECT_EQ(0x0, irsend.capture.command);
|
||||
@@ -147,7 +145,8 @@ TEST(TestSendPronto, NonRepeatingCode) {
|
||||
"m600s600m600s600m600s600m600s27650"
|
||||
"m2400s600"
|
||||
"m600s600m600s600m600s600m600s600m600s600m600s600m600s600m1200s600"
|
||||
"m600s600m600s600m600s600m600s600", irsend.outputStr());
|
||||
"m600s600m600s600m600s600m600s600",
|
||||
irsend.outputStr());
|
||||
|
||||
// Now try repeating it.
|
||||
// As it has no repeat sequence, we shouldn't repeat it. (I think)
|
||||
@@ -156,7 +155,7 @@ TEST(TestSendPronto, NonRepeatingCode) {
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(SONY, irsend.capture.decode_type);
|
||||
EXPECT_EQ(SONY_12_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kSony12Bits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x10, irsend.capture.value);
|
||||
EXPECT_EQ(0x1, irsend.capture.address);
|
||||
EXPECT_EQ(0x0, irsend.capture.command);
|
||||
@@ -172,7 +171,8 @@ TEST(TestSendPronto, NonRepeatingCode) {
|
||||
"m600s600m600s600m600s600m600s27650"
|
||||
"m2400s600"
|
||||
"m600s600m600s600m600s600m600s600m600s600m600s600m600s600m1200s600"
|
||||
"m600s600m600s600m600s600m600s600", irsend.outputStr());
|
||||
"m600s600m600s600m600s600m600s600",
|
||||
irsend.outputStr());
|
||||
}
|
||||
|
||||
// Test sending a Pronto code that only has a repeat sequence (Sony).
|
||||
@@ -183,13 +183,12 @@ TEST(TestSendPronto, RepeatSequenceOnlyForSony) {
|
||||
|
||||
// Sony 20-bit command.
|
||||
uint16_t pronto_test[46] = {
|
||||
0x0000, 0x0067, 0x0000, 0x0015,
|
||||
0x0060, 0x0018, 0x0018, 0x0018, 0x0030, 0x0018, 0x0030, 0x0018,
|
||||
0x0030, 0x0018, 0x0018, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018, 0x0030, 0x0018,
|
||||
0x0030, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018,
|
||||
0x0000, 0x0067, 0x0000, 0x0015, 0x0060, 0x0018, 0x0018, 0x0018,
|
||||
0x0030, 0x0018, 0x0030, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018,
|
||||
0x0030, 0x0018, 0x0018, 0x0018, 0x0018, 0x0018, 0x0030, 0x0018,
|
||||
0x0018, 0x03f6};
|
||||
0x0018, 0x0018, 0x0030, 0x0018, 0x0030, 0x0018, 0x0030, 0x0018,
|
||||
0x0018, 0x0018, 0x0018, 0x0018, 0x0030, 0x0018, 0x0018, 0x0018,
|
||||
0x0018, 0x0018, 0x0030, 0x0018, 0x0018, 0x03f6};
|
||||
|
||||
// Send the Pronto code without any repeats set.
|
||||
irsend.reset();
|
||||
@@ -197,7 +196,7 @@ TEST(TestSendPronto, RepeatSequenceOnlyForSony) {
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(SONY, irsend.capture.decode_type);
|
||||
EXPECT_EQ(SONY_20_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kSony20Bits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x74B92, irsend.capture.value);
|
||||
EXPECT_EQ(0x1A, irsend.capture.address);
|
||||
EXPECT_EQ(0x24AE, irsend.capture.command);
|
||||
@@ -205,15 +204,16 @@ TEST(TestSendPronto, RepeatSequenceOnlyForSony) {
|
||||
"m2400s600"
|
||||
"m600s600m1200s600m1200s600m1200s600m600s600m1200s600m600s600m600s600"
|
||||
"m1200s600m600s600m1200s600m1200s600m1200s600m600s600m600s600m1200s600"
|
||||
"m600s600m600s600m1200s600m600s25350", irsend.outputStr());
|
||||
"m600s600m600s600m1200s600m600s25350",
|
||||
irsend.outputStr());
|
||||
|
||||
// Send the Pronto code with 2 repeats.
|
||||
irsend.reset();
|
||||
irsend.sendPronto(pronto_test, 46, SONY_MIN_REPEAT);
|
||||
irsend.sendPronto(pronto_test, 46, kSonyMinRepeat);
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(SONY, irsend.capture.decode_type);
|
||||
EXPECT_EQ(SONY_20_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kSony20Bits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x74B92, irsend.capture.value);
|
||||
EXPECT_EQ(0x1A, irsend.capture.address);
|
||||
EXPECT_EQ(0x24AE, irsend.capture.command);
|
||||
@@ -229,7 +229,8 @@ TEST(TestSendPronto, RepeatSequenceOnlyForSony) {
|
||||
"m2400s600"
|
||||
"m600s600m1200s600m1200s600m1200s600m600s600m1200s600m600s600m600s600"
|
||||
"m1200s600m600s600m1200s600m1200s600m1200s600m600s600m600s600m1200s600"
|
||||
"m600s600m600s600m1200s600m600s25350", irsend.outputStr());
|
||||
"m600s600m600s600m1200s600m600s25350",
|
||||
irsend.outputStr());
|
||||
}
|
||||
|
||||
// Test sending a Pronto code that only has a repeat sequence (Panasonic).
|
||||
@@ -240,20 +241,18 @@ TEST(TestSendPronto, RepeatSequenceOnlyForPanasonic) {
|
||||
|
||||
// Panasonic Plasma TV Descrete code (Power On).
|
||||
uint16_t pronto_test[104] = {
|
||||
0x0000, 0x0071, 0x0000, 0x0032,
|
||||
0x0080, 0x003F, 0x0010, 0x0010, 0x0010, 0x0030, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0030, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0030, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0030, 0x0010, 0x0030,
|
||||
0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0030, 0x0010, 0x0030,
|
||||
0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0010,
|
||||
0x0010, 0x0030, 0x0010, 0x0A98};
|
||||
0x0000, 0x0071, 0x0000, 0x0032, 0x0080, 0x003F, 0x0010, 0x0010, 0x0010,
|
||||
0x0030, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0030, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0030,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010,
|
||||
0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0030, 0x0010,
|
||||
0x0030, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0010, 0x0030,
|
||||
0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0030, 0x0010, 0x0030, 0x0010,
|
||||
0x0010, 0x0010, 0x0030, 0x0010, 0x0A98};
|
||||
|
||||
// Send the Pronto code without any repeats set.
|
||||
irsend.reset();
|
||||
@@ -261,7 +260,7 @@ TEST(TestSendPronto, RepeatSequenceOnlyForPanasonic) {
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(PANASONIC, irsend.capture.decode_type);
|
||||
EXPECT_EQ(PANASONIC_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kPanasonicBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x400401007C7D, irsend.capture.value);
|
||||
EXPECT_EQ(0x4004, irsend.capture.address);
|
||||
EXPECT_EQ(0x1007C7D, irsend.capture.command);
|
||||
@@ -273,10 +272,10 @@ TEST(TestSendPronto, RepeatSequenceOnlyForPanasonic) {
|
||||
"m432s432m432s432m432s432m432s432m432s432m432s432m432s432m432s432"
|
||||
"m432s432m432s1296m432s1296m432s1296m432s1296m432s1296m432s432m432s432"
|
||||
"m432s432m432s1296m432s1296m432s1296m432s1296m432s1296m432s432m432s1296"
|
||||
"m432s73224", irsend.outputStr());
|
||||
"m432s73224",
|
||||
irsend.outputStr());
|
||||
}
|
||||
|
||||
|
||||
// Test sending a Pronto code that has a normal & arepeat sequence (NEC).
|
||||
TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
IRsendTest irsend(4);
|
||||
@@ -285,16 +284,14 @@ TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
|
||||
// NEC 32 bit power on command.
|
||||
uint16_t pronto_test[76] = {
|
||||
0x0000, 0x006D, 0x0022, 0x0002,
|
||||
0x0156, 0x00AB, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015,
|
||||
0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0015, 0x0015, 0x0015,
|
||||
0x0015, 0x0015, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0040,
|
||||
0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0040, 0x0015, 0x0040,
|
||||
0x0015, 0x0040, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015,
|
||||
0x0015, 0x0040, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015,
|
||||
0x0015, 0x0015, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0040,
|
||||
0x0015, 0x0015, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0040,
|
||||
0x0015, 0x0040, 0x0015, 0x05FD,
|
||||
0x0000, 0x006D, 0x0022, 0x0002, 0x0156, 0x00AB, 0x0015, 0x0015, 0x0015,
|
||||
0x0015, 0x0015, 0x0015, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0015,
|
||||
0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015,
|
||||
0x0040, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0040, 0x0015, 0x0040,
|
||||
0x0015, 0x0040, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015,
|
||||
0x0040, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015, 0x0015,
|
||||
0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0015, 0x0015,
|
||||
0x0040, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x0040, 0x0015, 0x05FD,
|
||||
0x0156, 0x0055, 0x0015, 0x0E4E};
|
||||
|
||||
// Send the Pronto code without any repeats set.
|
||||
@@ -303,7 +300,7 @@ TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(NEC, irsend.capture.decode_type);
|
||||
EXPECT_EQ(NEC_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kNECBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x18E710EF, irsend.capture.value);
|
||||
EXPECT_EQ(0x18, irsend.capture.address);
|
||||
EXPECT_EQ(0x8, irsend.capture.command);
|
||||
@@ -313,7 +310,8 @@ TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
"m546s1664m546s1664m546s1664m546s546m546s546m546s1664m546s1664m546s1664"
|
||||
"m546s546m546s546m546s546m546s1664m546s546m546s546m546s546m546s546"
|
||||
"m546s1664m546s1664m546s1664m546s546m546s1664m546s1664m546s1664m546s1664"
|
||||
"m546s39858", irsend.outputStr());
|
||||
"m546s39858",
|
||||
irsend.outputStr());
|
||||
|
||||
// Send it again with a single repeat.
|
||||
irsend.reset();
|
||||
@@ -321,7 +319,7 @@ TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(NEC, irsend.capture.decode_type);
|
||||
EXPECT_EQ(NEC_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kNECBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x18E710EF, irsend.capture.value);
|
||||
EXPECT_EQ(0x18, irsend.capture.address);
|
||||
EXPECT_EQ(0x8, irsend.capture.command);
|
||||
@@ -332,7 +330,8 @@ TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
"m546s546m546s546m546s546m546s1664m546s546m546s546m546s546m546s546"
|
||||
"m546s1664m546s1664m546s1664m546s546m546s1664m546s1664m546s1664m546s1664"
|
||||
"m546s39858"
|
||||
"m8892s2210m546s95212", irsend.outputStr());
|
||||
"m8892s2210m546s95212",
|
||||
irsend.outputStr());
|
||||
|
||||
// Send it again with a two repeats.
|
||||
irsend.reset();
|
||||
@@ -340,7 +339,7 @@ TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
irsend.makeDecodeResult();
|
||||
EXPECT_TRUE(irrecv.decode(&irsend.capture));
|
||||
EXPECT_EQ(NEC, irsend.capture.decode_type);
|
||||
EXPECT_EQ(NEC_BITS, irsend.capture.bits);
|
||||
EXPECT_EQ(kNECBits, irsend.capture.bits);
|
||||
EXPECT_EQ(0x18E710EF, irsend.capture.value);
|
||||
EXPECT_EQ(0x18, irsend.capture.address);
|
||||
EXPECT_EQ(0x8, irsend.capture.command);
|
||||
@@ -352,5 +351,6 @@ TEST(TestSendPronto, NormalPlusRepeatSequence) {
|
||||
"m546s1664m546s1664m546s1664m546s546m546s1664m546s1664m546s1664m546s1664"
|
||||
"m546s39858"
|
||||
"m8892s2210m546s95212"
|
||||
"m8892s2210m546s95212", irsend.outputStr());
|
||||
"m8892s2210m546s95212",
|
||||
irsend.outputStr());
|
||||
}
|
||||
Reference in new issue
Block a user