Mitsubishi MSY fixes

This commit is contained in:
Toni 2020-03-03 09:20:40 +02:00
parent 2f1e53e609
commit ebca04982e
2 changed files with 49 additions and 50 deletions

View File

@ -93,9 +93,48 @@ void MitsubishiHeatpumpIR::send(IRSender& IR, uint8_t powerModeCmd, uint8_t oper
powerMode = MITSUBISHI_AIRCON1_MODE_OFF;
}
if (_mitsubishiModel != MITSUBISHI_MSY)
if (_mitsubishiModel == MITSUBISHI_FA) // set operating model for FA
{
switch (operatingModeCmd)
{
case MODE_AUTO:
operatingMode = MITSUBISHI_AIRCON3_MODE_AUTO;
break;
case MODE_HEAT:
operatingMode = MITSUBISHI_AIRCON3_MODE_HEAT;
break;
case MODE_COOL:
operatingMode = MITSUBISHI_AIRCON3_MODE_COOL;
break;
case MODE_DRY:
operatingMode = MITSUBISHI_AIRCON3_MODE_DRY;
break;
}
}
else if (_mitsubishiModel == MITSUBISHI_MSY)
{
operatingMode = MITSUBISHI_AIRCON2_MODE_COOL;
switch (operatingModeCmd)
{
case MODE_AUTO:
operatingMode = MITSUBISHI_AIRCON2_MODE_IFEEL;
break;
case MODE_HEAT:
operatingMode = MITSUBISHI_AIRCON1_MODE_HEAT;
break;
case MODE_COOL:
operatingMode = MITSUBISHI_AIRCON2_MODE_COOL;
break;
case MODE_DRY:
operatingMode = MITSUBISHI_AIRCON1_MODE_DRY;
break;
case MODE_FAN:
operatingMode = MITSUBISHI_AIRCON2_MODE_FAN;
break;
}
}
else
{
Serial.printf("Mode=%d\n",operatingModeCmd);
switch (operatingModeCmd)
{
case MODE_AUTO:
@ -129,43 +168,6 @@ void MitsubishiHeatpumpIR::send(IRSender& IR, uint8_t powerModeCmd, uint8_t oper
break;
}
}
else if (_mitsubishiModel == MITSUBISHI_FA) // set operating model for FA
{
switch (operatingModeCmd)
{
case MODE_AUTO:
operatingMode = MITSUBISHI_AIRCON3_MODE_AUTO;
break;
case MODE_HEAT:
operatingMode = MITSUBISHI_AIRCON3_MODE_HEAT;
break;
case MODE_COOL:
operatingMode = MITSUBISHI_AIRCON3_MODE_COOL;
break;
case MODE_DRY:
operatingMode = MITSUBISHI_AIRCON3_MODE_DRY;
break;
}
}
else
{
operatingMode = MITSUBISHI_AIRCON2_MODE_COOL;
switch (operatingModeCmd)
{
case MODE_AUTO:
operatingMode = MITSUBISHI_AIRCON2_MODE_IFEEL;
break;
case MODE_COOL:
operatingMode = MITSUBISHI_AIRCON2_MODE_COOL;
break;
case MODE_DRY:
operatingMode = MITSUBISHI_AIRCON2_MODE_DRY;
break;
case MODE_FAN:
operatingMode = MITSUBISHI_AIRCON2_MODE_FAN;
break;
}
}
switch (fanSpeedCmd)
{
@ -385,5 +387,3 @@ void MitsubishiHeatpumpIR::sendMitsubishi(IRSender& IR, uint8_t powerMode, uint8
IR.mark(MITSUBISHI_AIRCON1_BIT_MARK);
IR.space(0);
}

View File

@ -28,14 +28,13 @@
#define MITSUBISHI_AIRCON2_MODE_COOL 0x18 // MSY cool mode
#define MITSUBISHI_AIRCON3_MODE_COOL 0x58 // FA cool mode
#define MITSUBISHI_AIRCON1_MODE_DRY 0x10
#define MITSUBISHI_AIRCON2_MODE_DRY 0x18 // MSY DRY mode
#define MITSUBISHI_AIRCON3_MODE_DRY 0x50 // FA dry mode
#define MITSUBISHI_AIRCON1_MODE_FAN 0x38 // EF 'FAN' mode
#define MITSUBISHI_AIRCON2_MODE_FAN 0x38 // MSY fan mode
#define MITSUBISHI_AIRCON1_MODE_ISEE 0x40 // Isee
#define MITSUBISHI_AIRCON2_MODE_IFEEL 0x00 // MSY
#define MITSUBISHI_AIRCON1_MODE_OFF 0x00 // Power FFi
#define MITSUBISHI_AIRCON1_MODE_OFF 0x00 // Power OFF
#define MITSUBISHI_AIRCON1_MODE_ON 0x20 // Power ON
// Mitsubishi fan codes