Mitsubishi Heavy Industries SRKxxZMP-S (SRK25ZMP-S, SRK35ZMP-S, SRK45ZMP-S) reverse engineered
Posted: Fri May 11, 2018 11:37 am
Hi all,
happy to share that I successfully reverse engineered the protocol of the Mitsubishi ZMP AC series (product names: SRK25ZMP-S, SRK35ZMP-S, SRK45ZMP-S. Remote control part number: RKX502A001P).
I have used ESPEASY and the excellent HeatpumpIR library to put the decoded protocol to work. The code is available on GitHub: https://github.com/jeroenterheerdt/arduino-heatpumpir (my fork) and corresponding PR: https://github.com/ToniA/arduino-heatpumpir/pull/51.
The protocol is 10 bytes. Values below are in HEX.
-Byte 0: 52
-Byte 1: AE
-Byte 2: C3
-Byte 3: 26
-Byte 4: D9
-Byte 5: 0x11 | swingH | (swingV & 0b00000010) | cleanMode
-Byte 6: inverse of byte 5
-Byte 7: 0x07 | fanSpeed | (swingV & 0b00011000)
-Byte 8: inverse of byte 7
-Byte 9: 00 | operatingMode | powerMode | temperature
-Byte 10: inverse of byte 9
The full protocol is in the Excel sheet attached. Also see the comments in the Excel sheet. Thanks to AnalysIR I was able to pull this off!
happy to share that I successfully reverse engineered the protocol of the Mitsubishi ZMP AC series (product names: SRK25ZMP-S, SRK35ZMP-S, SRK45ZMP-S. Remote control part number: RKX502A001P).
I have used ESPEASY and the excellent HeatpumpIR library to put the decoded protocol to work. The code is available on GitHub: https://github.com/jeroenterheerdt/arduino-heatpumpir (my fork) and corresponding PR: https://github.com/ToniA/arduino-heatpumpir/pull/51.
The protocol is 10 bytes. Values below are in HEX.
-Byte 0: 52
-Byte 1: AE
-Byte 2: C3
-Byte 3: 26
-Byte 4: D9
-Byte 5: 0x11 | swingH | (swingV & 0b00000010) | cleanMode
-Byte 6: inverse of byte 5
-Byte 7: 0x07 | fanSpeed | (swingV & 0b00011000)
-Byte 8: inverse of byte 7
-Byte 9: 00 | operatingMode | powerMode | temperature
-Byte 10: inverse of byte 9
The full protocol is in the Excel sheet attached. Also see the comments in the Excel sheet. Thanks to AnalysIR I was able to pull this off!