From 0afef80da3e6e5dcae459cbd7ba5a838a60b973b Mon Sep 17 00:00:00 2001
From: FalsePhilosopher <108245223+FalsePhilosopher@users.noreply.github.com>
Date: Mon, 16 Jan 2023 18:38:43 -0700
Subject: [PATCH] Added protocol info
---
Infrared/ReadMe.md | 92 +++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 91 insertions(+), 1 deletion(-)
diff --git a/Infrared/ReadMe.md b/Infrared/ReadMe.md
index 8c5faaad..89dba025 100644
--- a/Infrared/ReadMe.md
+++ b/Infrared/ReadMe.md
@@ -34,6 +34,96 @@ Then, use qFlipper to transfer it to your Flipper and replace the existing one (
***Again, you may have manifest file issues if you do not compile your own or use a tested firmware above!***
+## Protocol info
+This info was gathered from the respecctive locations in the firmwares comments.
+Ie. lib/infrared/encoder_decoder/`*`/infrared_protocol_`*`.h
+Some of the info doesn't show up well so view thew raw readme or [this commit](https://github.com/flipperdevices/flipperzero-firmware/commit/75e9de12b065bd5e572b8b9232c8b9670c8e6f91).
+
+### Kaseikyo protocol description
+https://github.com/Arduino-IRremote/Arduino-IRremote/blob/master/src/ir_Kaseikyo.hpp
+* Preamble Preamble Pulse Distance/Width Pause Preamble Preamble
+* mark space Modulation up to period repeat repeat
+* mark space
+*
+* 3360 1665 48 bit ...130000 3456 1728
+` __________ _ _ _ _ _ _ _ _ _ _ _ _ _ ___________`
+` ____ __________ _ _ _ __ __ __ _ _ __ __ _ _ ________________ ___________`
+
+### NEC protocol description
+https://radioparty.ru/manuals/encyclopedia/213-ircontrol?start=1
+* Preamble Preamble Pulse Distance/Width Pause Preamble Preamble Stop
+* mark space Modulation up to period repeat repeat bit
+* mark space
+*
+* 9000 4500 32 bit + stop bit ...110000 9000 2250
+` __________ _ _ _ _ _ _ _ _ _ _ _ _ _ ___________ _`
+` ____ __________ _ _ _ __ __ __ _ _ __ __ _ _ ________________ ____________ ___`
+
+### RC5 protocol description
+https://www.mikrocontroller.net/articles/IRMP_-_english#RC5_.2B_RC5X
+* Manchester/biphase
+* Modulation
+*
+* 888/1776 - bit (x2 for toggle bit)
+*
+` __ ____ __ __ __ __ __ __ __ __`
+` __ __ ____ __ __ __ __ __ __ __ _`
+* | 1 | 1 | 0 | ... | ... |
+* s si T address (MSB) command (MSB)
+*
+* Note: manchester starts from space timing, so it have to be handled properly
+* s - start bit (always 1)
+* si - RC5: start bit (always 1), RC5X - 7-th bit of address (in our case always 0)
+* T - toggle bit, change it's value every button press
+* address - 5 bit
+* command - 6/7 bit
+
+### RC6 protocol description
+https://www.mikrocontroller.net/articles/IRMP_-_english#RC6_.2B_RC6A
+* Preamble Manchester/biphase Silence
+* mark/space Modulation
+*
+* 2666 889 444/888 - bit (x2 for toggle bit) 2666
+*
+` ________ __ __ __ __ ____ __ __ __ __ __ __ __ __`
+` _ _________ ____ __ __ ____ __ __ __ __ __ __ __ __ _______________`
+* | 1 | 0 | 0 | 0 | 0 | ... | ... | |
+* s m2 m1 m0 T address (MSB) command (MSB)
+*
+* s - start bit (always 1)
+* m0-2 - mode (000 for RC6)
+* T - toggle bit, twice longer
+* address - 8 bit
+* command - 8 bit
+
+### SAMSUNG32 protocol description
+https://www.mikrocontroller.net/articles/IRMP_-_english#SAMSUNG
+* Preamble Preamble Pulse Distance/Width Pause Preamble Preamble Bit1 Stop
+* mark space Modulation repeat repeat bit
+* mark space
+*
+* 4500 4500 32 bit + stop bit 40000/100000 4500 4500
+` __________ _ _ _ _ _ _ _ _ _ _ _ ___________ _ _`
+` _ __________ __ _ __ __ __ _ _ __ __ _ ________________ ____________ ____ ___`
+
+### Sony SIRC protocol description
+https://www.sbprojects.net/knowledge/ir/sirc.php
+http://picprojects.org.uk/
+* Preamble Preamble Pulse Width Modulation Pause Entirely repeat
+* mark space up to period message..
+*
+* 2400 600 12/15/20 bits (600,1200) ...45000 2400 600
+` __________ _ _ _ _ _ _ _ _ _ _ _ _ _ __________ _ _`
+` ____ __________ _ _ _ __ __ __ _ _ __ __ _ _ ____________________ __________ _`
+* | command | address |
+* SIRC | 7b LSB | 5b LSB |
+* SIRC15 | 7b LSB | 8b LSB |
+* SIRC20 | 7b LSB | 13b LSB |
+*
+* No way to determine either next message is repeat or not,
+* so recognize only fact message received. Sony remotes always send at least 3 messages.
+* Assume 8 last extended bits for SIRC20 are address bits.
+
-----
## Donation Information
@@ -55,4 +145,4 @@ So, here it is. All donations of *any* size are humbly appreciated.
![Flipper_Clap](https://user-images.githubusercontent.com/57457139/183561789-2e853ede-8ef7-41e8-a67c-716225177e5d.jpg) ![Flipper_OMG](https://user-images.githubusercontent.com/57457139/183561787-e21bdc1e-b316-4e67-b327-5129503d0313.jpg)
Donations will be used for hardware (and maybe caffeine) to further testing!
-![UberGuidoZ](https://cdn.discordapp.com/emojis/1000632669622767686.gif)
\ No newline at end of file
+![UberGuidoZ](https://cdn.discordapp.com/emojis/1000632669622767686.gif)