START ../src/UnitTest.cpp from Jun 22 2024 Using library version 4.4.0 Ready to receive IR signals of protocols: NEC/NEC2/Onkyo/Apple, Panasonic/Kaseikyo, Denon/Sharp, Sony, RC5, RC6, LG, JVC, Samsung, Bang & Olufsen, FAST, Bosewave, MagiQuest, Universal Pulse Distance Width, Hash at pin 2 Use ReceiveCompleteCallback Receive buffer length is 200 Send IR signals at pin 3 If you connect debug pin 5 to ground, raw data is always printed Send signal mark duration for 38kHz is 8 us, pulse narrowing correction is 3000 ns, total period is 26 us 16000 us is the (minimum) gap, after which the start of a new IR packet is assumed 20 us are subtracted from all marks and added to all spaces for decoding address=0xFFF1 command=0x76 Send NEC with 8 bit address Protocol=NEC Address=0xF1 Command=0x76 Raw-Data=0x89760EF1 32 bits LSB first Send with: IrSender.sendNEC(0xF1, 0x76, ); rawData[68]: -1049200 +8900,-445 + 600,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1650 + 600 Sum: 67800 Send NEC with 16 bit address Protocol=NEC Address=0xFFF1 Command=0x76 Raw-Data=0x8976FFF1 32 bits LSB first Send with: IrSender.sendNEC(0xFFF1, 0x76, ); rawData[68]: -1058500 +8950,-4450 + 550,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1600 + 600,- 550 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 600 Sum: 73350 Send NEC2 with 16 bit address Protocol=NEC Address=0xFFF1 Command=0x76 Raw-Data=0x8976FFF1 32 bits LSB first Send with: IrSender.sendNEC(0xFFF1, 0x76, ); rawData[68]: -1059050 +8950,-4400 + 600,-1600 + 600,- 550 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,-1600 + 650,-1600 + 600,- 550 + 600,-1600 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1600 + 600,- 550 + 600,- 550 + 600,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 600 Sum: 73300 Send Panasonic 0xB, 0x10 as 48 bit PulseDistance using ProtocolConstants Protocol=Panasonic Address=0xB Command=0x10 Raw-Data=0xA01000B0 48 bits LSB first Send with: IrSender.sendPanasonic(0xB, 0x10, ); rawData[100]: -1062700 +3450,-1700 + 450,- 450 + 450,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 500,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 500,-1250 + 450,-1250 + 450,- 450 + 450,-1250 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 400 + 500,-1250 + 450,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 500,-1250 + 450,- 400 + 500,-1250 + 450 Sum: 54150 Send Panasonic 0xB, 0x10 as 48 bit PulseDistance -LSB first Protocol=Panasonic Address=0xB Command=0x10 Raw-Data=0xA01000B0 48 bits LSB first Send with: IrSender.sendPanasonic(0xB, 0x10, ); rawData[100]: -1079300 +3450,-1650 + 500,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,-1200 + 500,-1200 + 500,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 400 + 450,- 400 + 450,- 400 + 450,- 400 + 450,- 350 + 500,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 400 + 450,-1200 + 500,- 350 + 500,-1200 + 500 Sum: 53200 -MSB first Protocol=Panasonic Address=0xB Command=0x10 Raw-Data=0xA01000B0 48 bits LSB first Send with: IrSender.sendPanasonic(0xB, 0x10, ); rawData[100]: -1074200 +3450,-1650 + 500,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,-1200 + 500,-1200 + 500,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 400 + 450,- 400 + 450,- 400 + 450,- 400 + 450,- 350 + 500,-1200 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 350 + 500,- 400 + 450,-1200 + 500,- 350 + 500,-1200 + 500 Sum: 53200 Send 72 bit PulseDistance 0x5A AFEDCBA9 87654321 LSB first Protocol=PulseDistance Raw-Data=0x5A 72 bits LSB first Send on a 8 bit platform with: uint32_t tRawData[]={0x87654321, 0xAFEDCBA9, 0x5A}; IrSender.sendPulseDistanceWidthFromArray(38, 8850, 4400, 600, 1650, 600, 550, &tRawData[0], 72, PROTOCOL_IS_LSB_FIRST, , ); rawData[148]: -1079150 +8850,-4400 + 550,-1650 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,-1650 + 600,- 550 + 600,- 550 + 600,-1650 + 600,-1650 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,-1650 + 600,- 550 + 600,-1650 + 600,- 550 + 600,-1650 + 600,- 550 + 600,- 550 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,-1650 + 600,-1650 + 600,- 550 + 600,- 550 + 600,-1650 + 600,- 550 + 600,-1650 + 600,- 550 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1650 + 600,- 550 + 600,- 550 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1650 + 550,-1650 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1650 + 600,- 550 + 600,-1700 + 550,- 550 + 600,-1650 + 600,- 550 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1650 + 600,- 550 + 600 Sum: 138350 Send 52 bit PulseDistanceWidth 0xDCBA9 87654321 LSB first Protocol=PulseDistance Raw-Data=0xDCBA9 52 bits LSB first Send on a 8 bit platform with: uint32_t tRawData[]={0x87654321, 0xDCBA9}; IrSender.sendPulseDistanceWidthFromArray(38, 300, 600, 350, 550, 650, 250, &tRawData[0], 52, PROTOCOL_IS_LSB_FIRST, , ); rawData[108]: -1116150 + 300,- 600 + 350,- 550 + 650,- 250 + 650,- 250 + 650,- 250 + 650,- 250 + 350,- 550 + 650,- 250 + 650,- 250 + 350,- 600 + 300,- 600 + 650,- 250 + 650,- 250 + 650,- 250 + 650,- 250 + 350,- 550 + 650,- 250 + 350,- 600 + 600,- 250 + 350,- 600 + 600,- 250 + 650,- 250 + 350,- 600 + 350,- 550 + 600,- 300 + 350,- 550 + 350,- 550 + 350,- 550 + 650,- 250 + 650,- 250 + 650,- 250 + 650,- 250 + 350,- 600 + 350,- 550 + 650,- 250 + 650,- 250 + 350,- 550 + 650,- 250 + 350,- 600 + 600,- 300 + 350,- 550 + 350,- 550 + 350,- 550 + 650,- 250 + 350,- 550 + 650,- 250 + 650,- 250 + 350,- 550 + 350,- 600 + 350,- 550 + 600,- 300 + 350,- 550 + 350,- 550 + 350 Sum: 48300 Send 52 bit PulseDistanceWidth 0xDCBA9 87654321 LSB first with inverse timing and data Protocol=PulseDistance Raw-Data=0xDCBA9 52 bits LSB first Send on a 8 bit platform with: uint32_t tRawData[]={0x87654321, 0xDCBA9}; IrSender.sendPulseDistanceWidthFromArray(38, 350, 550, 350, 550, 600, 300, &tRawData[0], 52, PROTOCOL_IS_LSB_FIRST, , ); rawData[108]: -1095900 + 350,- 550 + 350,- 550 + 650,- 250 + 650,- 250 + 650,- 250 + 650,- 250 + 350,- 600 + 600,- 300 + 600,- 300 + 350,- 550 + 350,- 550 + 600,- 300 + 600,- 300 + 600,- 300 + 600,- 300 + 300,- 600 + 600,- 300 + 350,- 550 + 600,- 300 + 350,- 550 + 600,- 300 + 600,- 300 + 350,- 550 + 350,- 550 + 650,- 250 + 350,- 550 + 350,- 600 + 300,- 600 + 600,- 300 + 600,- 300 + 600,- 250 + 650,- 300 + 300,- 600 + 350,- 550 + 650,- 250 + 650,- 250 + 350,- 600 + 600,- 300 + 350,- 550 + 600,- 300 + 350,- 550 + 350,- 550 + 350,- 550 + 650,- 250 + 350,- 550 + 650,- 250 + 650,- 250 + 350,- 550 + 350,- 550 + 350,- 600 + 600,- 250 + 400,- 550 + 300,- 600 + 600 Sum: 48500 Send ASCII 7 bit PulseDistanceWidth LSB first Protocol=PulseDistance Raw-Data=0x76 7 bits LSB first Send on a 8 bit platform with: IrSender.sendPulseDistanceWidth(38, 5950, 500, 550, 1450, 1550, 500, 0x76, 7, PROTOCOL_IS_LSB_FIRST, , ); rawData[18]: -1092450 +5950,- 500 +1500,- 500 + 500,-1450 + 550,-1450 +1550,- 450 + 550,-1450 + 550,-1450 + 550,-1450 + 550 Sum: 20950 Send Sony12 as PulseWidth LSB first Protocol=Sony Address=0x11 Command=0x76 Raw-Data=0x8F6 12 bits LSB first Send with: IrSender.sendSony(0x11, 0x76, 2, 12); rawData[26]: -1036550 +2450,- 600 + 600,- 550 +1250,- 550 +1250,- 550 + 650,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 + 650,- 550 + 650,- 550 + 650,- 550 +1250 Sum: 21050 Send 32 bit PulseWidth 0x87654321 LSB first Protocol=PulseWidth Raw-Data=0x87654321 32 bits LSB first Send on a 8 bit platform with: IrSender.sendPulseDistanceWidth(38, 1050, 500, 650, 250, 350, 250, 0x87654321, 32, PROTOCOL_IS_LSB_FIRST, , ); rawData[66]: -1036150 +1050,- 500 + 600,- 300 + 350,- 250 + 350,- 250 + 350,- 250 + 350,- 300 + 600,- 300 + 350,- 250 + 350,- 250 + 650,- 250 + 650,- 250 + 350,- 300 + 350,- 250 + 350,- 250 + 350,- 300 + 600,- 300 + 300,- 300 + 600,- 300 + 350,- 250 + 600,- 300 + 350,- 250 + 350,- 250 + 650,- 250 + 650,- 250 + 350,- 250 + 650,- 250 + 650,- 250 + 650,- 250 + 350,- 300 + 350,- 250 + 350,- 250 + 350,- 250 + 650 Sum: 24600 Send MagiQuest 0x6BCDFF00, 0x176 as 55 bit PulseDistanceWidth MSB first Protocol=MagiQuest Address=0xFF00 Command=0x176 Raw-Data=0x6BCDFF00 56 bits MSB first Send with: IrSender.sendMagiQuest(0x6BCDFF00, 0x176, ); rawData[112]: -1065600 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 600,- 550 + 600,- 550 + 350,- 800 + 600,- 550 + 350,- 800 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 350,- 800 + 350,- 800 + 600,- 550 + 600,- 550 + 350,- 800 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 300,- 850 + 350,- 850 + 300,- 850 + 300,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 600,- 550 + 350,- 800 + 650,- 500 + 600,- 600 + 550,- 550 + 300,- 850 + 600,- 550 + 600,- 550 + 350,- 800 + 300,- 850 + 350,- 800 + 350,- 800 + 600,- 550 + 600,- 550 + 350,- 800 + 350,- 800 + 600 Sum: 63850 Send Onkyo (NEC with 16 bit command) Protocol=Onkyo Address=0xFFF1 Command=0x7776 Raw-Data=0x7776FFF1 32 bits LSB first Send with: IrSender.sendOnkyo(0xFFF1, 0x7776, ); rawData[68]: -1084150 +8950,-4400 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 550 + 600 Sum: 76750 Send Apple Protocol=Apple Address=0xF1 Command=0x76 Raw-Data=0xF17687EE 32 bits LSB first Send with: IrSender.sendApple(0xF1, 0x76, ); rawData[68]: -1058150 +8900,-4450 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1600 + 600,- 550 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 550 + 600,-1600 + 600,- 550 + 600,-1600 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600 Sum: 72200 Send Panasonic Protocol=Panasonic Address=0xFF1 Command=0x76 Raw-Data=0x9976FF10 48 bits LSB first Send with: IrSender.sendPanasonic(0xFF1, 0x76, ); rawData[100]: -1057800 +3450,-1700 + 450,- 400 + 500,-1250 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,-1300 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 400 + 500,- 400 + 450,-1250 + 450,- 450 + 450,- 400 + 450,- 400 + 450,-1300 + 450,-1250 + 450,-1300 + 450,-1250 + 500,-1250 + 450,-1250 + 500,-1250 + 450,-1300 + 450,- 400 + 450,-1250 + 450,-1300 + 450,- 400 + 450,-1250 + 450,-1300 + 450,-1250 + 500,- 400 + 450,-1250 + 450,- 450 + 450,- 400 + 450,-1250 + 450,-1300 + 450,- 400 + 450,- 400 + 500,-1250 + 450 Sum: 64400 Send Kaseikyo with 0x4711 as Vendor ID Protocol=Kaseikyo Address=0xFF1 Command=0x76 Extra=0x4711 Raw-Data=0x9A76FF13 48 bits LSB first Send with: IrSender.sendKaseikyo(0xFF1, 0x76, , 0x4711); rawData[100]: -1078000 +3450,-1700 + 450,-1250 + 450,- 450 + 450,- 400 + 450,- 450 + 450,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,-1300 + 450,-1250 + 450,-1300 + 450,- 400 + 450,- 400 + 450,- 450 + 450,-1250 + 450,- 450 + 450,-1250 + 450,-1300 + 450,- 400 + 450,- 400 + 500,-1250 + 450,- 400 + 450,- 450 + 450,- 400 + 450,-1250 + 450,-1300 + 450,-1250 + 450,-1300 + 450,-1250 + 450,-1300 + 450,-1250 + 450,-1300 + 450,- 400 + 450,-1300 + 450,-1250 + 450,- 450 + 450,-1250 + 450,-1250 + 500,-1250 + 450,- 400 + 450,- 400 + 500,-1250 + 450,- 400 + 450,-1300 + 450,-1250 + 450,- 450 + 450,- 400 + 450,-1250 + 500 Sum: 69550 Send Kaseikyo_Denon variant Protocol=Kaseikyo_Denon Address=0xFF1 Command=0x76 Raw-Data=0x9976FF10 48 bits LSB first Send with: IrSender.sendKaseikyo_Denon(0xFF1, 0x76, ); rawData[100]: -1078750 +3450,-1700 + 500,- 400 + 450,- 400 + 450,-1300 + 450,- 400 + 450,-1250 + 500,- 400 + 450,-1250 + 500,- 400 + 450,- 400 + 450,-1250 + 450,- 450 + 450,- 400 + 450,-1300 + 450,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,-1300 + 450,- 400 + 450,- 400 + 450,- 450 + 450,-1250 + 450,-1300 + 450,-1250 + 450,-1300 + 450,-1250 + 450,-1300 + 450,-1250 + 450,-1300 + 450,- 400 + 450,-1300 + 450,-1250 + 450,- 400 + 500,-1250 + 450,-1250 + 500,-1250 + 450,- 400 + 500,-1250 + 450,- 400 + 450,- 400 + 450,-1300 + 450,-1250 + 450,- 400 + 500,- 400 + 450,-1250 + 500 Sum: 67850 Send Denon Protocol=Denon Address=0x11 Command=0x76 Raw-Data=0xED1 15 bits LSB first Send with: IrSender.sendDenon(0x11, 0x76, ); rawData[32]: -1076500 + 300,-1750 + 300,- 750 + 300,- 750 + 300,- 750 + 300,-1750 + 300,- 750 + 300,-1800 + 250,-1800 + 300,- 750 + 300,-1750 + 300,-1800 + 300,-1750 + 300,- 750 + 300,- 750 + 300,- 750 + 300 Sum: 23150 Send Denon/Sharp variant Protocol=Sharp Address=0x11 Command=0x76 Raw-Data=0x4ED1 15 bits LSB first Send with: IrSender.sendSharp(0x11, 0x76, ); rawData[32]: -1018700 + 300,-1800 + 300,- 750 + 300,- 700 + 300,- 750 + 300,-1800 + 250,- 750 + 300,-1800 + 250,-1800 + 300,- 750 + 300,-1750 + 300,-1800 + 300,-1750 + 300,- 750 + 300,- 750 + 300,-1750 + 300 Sum: 24150 Send Sony/SIRCS with 7 command and 5 address bits Protocol=Sony Address=0x11 Command=0x76 Raw-Data=0x8F6 12 bits LSB first Send with: IrSender.sendSony(0x11, 0x76, 2, 12); rawData[26]: -1020900 +2450,- 550 + 650,- 550 +1250,- 550 +1250,- 550 + 650,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 + 650,- 550 + 650,- 550 + 650,- 550 +1250 Sum: 21050 Send Sony/SIRCS with 7 command and 8 address bits Protocol=Sony Address=0xF1 Command=0x76 Raw-Data=0x78F6 15 bits LSB first Send with: IrSender.sendSony(0xF1, 0x76, 2, 15); rawData[32]: -1036650 +2450,- 550 + 650,- 550 +1250,- 550 +1250,- 550 + 650,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 + 650,- 550 + 650,- 550 + 650,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250 Sum: 26450 Send Sony/SIRCS with 7 command and 13 address bits Protocol=Sony Address=0x1FF1 Command=0x76 Raw-Data=0xFF8F6 20 bits LSB first Send with: IrSender.sendSony(0x1FF1, 0x76, 2, 20); rawData[42]: -1040400 +2400,- 550 + 650,- 550 +1250,- 550 +1250,- 550 + 650,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 + 650,- 550 + 600,- 600 + 650,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250,- 550 +1250 Sum: 35400 Send Samsung 8 bit command and 8 bit address Protocol=Samsung Address=0xF1 Command=0x76 Raw-Data=0x8976F1F1 32 bits LSB first Send with: IrSender.sendSamsung(0xF1, 0x76, ); rawData[68]: -1045200 +4500,-4400 + 600,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1600 + 650,- 500 + 600,-1650 + 600,- 500 + 600,- 550 + 600,-1600 + 650,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600 Sum: 65550 Send Samsung 16 bit command and address Protocol=Samsung Address=0xFFF1 Command=0x9876 Raw-Data=0x9876FFF1 32 bits LSB first Send with: IrSender.sendSamsung(0xFFF1, 0x9876, ); rawData[68]: -1060350 +4500,-4450 + 600,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1650 + 600,-1650 + 550,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 650,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 550 + 600,- 500 + 600,-1650 + 600 Sum: 68950 Send Samsung48 16 bit command Protocol=Samsung48 Address=0xFFF1 Command=0x9876 Raw-Data=0x6798 48 bits LSB first Send with: IrSender.sendSamsung48(0xFFF1, 0x9876, ); rawData[100]: -1060250 +4500,-4450 + 600,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1600 + 600,- 550 + 600,-1650 + 600,- 500 + 600,- 550 + 600,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1700 + 550,- 550 + 600,- 500 + 600,- 550 + 600,-1650 + 600,-1600 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 500 + 600 Sum: 95800 Send RC5 Protocol=RC5 Address=0x11 Command=0x36 Raw-Data=0x1476 13 bits MSB first Send with: IrSender.sendRC5(0x11, 0x36, ); rawData[20]: -1076800 + 900,- 900 +1800,-1750 +1800,- 850 + 950,- 850 + 900,-1750 + 900,- 850 + 950,- 850 +1800,-1750 + 900,- 900 +1800 Sum: 23150 Send RC5X with 7.th MSB of command set Protocol=RC5 Address=0x11 Command=0x76 Toggle=1 Raw-Data=0xC76 13 bits MSB first Send with: IrSender.sendRC5(0x11, 0x76, ); rawData[20]: -1035650 +1800,-1700 + 950,- 850 +1800,- 850 + 950,- 850 + 900,-1750 + 950,- 850 + 900,- 850 +1800,-1750 + 950,- 850 +1800 Sum: 23100 Send RC6 Protocol=RC6 Address=0xF1 Command=0x76 Raw-Data=0xF176 20 bits MSB first Send with: IrSender.sendRC6(0xF1, 0x76, ); rawData[36]: -1033000 +2650,- 850 + 500,- 850 + 500,- 400 + 500,- 400 + 500,- 850 +1350,- 450 + 450,- 400 + 500,- 400 + 500,- 850 + 500,- 400 + 500,- 400 + 950,- 850 + 950,- 400 + 500,- 400 + 500,- 850 + 950,- 400 + 500,- 850 + 500 Sum: 23300 Send RC6A with 14 bit 0x2711 as extra Protocol=RC6A Address=0xF1 Command=0x76 Extra=0x2711 Toggle=1 Raw-Data=0xA711F176 35 bits MSB first Send with: IrSender.sendRC6A(0xF1, 0x76, , 0x2711); rawData[58]: -1032900 +2650,- 900 + 450,- 450 + 450,- 450 + 450,- 850 +1400,-1300 + 950,- 850 + 500,- 400 + 950,- 400 + 500,- 450 + 450,- 850 + 500,- 400 + 500,- 400 + 950,- 850 + 500,- 400 + 500,- 400 + 950,- 450 + 450,- 450 + 450,- 450 + 450,- 400 + 500,- 850 + 500,- 400 + 500,- 400 + 950,- 850 + 950,- 400 + 500,- 400 + 500,- 850 + 950,- 450 + 450,- 850 + 500 Sum: 36850 Send Bang&Olufsen - ENABLE_BEO_WITHOUT_FRAME_GAP is enabled - Now print raw data and try to decode the first 6 entries, which results in rawData 0x0 rawData[36]: -1033000 + 250,-2850 + 250,-2850 + 250,-15250 + 250,-2850 + 250,-9050 + 250,-6000 + 200,-5950 + 250,-6000 + 200,-2900 + 250,-5950 + 200,-6000 + 200,-9050 + 250,-2900 + 250,-9000 + 250,-6000 + 250,-5950 + 250,-2850 + 250 Sum: 105700 Protocol=Bang&Olufsen Address=0x0 Command=0x0 Raw-Data=0x0 0 bits MSB first - Remove trailing 6 entries, which is equivalent to define RECORD_GAP_MICROS < 15000, to enable successful B&O decode Protocol=Bang&Olufsen Address=0xF1 Command=0x76 Raw-Data=0xF176 16 bits MSB first Send with: IrSender.sendBang&Olufsen(0xF1, 0x76, ); rawData[38]: -15250 + 250,-2850 + 250,-9050 + 250,-6000 + 200,-5950 + 250,-6000 + 200,-2900 + 250,-5950 + 200,-6000 + 200,-9050 + 250,-2900 + 250,-9000 + 250,-6000 + 250,-5950 + 250,-2850 + 250,-9100 + 200,-5950 + 250,-2900 + 200,-12150 + 250 Sum: 115000 Send MagiQuest Protocol=MagiQuest Address=0xFFF1 Command=0x76 Raw-Data=0x6BCDFFF1 56 bits MSB first Send with: IrSender.sendMagiQuest(0x6BCDFFF1, 0x76, ); rawData[112]: -1088700 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 800 + 350,- 850 + 600,- 550 + 600,- 550 + 300,- 850 + 600,- 550 + 300,- 800 + 650,- 500 + 650,- 500 + 600,- 550 + 600,- 550 + 350,- 800 + 350,- 800 + 600,- 550 + 600,- 550 + 350,- 800 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 600,- 550 + 350,- 800 + 350,- 800 + 350,- 800 + 600,- 600 + 300,- 850 + 300,- 800 + 650,- 550 + 600,- 550 + 600,- 550 + 300,- 800 + 600,- 550 + 600,- 550 + 350,- 850 + 300,- 800 + 350,- 800 + 600,- 550 + 600,- 550 + 350,- 800 + 600,- 550 + 600,- 550 + 600 Sum: 63850 Send next protocols with IrSender.write Send JVC Protocol=JVC Address=0xF1 Command=0x76 Raw-Data=0x76F1 16 bits LSB first Send with: IrSender.sendJVC(0xF1, 0x76, ); rawData[36]: -1085250 +8400,-4150 + 550,-1550 + 550,- 500 + 550,- 500 + 550,- 500 + 550,-1550 + 550,-1550 + 550,-1550 + 550,-1550 + 550,- 500 + 550,-1550 + 550,-1550 + 550,- 500 + 550,-1550 + 550,-1550 + 550,-1550 + 550,- 500 + 550 Sum: 40400 Send LG Protocol=LG Address=0xF1 Command=0x9876 Raw-Data=0xF19876E 28 bits MSB first Send with: IrSender.sendLG(0xF1, 0x9876, ); rawData[60]: -1039450 +8950,-4150 + 550,-1550 + 500,-1550 + 500,-1550 + 550,-1550 + 500,- 550 + 500,- 550 + 500,- 550 + 500,-1550 + 550,-1550 + 500,- 550 + 500,- 550 + 500,-1550 + 550,-1550 + 500,- 550 + 500,- 550 + 500,- 550 + 500,- 500 + 550,-1550 + 500,-1550 + 550,-1550 + 500,- 550 + 500,-1550 + 550,-1550 + 500,- 550 + 500,-1550 + 550,-1550 + 500,-1550 + 550,- 500 + 550 Sum: 59400 Send Bosewave with no address and 8 command bits Protocol=BoseWave Address=0x0 Command=0x76 Raw-Data=0x8976 16 bits LSB first Send with: IrSender.sendBoseWave(0x0, 0x76, ); rawData[36]: -1056200 +1050,-1450 + 550,- 450 + 550,-1400 + 550,-1450 + 550,- 450 + 550,-1400 + 550,-1450 + 550,-1400 + 550,- 450 + 550,-1450 + 550,- 450 + 550,- 400 + 550,-1450 + 550,- 450 + 550,- 450 + 550,- 450 + 550,-1400 + 550 Sum: 26800 Send FAST Protocol=FAST Address=0x0 Command=0x76 Raw-Data=0x8976 16 bits LSB first Send with: IrSender.sendFAST(0x0, 0x76, ); rawData[36]: -1040250 +2150,-1000 + 550,- 550 + 550,-1550 + 550,-1500 + 550,- 550 + 550,-1550 + 550,-1550 + 550,-1550 + 500,- 550 + 550,-1550 + 550,- 500 + 550,- 500 + 550,-1550 + 550,- 500 + 550,- 500 + 550,- 500 + 550,-1550 + 550 Sum: 28950 Force buffer overflow by sending 280 marks and spaces Overflow Try to increase the "RAW_BUFFER_LENGTH" value of 200 in ../src/UnitTest.cpp rawData[200]: -1039500 + 200,- 500 + 250,- 550 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 550 + 200,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250,- 500 + 250 Sum: 74500 ERROR: Unknown protocol address=0xF2 command=0x87 Send NEC with 8 bit address and complete NEC frames as repeats to force decoding as NEC2 Protocol=NEC Address=0xF2 Command=0x87 Raw-Data=0x78870DF2 32 bits LSB first Send with: IrSender.sendNEC(0xF2, 0x87, ); rawData[68]: -3276750 +8950,-4400 + 600,- 550 + 600,-1600 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,-1650 + 600,- 550 + 600,-1600 + 650,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1650 + 550,- 550 + 600,- 500 + 650,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 600,- 550 + 600 Sum: 67800 Protocol=NEC2 Address=0xF2 Command=0x87 Repeat gap=65900us Raw-Data=0x78870DF2 32 bits LSB first Send with: IrSender.sendNEC2(0xF2, 0x87, ); rawData[68]: -65900 +8900,-4450 + 550,- 550 + 600,-1650 + 600,- 500 + 600,- 550 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 500 + 600,-1650 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600 Sum: 67750 Send NEC with 16 bit address Protocol=NEC Address=0xF2 Command=0x87 Raw-Data=0x78870DF2 32 bits LSB first Send with: IrSender.sendNEC(0xF2, 0x87, ); rawData[68]: -1060150 +8900,-4450 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1600 + 650,-1600 + 600,-1650 + 600,- 550 + 600,-1600 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600 Sum: 67800 Send NEC2 with 16 bit address Protocol=NEC Address=0xF2 Command=0x87 Raw-Data=0x78870DF2 32 bits LSB first Send with: IrSender.sendNEC(0xF2, 0x87, ); rawData[68]: -1058650 +8900,-4400 + 650,- 500 + 600,-1650 + 600,- 500 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 650,- 500 + 600,-1650 + 600,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 550 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600 Sum: 67750 Send Onkyo (NEC with 16 bit command) Protocol=Onkyo Address=0xF2 Command=0x8887 Raw-Data=0x888700F2 32 bits LSB first Send with: IrSender.sendOnkyo(0xF2, 0x8887, ); rawData[68]: -1059250 +8900,-4450 + 600,- 500 + 600,-1650 + 600,- 500 + 600,- 550 + 600,-1650 + 600,-1600 + 600,-1650 + 600,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 650,- 500 + 600,- 500 + 600,- 550 + 600,-1650 + 600,-1600 + 600,-1650 + 600,- 500 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 650,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,- 550 + 600,- 500 + 600,- 550 + 600,-1600 + 600 Sum: 62150 Send Apple Protocol=Apple Address=0xF2 Command=0x87 Raw-Data=0xF28787EE 32 bits LSB first Send with: IrSender.sendApple(0xF2, 0x87, ); rawData[68]: -1057650 +8900,-4400 + 600,- 550 + 600,-1650 + 600,-1600 + 600,-1650 + 600,- 550 + 600,-1600 + 650,-1600 + 600,-1650 + 600,-1650 + 600,-1600 + 650,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1600 + 650,-1600 + 600,- 550 + 600,- 500 + 600,- 550 + 600,- 500 + 600,-1650 + 600,- 550 + 600,-1600 + 600,- 550 + 600,- 500 + 600,-1650 + 600,-1650 + 600,-1650 + 600,-1600 + 650 Sum: 71100 Send Panasonic Protocol=Panasonic Address=0xF2 Command=0x87 Raw-Data=0xA8870F20 48 bits LSB first Send with: IrSender.sendPanasonic(0xF2, 0x87, ); rawData[100]: -1057750 +3450,-1700 + 500,- 400 + 450,-1250 + 500,- 400 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 400 + 500,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 450 + 450,-1250 + 450,- 400 + 500,- 400 + 450,-1250 + 450,-1300 + 450,-1250 + 500,-1250 + 450,- 400 + 450,- 450 + 450,- 400 + 450,- 450 + 450,-1250 + 450,-1300 + 450,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 450 + 450,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,-1300 + 450,- 400 + 450,-1300 + 450,- 400 + 450,-1250 + 500 Sum: 59350 Send Kaseikyo with 0x4711 as Vendor ID Protocol=Kaseikyo Address=0xF2 Command=0x87 Extra=0x4711 Raw-Data=0xAB870F23 48 bits LSB first Send with: IrSender.sendKaseikyo(0xF2, 0x87, , 0x4711); rawData[100]: -1077750 +3450,-1700 + 450,-1250 + 450,- 450 + 450,- 400 + 450,- 400 + 450,-1300 + 450,- 400 + 450,- 400 + 500,- 400 + 450,-1250 + 450,-1300 + 450,-1250 + 450,- 400 + 500,- 400 + 450,- 400 + 450,-1300 + 450,- 400 + 450,-1250 + 450,-1300 + 450,- 400 + 500,- 400 + 450,- 400 + 450,-1300 + 450,- 400 + 450,- 400 + 500,-1250 + 450,-1250 + 450,-1300 + 450,-1250 + 500,- 400 + 450,- 400 + 450,- 400 + 500,- 400 + 450,-1300 + 450,-1250 + 500,-1250 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,-1300 + 450,-1250 + 450,-1300 + 450,- 400 + 450,-1300 + 450,- 400 + 450,-1250 + 450,- 450 + 450,-1250 + 450 Sum: 66100 Send Kaseikyo_Denon variant Protocol=Kaseikyo_Denon Address=0xF2 Command=0x87 Raw-Data=0xA8870F20 48 bits LSB first Send with: IrSender.sendKaseikyo_Denon(0xF2, 0x87, ); rawData[100]: -1078550 +3450,-1750 + 450,- 400 + 450,- 400 + 500,-1250 + 450,- 400 + 450,-1300 + 450,- 400 + 450,-1250 + 450,- 450 + 450,- 400 + 450,-1300 + 450,- 400 + 450,- 400 + 450,-1300 + 450,-1250 + 450,- 450 + 450,- 400 + 450,- 400 + 500,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,-1250 + 450,- 450 + 450,- 400 + 450,-1250 + 500,-1250 + 450,-1250 + 450,-1300 + 450,- 400 + 450,- 400 + 500,- 350 + 500,- 400 + 450,-1300 + 450,-1250 + 450,-1300 + 450,- 400 + 450,- 400 + 450,- 450 + 450,- 400 + 450,-1300 + 450,- 400 + 450,- 400 + 500,- 400 + 450,-1250 + 500,- 400 + 450,-1250 + 450,- 450 + 450,-1250 + 450 Sum: 62700 Send Denon Protocol=Denon Address=0x12 Command=0x87 Raw-Data=0x10F2 15 bits LSB first Send with: IrSender.sendDenon(0x12, 0x87, ); rawData[32]: -1076250 + 300,- 750 + 300,-1750 + 300,- 750 + 300,- 750 + 300,-1750 + 300,-1800 + 300,-1750 + 300,-1800 + 250,- 750 + 300,- 750 + 300,- 750 + 300,- 750 + 300,-1750 + 300,- 750 + 300,- 750 + 300 Sum: 22100 Send Denon/Sharp variant Protocol=Sharp Address=0x12 Command=0x87 Raw-Data=0x50F2 15 bits LSB first Send with: IrSender.sendSharp(0x12, 0x87, ); rawData[32]: -1018800 + 300,- 700 + 300,-1800 + 250,- 750 + 300,- 750 + 300,-1800 + 250,-1800 + 300,-1750 + 300,-1800 + 300,- 750 + 250,- 750 + 300,- 750 + 300,- 750 + 300,-1750 + 300,- 750 + 300,-1800 + 250 Sum: 23050