Skip to content

Commit

Permalink
[veSync] MIST Model Updates
Browse files Browse the repository at this point in the history
[veSync] MIST Model Updates

Signed-off-by: dag81 <david.goodyear@gmail.com>
  • Loading branch information
dag81 committed Nov 28, 2024
1 parent e58107b commit d3abbc5
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 22 deletions.
39 changes: 20 additions & 19 deletions bundles/org.openhab.binding.vesync/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,25 +90,26 @@ Channel names in **bold** are read/write, everything else is read-only

### AirHumidifier Thing

| Channel | Type | Description | Model's Supported | Controllable Values | Unit |
|----------------------------|----------------------|---------------------------------------------------------------|------------------------------------------------------|---------------------|------|
| **enabled** | Switch | Whether the hardware device is enabled (Switched on) | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [ON, OFF] | |
| **display** | Switch | Whether the display is enabled (display is shown) | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [ON, OFF] | |
| waterLacking | Switch | Indicator whether the unit is lacking water | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | | |
| humidityHigh | Switch | Indicator for high humidity | 200S, Dual200S, 300S, 600S, OasisMist | | |
| waterTankLifted | Switch | Indicator for whether the water tank is removed | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | | |
| **stopAtHumiditySetpoint** | Switch | Whether the unit is set to stop when the set point is reached | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [ON, OFF] | |
| humidity | Number:Dimensionless | Indicator for the currently measured humidity % level | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | | |
| **mistLevel** | Number:Dimensionless | The current mist level set | 300S | [1...2] | one |
| **mistLevel** | Number:Dimensionless | The current mist level set | 200S, Dual200S, 600S, OasisMist, OasisMist1000 | [1...3] | one |
| **humidifierMode** | String | The current mode of operation | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [auto, sleep] | |
| **nightLightMode** | String | The night light mode | 200S, Dual200S, 300S | [on, dim, off] | |
| **humiditySetpoint** | Number:Dimensionless | Humidity % set point to reach | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [30...80] | |
| warmEnabled | Switch | Indicator for warm mist mode | 600S, OasisMist | | |
| **warmLevel** | Number:Dimensionless | The current warm mist level set | 600S, OasisMist | [0..3] | one |
| errorCode | Number:Dimensionless | The error code reported by the device | OasisMist1000 | | one |
| timerExpiry | DateTime | The expected expiry time of the current timer | OasisMist1000 | | |
| schedulesCount | Number:Dimensionless | The number schedules configured | OasisMist1000 | | one |
| Channel | Type | Description | Model's Supported | Controllable Values | Unit |
|----------------------------|----------------------|---------------------------------------------------------------|------------------------------------------------------|-----------------------|------|
| **enabled** | Switch | Whether the hardware device is enabled (Switched on) | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [ON, OFF] | |
| **display** | Switch | Whether the display is enabled (display is shown) | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [ON, OFF] | |
| waterLacking | Switch | Indicator whether the unit is lacking water | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | | |
| humidityHigh | Switch | Indicator for high humidity | 200S, Dual200S, 300S, 600S, OasisMist | | |
| waterTankLifted | Switch | Indicator for whether the water tank is removed | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | | |
| **stopAtHumiditySetpoint** | Switch | Whether the unit is set to stop when the set point is reached | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [ON, OFF] | |
| humidity | Number:Dimensionless | Indicator for the currently measured humidity % level | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | | |
| **mistLevel** | Number:Dimensionless | The current mist level set | 300S | [1...2] | one |
| **mistLevel** | Number:Dimensionless | The current mist level set | 200S, Dual200S, 600S, OasisMist, OasisMist1000 | [1...3] | one |
| **humidifierMode** | String | The current mode of operation | 200S, Dual200S, OasisMist (EU Model) | [auto, manual] | |
| **humidifierMode** | String | The current mode of operation | 300S, 600S, OasisMist1000, OasisMist (Non EU Models) | [auto, manual, sleep] | |
| **nightLightMode** | String | The night light mode | 200S, Dual200S, 300S, OasisMist (EU Model) | [on, dim, off] | |
| **humiditySetpoint** | Number:Dimensionless | Humidity % set point to reach | 200S, Dual200S, 300S, 600S, OasisMist, OasisMist1000 | [30...80] | |
| warmEnabled | Switch | Indicator for warm mist mode | 600S, OasisMist | | |
| **warmLevel** | Number:Dimensionless | The current warm mist level set | 600S, OasisMist | [0..3] | one |
| errorCode | Number:Dimensionless | The error code reported by the device | OasisMist1000 | | one |
| timerExpiry | DateTime | The expected expiry time of the current timer | OasisMist1000 | | |
| schedulesCount | Number:Dimensionless | The number schedules configured | OasisMist1000 | | one |

