diff --git a/CHANGELOG.md b/CHANGELOG.md index ba344bb..85ceec2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - do not configure it manually, always using Config UI X - required Homebridge v2.0.0 and above +## [3.3.20] - (25.09.2024) + +## Changes + +- fix ATA characteristics warning after plugin restart if device in DRY or FAN mode +- cleanup + ## [3.3.19] - (25.09.2024) ## Changes diff --git a/package.json b/package.json index 3061d94..64d6f5f 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "displayName": "MELCloud Control", "name": "homebridge-melcloud-control", - "version": "3.3.19", + "version": "3.3.20", "description": "Homebridge plugin to control Mitsubishi Air Conditioner, Heat Pump and Energy Recovery Ventilation.", "license": "MIT", "author": "grzegorz914", diff --git a/src/deviceata.js b/src/deviceata.js index 1af89ba..1db4291 100644 --- a/src/deviceata.js +++ b/src/deviceata.js @@ -286,10 +286,9 @@ class DeviceAta extends EventEmitter { this.accessory.lockPhysicalControl = prohibitSetTemperature && prohibitOperationMode && prohibitPower ? 1 : 0; this.accessory.temperatureIncrement = temperatureIncrement; - //operating mode + //operating mode 0, HEAT, DRY, COOL, 4, 5, 6, FAN, AUTO, ISEE HEAT, ISEE DRY, ISEE COOL switch (this.displayMode) { case 1: //Heater Cooler - //operating mode 0, HEAT, DRY, COOL, 4, 5, 6, FAN, AUTO, ISEE HEAT, ISEE DRY, ISEE COOL switch (operationMode) { case 1: //HEAT this.accessory.currentOperationMode = roomTemperature > setTemperature ? 1 : 2; //INACTIVE, IDLE, HEATING, COOLING @@ -786,7 +785,7 @@ class DeviceAta extends EventEmitter { validValues: this.accessory.operationModeSetPropsValidValues }) .onGet(async () => { - const value = this.accessory.targetOperationMode; //1 = HEAT, 2 = DRY 3 = COOL, 7 = FAN, 8 = AUTO + const value = this.accessory.targetOperationMode ?? 0; //1 = HEAT, 2 = DRY 3 = COOL, 7 = FAN, 8 = AUTO return value; }) .onSet(async (value) => { @@ -972,7 +971,7 @@ class DeviceAta extends EventEmitter { validValues: this.accessory.operationModeSetPropsValidValues }) .onGet(async () => { - const value = this.accessory.targetOperationMode; //1 = HEAT, 2 = DRY 3 = COOL, 7 = FAN, 8 = AUTO + const value = this.accessory.targetOperationMode ?? 0; //1 = HEAT, 2 = DRY 3 = COOL, 7 = FAN, 8 = AUTO return value; }) .onSet(async (value) => { diff --git a/src/deviceerv.js b/src/deviceerv.js index 666bf83..8a81e14 100644 --- a/src/deviceerv.js +++ b/src/deviceerv.js @@ -717,7 +717,7 @@ class DeviceErv extends EventEmitter { validValues: this.accessory.operationModeSetPropsValidValues }) .onGet(async () => { - const value = this.accessory.targetOperationMode; //LOSSNAY, BYPASS, AUTO + const value = this.accessory.targetOperationMode ?? 0; //LOSSNAY, BYPASS, AUTO return value; }) .onSet(async (value) => { @@ -877,7 +877,7 @@ class DeviceErv extends EventEmitter { validValues: this.accessory.operationModeSetPropsValidValues }) .onGet(async () => { - const value = this.accessory.targetOperationMode; //LOSSNAY, BYPASS, AUTO + const value = this.accessory.targetOperationMode ?? 0; //LOSSNAY, BYPASS, AUTO return value; }) .onSet(async (value) => { diff --git a/src/melcloudata.js b/src/melcloudata.js index d78c0f1..b7b0fa7 100644 --- a/src/melcloudata.js +++ b/src/melcloudata.js @@ -223,6 +223,8 @@ class MelCloudAta extends EventEmitter { const firmwareAppVersion = device.FirmwareAppVersion?.toString() ?? 'Undefined'; const firmwareWebVersion = device.FirmwareWebVersion; const firmwareWlanVersion = device.FirmwareWlanVersion; + const linkToMELCloudHome = device.LinkToMELCloudHome; + const linkedByUserFromMELCloudHome = device.LinkedByUserFromMELCloudHome; const mqttFlags = device.MqttFlags; const hasErrorMessages = device.HasErrorMessages; const hasZone2 = device.HasZone2; diff --git a/src/melcloudatw.js b/src/melcloudatw.js index 6045d24..55a7b8f 100644 --- a/src/melcloudatw.js +++ b/src/melcloudatw.js @@ -450,10 +450,9 @@ class MelCloudAtw extends EventEmitter { data: { DeviceID: deviceData.Device.DeviceID, EffectiveFlags: deviceData.Device.EffectiveFlags, + Power: deviceData.Device.Power, SetTemperatureZone1: deviceData.Device.SetTemperatureZone1, SetTemperatureZone2: deviceData.Device.SetTemperatureZone2, - RoomTemperatureZone1: deviceData.Device.RoomTemperatureZone1, - RoomTemperatureZone2: deviceData.Device.RoomTemperatureZone2, OperationMode: deviceData.Device.OperationMode, OperationModeZone1: deviceData.Device.OperationModeZone1, OperationModeZone2: deviceData.Device.OperationModeZone2, @@ -461,20 +460,13 @@ class MelCloudAtw extends EventEmitter { SetHeatFlowTemperatureZone2: deviceData.Device.SetHeatFlowTemperatureZone2, SetCoolFlowTemperatureZone1: deviceData.Device.SetCoolFlowTemperatureZone1, SetCoolFlowTemperatureZone2: deviceData.Device.SetCoolFlowTemperatureZone2, - TankWaterTemperature: deviceData.Device.TankWaterTemperature, SetTankWaterTemperature: deviceData.Device.SetTankWaterTemperature, ForcedHotWaterMode: deviceData.Device.ForcedHotWaterMode, - OutdoorTemperature: deviceData.Device.OutdoorTemperature, EcoHotWater: deviceData.Device.EcoHotWater, HolidayMode: deviceData.Device.HolidayMode, ProhibitZone1: deviceData.Device.ProhibitHeatingZone1, ProhibitZone2: deviceData.Device.ProhibitHeatingZone2, ProhibitHotWater: deviceData.Device.ProhibitHotWater, - IdleZone1: deviceData.Device.IdleZone1, - IdleZone2: deviceData.Device.IdleZone2, - UnitStatus: deviceData.Device.UnitStatus, - Power: deviceData.Device.Power, - Offline: deviceData.Device.Offline, HasPendingCommand: true } } diff --git a/src/melclouderv.js b/src/melclouderv.js index 52e092d..b815e82 100644 --- a/src/melclouderv.js +++ b/src/melclouderv.js @@ -382,10 +382,7 @@ class MelCloudErv extends EventEmitter { data: { DeviceID: deviceData.Device.DeviceID, EffectiveFlags: deviceData.Device.EffectiveFlags, - RoomTemperature: deviceData.Device.RoomTemperature, - SupplyTemperature: deviceData.Device.SupplyTemperature, - OutdoorTemperature: deviceData.Device.OutdoorTemperature, - NightPurgeMode: deviceData.Device.NightPurgeMode, + Power: deviceData.Device.Power, SetTemperature: deviceData.Device.SetTemperature, SetFanSpeed: deviceData.Device.SetFanSpeed, OperationMode: deviceData.Device.OperationMode, @@ -395,8 +392,7 @@ class MelCloudErv extends EventEmitter { HideRoomTemperature: deviceData.Device.HideRoomTemperature, HideSupplyTemperature: deviceData.Device.HideSupplyTemperature, HideOutdoorTemperature: deviceData.Device.HideOutdoorTemperature, - Power: deviceData.Device.Power, - Offline: deviceData.Device.Offline, + NightPurgeMode: deviceData.Device.NightPurgeMode, HasPendingCommand: true } }