IRremoteESP8266
IRremoteESP8266 copied to clipboard
Adding night mode for Mistubishi Electric air con
Version/revision of the library used
master
Describe the bug
Missing night mode in the aircon library for the Mitsubishi144Protocol
To Reproduce
I collected the RAW outputs from pushing the button on and off. My outputs were 188-bit, but the first 44 were just repeated and didn't seem to be required, and the rest matched the 144-bit protocol
I was able to convert the codes to a binary string and I found its the 14th byte second last bit that changes:
11000100 11010011 01100100 10000000 00000000 00000100 00011000 00010000 01101100 00000010 00000000 00000000 00000000 00000000 00000000 00000000 00000000 11010011
11000100 11010011 01100100 10000000 00000000 00000100 00011000 00010000 01101100 00000000 00000000 00000000 00000000 00000000 00000010 00000000 00000000 11010011
11000100 11010011 01100100 10000000 00000000 00000100 00011000 00010000 01101100 00000010 00000000 00000000 00000000 00000000 00000000 00000000 00000000 11010011
11000100 11010011 01100100 10000000 00000000 00000100 00011000 00010000 01101100 00000000 00000000 00000000 00000000 00000000 00000010 00000000 00000000 11010011
Also, the VaneBit (byte 9) turns off too.
Expected behaviour
Be able to update that bit to enable night mode.
When night mode is enabled, then the AC unit does not produce a beeping sound when getting IR signals.
Output of raw data from [IRrecvDumpV2.ino]
11:31:26.600 -> Timestamp : 000015.608
11:31:26.600 -> Library : v2.8.6
11:31:26.600 ->
11:31:26.600 -> Protocol : UNKNOWN
Turning on AC:
Code : 0xA7C475EE (188 Bits)
uint16_t rawData[375] = {3498, 1698, 460, 1256, 460, 1256, 462, 396, 462, 398, 460, 398, 460, 1256, 462, 398, 460, 398, 460, 1256, 462, 1256, 462, 396, 460, 1256, 462, 398, 460, 396, 462, 1254, 462, 1256, 462, 396, 460, 1256, 462, 1256, 460, 398, 460, 398, 460, 1256, 462, 396, 462, 396, 460, 1256, 460, 398, 462, 396, 462, 396, 462, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 398, 458, 398, 460, 398, 462, 396, 460, 398, 460, 398, 462, 396, 462, 8988, 3452, 1702, 462, 1256, 462, 1256, 460, 396, 462, 396, 462, 396, 460, 1258, 460, 398, 462, 396, 460, 1256, 462, 1256, 460, 398, 460, 1258, 462, 398, 460, 398, 460, 1256, 460, 1256, 460, 398, 462, 1256, 462, 1256, 462, 396, 462, 398, 460, 1256, 460, 398, 460, 398, 462, 1256, 462, 398, 460, 396, 462, 398, 460, 398, 462, 398, 460, 398, 460, 398, 460, 398, 460, 396, 462, 398, 460, 398, 458, 398, 462, 398, 462, 396, 462, 396, 462, 396, 462, 398, 460, 398, 460, 398, 460, 396, 462, 1256, 462, 398, 460, 398, 462, 396, 462, 398, 460, 398, 460, 398, 460, 398, 462, 1256, 460, 400, 460, 396, 460, 398, 462, 396, 460, 398, 462, 1258, 460, 398, 460, 398, 460, 398, 460, 398, 462, 396, 460, 1256, 460, 1256, 462, 396, 462, 1256, 462, 1256, 460, 398, 462, 396, 462, 398, 462, 396, 462, 396, 462, 398, 460, 398, 462, 396, 462, 1256, 462, 398, 460, 398, 460, 398, 458, 398, 462, 396, 460, 398, 460, 398, 462, 396, 462, 398, 460, 398, 460, 396, 462, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 398, 462, 398, 460, 398, 460, 398, 462, 396, 462, 398, 460, 398, 462, 398, 460, 398, 460, 398, 460, 396, 462, 398, 460, 398, 462, 398, 460, 398, 460, 398, 460, 398, 460, 398, 462, 398, 460, 398, 460, 398, 462, 396, 462, 396, 462, 396, 460, 398, 462, 396, 462, 398, 460, 398, 462, 396, 462, 398, 462, 398, 460, 398, 462, 396, 460, 400, 460, 398, 460, 398, 462, 396, 462, 398, 460, 398, 460, 400, 458, 1256, 460, 1256, 462, 396, 462, 396, 462, 1256, 460, 400, 460, 1256, 460, 1256, 462}; // UNKNOWN A7C475EE
Enabling Night Mode:
Code : 0x5466A66E (188 Bits)
uint16_t rawData[375] = {3496, 1698, 462, 1256, 462, 1256, 462, 398, 460, 398, 460, 398, 462, 1256, 462, 396, 460, 398, 462, 1256, 460, 1256, 462, 398, 460, 1258, 460, 396, 462, 396, 462, 1256, 460, 1258, 462, 396, 462, 1256, 462, 1256, 460, 398, 462, 396, 462, 1256, 462, 398, 460, 396, 462, 1256, 462, 396, 462, 396, 460, 396, 462, 398, 458, 400, 460, 398, 462, 400, 458, 398, 460, 398, 460, 398, 462, 396, 462, 396, 462, 398, 460, 398, 460, 398, 460, 8990, 3452, 1702, 462, 1258, 460, 1256, 462, 398, 462, 396, 460, 398, 460, 1256, 460, 398, 460, 398, 462, 1256, 460, 1256, 462, 398, 460, 1256, 462, 398, 462, 396, 462, 1256, 462, 1256, 460, 398, 462, 1256, 460, 1256, 462, 398, 460, 398, 462, 1256, 458, 400, 462, 396, 462, 1256, 460, 398, 462, 398, 460, 396, 462, 396, 462, 398, 460, 398, 460, 398, 460, 396, 462, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 396, 462, 398, 458, 398, 462, 396, 460, 398, 460, 1256, 460, 398, 462, 396, 462, 398, 458, 400, 458, 398, 460, 398, 462, 396, 462, 1256, 462, 398, 460, 396, 462, 398, 460, 398, 462, 398, 460, 1256, 460, 400, 460, 398, 460, 398, 462, 396, 462, 396, 462, 1256, 462, 1256, 404, 454, 460, 1256, 462, 1256, 460, 398, 460, 396, 460, 400, 458, 398, 462, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 398, 462, 396, 460, 398, 460, 396, 462, 396, 462, 398, 460, 398, 462, 398, 460, 398, 460, 398, 460, 398, 460, 398, 460, 398, 462, 398, 458, 398, 460, 398, 460, 398, 462, 396, 460, 398, 462, 398, 460, 396, 462, 398, 460, 396, 462, 398, 462, 396, 462, 396, 462, 398, 458, 398, 462, 398, 462, 398, 460, 396, 460, 400, 460, 398, 462, 396, 462, 396, 462, 396, 462, 396, 460, 398, 460, 398, 460, 1258, 460, 398, 460, 398, 462, 396, 462, 396, 462, 396, 460, 398, 460, 398, 460, 398, 460, 398, 462, 398, 460, 396, 460, 398, 462, 398, 460, 398, 460, 396, 462, 396, 460, 398, 460, 1256, 462, 1256, 462, 396, 462, 396, 462, 1258, 460, 398, 460, 1256, 462, 1256, 462}; // UNKNOWN 5466A66E
Disabling Night Mode
Code : 0xA7C475EE (188 Bits)
uint16_t rawData[375] = {3480, 1696, 462, 1256, 462, 1256, 460, 396, 462, 396, 462, 398, 460, 1256, 462, 398, 460, 396, 462, 1256, 464, 1254, 462, 396, 460, 1256, 462, 398, 460, 396, 462, 1256, 462, 1256, 462, 396, 462, 1254, 462, 1256, 462, 398, 462, 396, 462, 1254, 462, 396, 462, 398, 460, 1256, 462, 396, 462, 398, 460, 398, 462, 396, 460, 396, 462, 398, 462, 396, 462, 396, 464, 396, 462, 396, 462, 396, 462, 396, 462, 396, 462, 396, 462, 396, 462, 8988, 3452, 1702, 464, 1254, 462, 1256, 462, 398, 462, 396, 462, 396, 462, 1256, 462, 398, 460, 398, 462, 1256, 460, 1256, 462, 396, 462, 1256, 462, 396, 460, 398, 460, 1254, 462, 1256, 460, 398, 460, 1256, 462, 1256, 462, 398, 460, 396, 464, 1256, 462, 396, 462, 396, 462, 1256, 462, 398, 460, 398, 462, 396, 462, 396, 462, 398, 462, 396, 462, 396, 462, 398, 460, 396, 462, 398, 460, 398, 462, 396, 462, 396, 462, 398, 460, 398, 462, 398, 460, 398, 460, 398, 462, 398, 460, 398, 460, 1256, 462, 398, 462, 396, 462, 396, 462, 396, 462, 396, 462, 396, 462, 396, 462, 1256, 462, 396, 462, 398, 460, 396, 462, 398, 460, 398, 460, 1256, 462, 398, 460, 398, 462, 396, 462, 396, 462, 396, 462, 1256, 462, 1256, 460, 396, 462, 1256, 460, 1256, 462, 398, 462, 398, 460, 398, 460, 398, 460, 396, 462, 396, 462, 398, 460, 396, 464, 1256, 462, 396, 462, 396, 462, 396, 462, 398, 460, 398, 462, 396, 462, 396, 462, 398, 460, 398, 462, 396, 462, 396, 462, 396, 462, 398, 462, 396, 462, 398, 460, 398, 462, 396, 462, 396, 462, 396, 462, 396, 460, 396, 462, 398, 462, 396, 462, 398, 462, 396, 460, 398, 462, 398, 460, 396, 462, 398, 462, 398, 460, 398, 460, 398, 462, 396, 462, 398, 462, 396, 462, 398, 462, 396, 460, 398, 460, 398, 462, 396, 462, 394, 462, 398, 460, 398, 462, 396, 462, 396, 462, 396, 462, 396, 460, 398, 462, 396, 460, 398, 460, 398, 460, 398, 462, 396, 462, 396, 462, 398, 462, 396, 462, 398, 460, 1256, 462, 1256, 462, 396, 462, 396, 462, 1254, 462, 398, 462, 1254, 462, 1256, 462}; // UNKNOWN A7C475EE
Turning off AC:
Code : 0x8F9336EC (188 Bits)
uint16_t rawData[375] = {3496, 1702, 402, 1314, 404, 1314, 402, 456, 402, 456, 458, 400, 404, 1314, 402, 456, 402, 454, 404, 1314, 402, 1314, 404, 456, 402, 1314, 402, 456, 402, 454, 406, 1314, 402, 1314, 404, 456, 404, 1312, 404, 1314, 402, 454, 404, 452, 406, 1314, 404, 454, 404, 456, 402, 1314, 404, 454, 404, 456, 402, 452, 406, 454, 404, 454, 404, 456, 404, 454, 404, 454, 404, 452, 406, 454, 404, 454, 404, 454, 460, 400, 404, 456, 402, 454, 460, 8990, 3450, 1704, 404, 1312, 406, 1312, 406, 456, 402, 456, 402, 456, 404, 1312, 406, 454, 460, 400, 402, 1314, 404, 1314, 404, 454, 404, 1312, 404, 454, 460, 400, 404, 1312, 404, 1314, 402, 454, 404, 1312, 406, 1314, 404, 452, 404, 456, 458, 1258, 404, 456, 402, 456, 458, 1258, 404, 456, 402, 456, 402, 454, 404, 456, 402, 456, 404, 454, 404, 454, 404, 454, 404, 454, 458, 400, 402, 456, 404, 456, 402, 454, 404, 452, 406, 454, 404, 454, 404, 456, 402, 456, 404, 454, 404, 454, 404, 454, 404, 454, 404, 454, 404, 454, 404, 454, 404, 454, 402, 456, 458, 400, 402, 1314, 402, 456, 404, 454, 404, 454, 404, 454, 404, 456, 404, 1314, 404, 456, 458, 400, 404, 456, 404, 454, 404, 456, 402, 1312, 406, 1314, 404, 456, 458, 1258, 404, 1316, 402, 456, 402, 456, 432, 426, 402, 454, 404, 456, 404, 454, 404, 456, 404, 454, 404, 1314, 458, 400, 460, 398, 404, 454, 404, 454, 404, 456, 404, 454, 458, 400, 404, 456, 402, 454, 406, 454, 458, 400, 402, 456, 402, 454, 404, 454, 404, 456, 404, 454, 404, 456, 402, 454, 460, 400, 402, 456, 402, 454, 406, 452, 404, 456, 402, 456, 402, 456, 402, 452, 406, 456, 458, 398, 404, 456, 404, 454, 458, 400, 404, 454, 404, 456, 404, 454, 458, 400, 402, 452, 406, 456, 404, 456, 402, 454, 458, 400, 402, 454, 404, 456, 402, 456, 404, 454, 404, 454, 404, 456, 402, 456, 404, 454, 404, 454, 404, 454, 404, 454, 404, 454, 404, 456, 426, 432, 402, 454, 404, 454, 460, 400, 458, 1260, 402, 1314, 404, 454, 404, 456, 402, 1312, 406, 1312, 406, 456, 402, 1312, 404}; // UNKNOWN 8F9336EC
What brand/model IR demodulator are you using?
Remote: Mitsubishi Electric SG17B 309E AirCon: MSZ-AP35VGD2 or MSZ-AP35VGD
I have followed the steps in the [Troubleshooting Guide]
No
Has this library/code previously worked as expected for you?
Yes
Other useful information
If this is not the right place to add the edit, please let me know. This is the first time suggesting a change.
At first glance of the data provided, this looks like it is a completely unsupported protocol. You need to start by following all the step here: https://github.com/crankyoldgit/IRremoteESP8266/wiki/Adding-support-for-a-new-AC-protocol
Hello, I've added it here to the ESPhome functionality: https://github.com/RubyBailey/esphome/pull/28/files