## Full Example

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ public class VeSyncDeviceAirHumidifierHandler extends VeSyncBaseDeviceHandler {
public static final String DEV_FAMILY_CLASSIC_300S = "Classic 300S";
public static final String DEV_FAMILY_DUAL_200S = "Dual 200S";
public static final String DEV_FAMILY_600S = "600S";
public static final String DEV_FAMILY_OASIS_MIST_EU = "Oasis Mist EU";
public static final String DEV_FAMILY_OASIS_MIST = "Oasis Mist";

public static final String DEV_FAMILY_OASIS_MIST_1000 = "Oasis Mist 1000";
Expand All @@ -98,16 +99,20 @@ public class VeSyncDeviceAirHumidifierHandler extends VeSyncBaseDeviceHandler {
Arrays.asList("A602S"), Collections.emptyList(), AUTO_MAN_SLEEP_MODES, 1, 3, 0, 3, true,
CLASSIC_300S_NIGHT_LIGHT_MODES);

public static final VeSyncDeviceHumidifierMetadata OASIS_MIST_EU = new VeSyncDeviceHumidifierMetadata(1,
DEV_FAMILY_OASIS_MIST_EU, Collections.emptyList(), Arrays.asList("LUH-O451S-WEU"), AUTO_MAN_MODES, 1, 3, 0,
3, false, CLASSIC_300S_NIGHT_LIGHT_MODES);

public static final VeSyncDeviceHumidifierMetadata OASIS_MIST = new VeSyncDeviceHumidifierMetadata(1,
DEV_FAMILY_OASIS_MIST, Arrays.asList("O451S"), Collections.emptyList(), AUTO_MAN_SLEEP_MODES, 1, 3, 0, 3,
true, Collections.emptyList());
DEV_FAMILY_OASIS_MIST, Arrays.asList("0601S"), Arrays.asList("LUH-O451S-WUS", "LUH-O451S-WUSR"),
AUTO_MAN_SLEEP_MODES, 1, 3, 0, 3, true, Collections.emptyList());

public static final VeSyncDeviceHumidifierMetadata OASIS_MIST_1000 = new VeSyncDeviceHumidifierMetadata(2,
DEV_FAMILY_OASIS_MIST_1000, Arrays.asList("M101S"), Collections.emptyList(), AUTO_MAN_SLEEP_MODES, 1, 3, 0,
3, false, Collections.emptyList());

public static final List<VeSyncDeviceMetadata> SUPPORTED_MODEL_FAMILIES = Arrays.asList(LV600S, CLASSIC300S,
CLASSIC200S, DUAL200S, OASIS_MIST);
CLASSIC200S, DUAL200S, OASIS_MIST, OASIS_MIST_EU);

private final Logger logger = LoggerFactory.getLogger(VeSyncDeviceAirHumidifierHandler.class);

Expand All @@ -122,6 +127,7 @@ public class VeSyncDeviceAirHumidifierHandler extends VeSyncBaseDeviceHandler {
put(DUAL200S.deviceFamilyName, DUAL200S);
put(LV600S.deviceFamilyName, LV600S);
put(OASIS_MIST.deviceFamilyName, OASIS_MIST);
put(OASIS_MIST_EU.deviceFamilyName, OASIS_MIST_EU);
put(OASIS_MIST_1000.deviceFamilyName, OASIS_MIST_1000);
}
};
Expand Down Expand Up @@ -155,6 +161,9 @@ protected String[] getChannelsToRemove() {
toRemove = new String[] { DEVICE_CHANNEL_AF_NIGHT_LIGHT, DEVICE_CHANNEL_AF_SCHEDULES_COUNT,
DEVICE_CHANNEL_AF_AUTO_OFF_CALC_TIME };
break;
case DEV_FAMILY_OASIS_MIST_EU:
toRemove = new String[] { DEVICE_CHANNEL_AF_SCHEDULES_COUNT, DEVICE_CHANNEL_AF_AUTO_OFF_CALC_TIME };
break;
}
}
return toRemove;
Expand Down

0 comments on commit d3abbc5

Please sign in to comment.