diff --git a/IRSend-RAW-Encoding.md b/IRSend-RAW-Encoding.md new file mode 100644 index 00000000..e6a6a750 --- /dev/null +++ b/IRSend-RAW-Encoding.md @@ -0,0 +1,86 @@ +[`IRSend`](#irsend) `raw,,,,,,,` + +Where + +`` = carrier freq (default 0, 38kHz)
+`` = header mark (ms)
+`` = header space (ms)
+`` = bit mark (ms)
+`` = zero space (ms)
+`` = one space (ms)
+`` = bit stream data (stream of ones and zeroes) + +This command makes use of the output of the raw IR decoder from [ToniA/Raw-IR-decoder-for-Arduino](https://github.com/ToniA/Raw-IR-decoder-for-Arduino) + +## Examples + +### _rawirdecode_ output: + + Number of symbols: 75 + Symbols: + Hh010101101000111011001110000000001100110000000001100000000000000010001100 + Bytes: + 00: 0101|0110 | 6A | 01101010 + 01: 1000|1110 | 71 | 01110001 + 02: 1100|1110 | 73 | 01110011 + 03: 0000|0000 | 00 | 00000000 + 04: 1100|1100 | 33 | 00110011 + 05: 0000|0001 | 80 | 10000000 + 06: 1000|0000 | 01 | 00000001 + 07: 0000|0000 | 00 | 00000000 + 08: 1000|1100 | 31 | 00110001 + 6A,71,73,00,33,80,01,00,31 + Timings (in us): + PAUSE SPACE: 0 + HEADER MARK: 8620 + HEADER SPACE: 4260 + BIT MARK: 544 + ZERO SPACE: 411 + ONE SPACE: 1496 + Decoding known protocols... + Unknown protocol + Bytecount: 9 + +Corresponding command: + + IRSend raw,0,8620,4260,544,411,1496,010101101000111011001110000000001100110000000001100000000000000010001100 + +### Gree air conditioner Power On + +``` +{8956, 4560, 546, 1710, 588, 616, 584, 618, 584, 1712, 586, 1712, 588, 614, 586, 614, 586, 618, 586, 1706, 590, 616 , 586, 1708, 590, 616, 588, 610, 590, 612, 590, 612, 590, 618, 584, 618, 584, 616, 586, 614, 588, 612, 590, 612, 590, 1712, 586 , 616, 588, 612, 590, 614, 588, 614, 586, 618, 586, 616, 586, 1710, 588, 614, 586, 1708, 590, 610, 592, 612, 590, 1708, 588, 614 , 588, 20084, 548, 612, 590, 614, 588, 614, 588, 616, 586, 654, 546, 616, 586, 616, 586, 614, 588, 612, 588, 610, 592, 612, 590 , 612, 590, 614, 586, 1712, 586, 616, 586, 612, 588, 614, 588, 614, 586, 616, 586, 612, 590, 614, 588, 610, 590, 616, 586, 614 , 588, 612, 590, 612, 590, 614, 588, 614, 588, 614, 588, 1708, 590, 612, 590, 1708, 590} +``` + +Arrange the data into pairs: + +| MARK | SPACE | BIT | +|------|-------|-----| +| 8956 | 4560 | header +| 546 | 1710 | 1 +| 588 | 616 | 0 +| 584 | 618 | 0 +| 584 | 1712 | 1 +| 586 | 1712 | 1 +| 588 | 614 | 0 +| 586 | 614 | 0 +| ... | +| 590 | 612 | 0 +| 590 | 614 | 0 +| 588 | 614 | 0 +| 588 | 614 | 0 +| 588 | 1708 | 1 +| 590 | 612 | 0 +| 590 | 1708 | 1 +| 590 | (ignore) + +The header is always the first pair, the zeroes have the shortest space duration and the ones have the longest space duration. + +* header mark is 8956 +* header space is 4560 +* bit mark, get the average, say 590 +* zero space, say 615 +* one space, say 1710 + +Corresponding command: + + IRSend raw,0,8956,4560,590,615,1710,1001100 ... 0000101 \ No newline at end of file