From 890ca7b055801555e99141716f3944f72115f237 Mon Sep 17 00:00:00 2001 From: "aaron.godfrey" Date: Mon, 1 Jul 2019 14:18:47 -0700 Subject: [PATCH 01/10] Adds a dryer device. --- wideq/ac.py | 14 +---- wideq/client.py | 20 ++++--- wideq/dryer.py | 145 ++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 158 insertions(+), 21 deletions(-) create mode 100644 wideq/dryer.py diff --git a/wideq/ac.py b/wideq/ac.py index a692573..280b2a9 100644 --- a/wideq/ac.py +++ b/wideq/ac.py @@ -2,7 +2,7 @@ """ import enum -from .client import Device, Monitor +from .client import Device class ACMode(enum.Enum): @@ -173,18 +173,6 @@ class ACDevice(Device): value = self._get_control('SpkVolume') return int(value) - def monitor_start(self): - """Start monitoring the device's status.""" - - mon = Monitor(self.client.session, self.device.id) - mon.start() - self.mon = mon - - def monitor_stop(self): - """Stop monitoring the device's status.""" - - self.mon.stop() - def poll(self): """Poll the device's current state. diff --git a/wideq/client.py b/wideq/client.py index 4b1be67..4b5c456 100644 --- a/wideq/client.py +++ b/wideq/client.py @@ -391,15 +391,12 @@ class Device(object): """Create a wrapper for a `DeviceInfo` object associated with a `Client`. """ - self.client = client self.device = device self.model = client.model_info(device) def _set_control(self, key, value): - """Set a device's control for `key` to `value`. - """ - + """Set a device's control for `key` to `value`.""" self.client.session.set_device_controls( self.device.id, {key: value}, @@ -410,7 +407,6 @@ class Device(object): The response is parsed as base64-encoded JSON. """ - data = self.client.session.get_device_config( self.device.id, key, @@ -418,9 +414,7 @@ class Device(object): return json.loads(base64.b64decode(data).decode('utf8')) def _get_control(self, key): - """Look up a device's control value. - """ - + """Look up a device's control value.""" data = self.client.session.get_device_config( self.device.id, key, @@ -430,3 +424,13 @@ class Device(object): # The response comes in a funky key/value format: "(key:value)". _, value = data[1:-1].split(':') return value + + def monitor_start(self): + """Start monitoring the device's status.""" + mon = Monitor(self.client.session, self.device.id) + mon.start() + self.mon = mon + + def monitor_stop(self): + """Stop monitoring the device's status.""" + self.mon.stop() diff --git a/wideq/dryer.py b/wideq/dryer.py new file mode 100644 index 0000000..bdb4f4b --- /dev/null +++ b/wideq/dryer.py @@ -0,0 +1,145 @@ +import enum + +from .client import Device + + +class DryerState(enum.Enum): + """The state of the dryer device.""" + + OFF = "@WM_STATE_POWER_OFF_W" + INITIAL = "@WM_STATE_INITIAL_W" + RUNNING = "@WM_STATE_RUNNING_W" + DRYING = "@WM_STATE_DRYING_W" + PAUSE = "@WM_STATE_PAUSE_W" + END = "@WM_STATE_END_W" + ERROR = "@WM_STATE_ERROR_W" + COOLING = "@WM_STATE_COOLING_W" + SMART_DIAGNOSIS = "@WM_STATE_SMART_DIAGNOSIS_W" + WRINKLE_CARE = "@WM_STATE_WRINKLECARE_W" + + +class DryLevel(enum.Enum): + """Represents the dry level setting of the dryer.""" + + IRON = "@WM_DRY27_DRY_LEVEL_IRON_W" + CUPBOARD = "@WM_DRY27_DRY_LEVEL_CUPBOARD_W" + EXTRA = "@WM_DRY27_DRY_LEVEL_EXTRA_W" + OFF = "-" + DAMP = "@WM_DRY27_DRY_LEVEL_DAMP_W" + LESS = "@WM_DRY27_DRY_LEVEL_LESS_W" + NORMAL = "@WM_DRY27_DRY_LEVEL_NORMAL_W" + MORE = "@WM_DRY27_DRY_LEVEL_MORE_W" + VERY = "@WM_DRY27_DRY_LEVEL_VERY_W" + + +class DryerError(enum.Enum): + """A dryer error.""" + + ERROR_DOOR = "@WM_US_DRYER_ERROR_DE_W" + ERROR_DRAINMOTOR = "@WM_US_DRYER_ERROR_OE_W" + ERROR_LE1 = "@WM_US_DRYER_ERROR_LE1_W" + ERROR_TE1 = "@WM_US_DRYER_ERROR_TE1_W" + ERROR_TE2 = "@WM_US_DRYER_ERROR_TE2_W" + ERROR_TE5 = "@WM_US_DRYER_ERROR_TE5_W" + ERROR_TE6 = "@WM_US_DRYER_ERROR_TE6_W" + ERROR_PS = "@WM_US_DRYER_ERROR_PS_W" + ERROR_NP = "@WM_US_DRYER_ERROR_NP_GAS_W" + ERROR_F1 = "@WM_US_DRYER_ERROR_F1_W" + ERROR_LE2 = "@WM_US_DRYER_ERROR_LE2_W" + ERROR_AE = "@WM_US_DRYER_ERROR_AE_W" + ERROR_dE4 = "@WM_WW_FL_ERROR_DE4_W" + ERROR_NOFILTER = "@WM_US_DRYER_ERROR_NOFILTER_W" + ERROR_EMPTYWATER = "@WM_US_DRYER_ERROR_EMPTYWATER_W" + ERROR_CE1 = "@WM_US_DRYER_ERROR_CE1_W" + + +class DryerDevice(Device): + """A higher-level interface for a dryer.""" + + def poll(self) -> Optional['DryerDevice']: + """Poll the device's current state. + + Monitoring must be started first with `monitor_start`. + + :returns: Either a `DruerStatus` instance or `None` if the status is not + yet available. + """ + # Abort if monitoring has not started yet. + if not hasattr(self, 'mon'): + return None + + res = self.mon.poll_json() + if res: + return DryerStatus(self, res) + else: + return None + + +class DryerStatus(object): + """Higher-level information about a dryer's current status. + + :param dryer: The DryerDevice instance. + :param data: JSON data from the API. + """ + + def __init__(self, dryer: DryerDevice, data: dict): + self.dryer = dryer + self.data = data + + @property + def state(self): + """Get the state of the dryer.""" + attr = 'State' + return DryerState(self.dryer.model.enum_name(attr, self.data[attr])) + + @property + def pre_state(self): + """Get the previous? state of the dryer. + + + @TODO: Run some tests to determine what this value means. Is it the + previous state? If not, what would a pre-state mean? + """ + attr = 'PreState' + return DryerState(self.dryer.model.enum_name(attr, self.data[attr])) + + @property + def dry_level(self): + """Get the dry level.""" + attr = 'DryLevel' + return DryLevel(self.dryer.model.enum_name(attr, self.data[attr])) + + @property + def is_on(self) -> bool: + """Check if the dryer is on or not.""" + return self.state != DryerState.OFF + + @property + def remain_time_hours(self): + """Get the remaining number of hours.""" + return self.data['Remain_Time_H'] + + @property + def remain_time_minutes(self): + """Get the remaining number of minutes.""" + return self.data['Remain_Time_M'] + + @property + def initial_time_hours(self): + """Get the initial number of hours.""" + return self.data['Initial_Time_H'] + + @property + def initial_time_minutes(self): + """Get the initial number of minutes.""" + return self.data['Initial_Time_M'] + + @property + def course(self): + """Get the current course.""" + raise NotImplementedError + + @property + def smart_course(self): + """Get the current smart course.""" + raise NotImplementedError From 5ff879aa3626cc631228c3f0f71de68ec5138111 Mon Sep 17 00:00:00 2001 From: "aaron.godfrey" Date: Mon, 1 Jul 2019 15:58:28 -0700 Subject: [PATCH 02/10] Some modifications to the dryer state. --- tests/test_dryer.py | 7 +++++ wideq/dryer.py | 75 ++++++++++++++++++++++++--------------------- 2 files changed, 47 insertions(+), 35 deletions(-) create mode 100644 tests/test_dryer.py diff --git a/tests/test_dryer.py b/tests/test_dryer.py new file mode 100644 index 0000000..b38ccf1 --- /dev/null +++ b/tests/test_dryer.py @@ -0,0 +1,7 @@ +import unittest + +from wideq.dryer import DryerDevice, DryerStatus + + +class DryerStatusTest(unittest.TestCase): + pass diff --git a/wideq/dryer.py b/wideq/dryer.py index bdb4f4b..b826b28 100644 --- a/wideq/dryer.py +++ b/wideq/dryer.py @@ -6,51 +6,51 @@ from .client import Device class DryerState(enum.Enum): """The state of the dryer device.""" - OFF = "@WM_STATE_POWER_OFF_W" - INITIAL = "@WM_STATE_INITIAL_W" - RUNNING = "@WM_STATE_RUNNING_W" - DRYING = "@WM_STATE_DRYING_W" - PAUSE = "@WM_STATE_PAUSE_W" - END = "@WM_STATE_END_W" - ERROR = "@WM_STATE_ERROR_W" - COOLING = "@WM_STATE_COOLING_W" - SMART_DIAGNOSIS = "@WM_STATE_SMART_DIAGNOSIS_W" - WRINKLE_CARE = "@WM_STATE_WRINKLECARE_W" + COOLING = '@WM_STATE_COOLING_W' + END = '@WM_STATE_END_W' + ERROR = '@WM_STATE_ERROR_W' + DRYING = '@WM_STATE_DRYING_W' + INITIAL = '@WM_STATE_INITIAL_W' + OFF = '@WM_STATE_POWER_OFF_W' + PAUSE = '@WM_STATE_PAUSE_W' + RUNNING = '@WM_STATE_RUNNING_W' + SMART_DIAGNOSIS = '@WM_STATE_SMART_DIAGNOSIS_W' + WRINKLE_CARE = '@WM_STATE_WRINKLECARE_W' class DryLevel(enum.Enum): """Represents the dry level setting of the dryer.""" - IRON = "@WM_DRY27_DRY_LEVEL_IRON_W" - CUPBOARD = "@WM_DRY27_DRY_LEVEL_CUPBOARD_W" - EXTRA = "@WM_DRY27_DRY_LEVEL_EXTRA_W" - OFF = "-" - DAMP = "@WM_DRY27_DRY_LEVEL_DAMP_W" - LESS = "@WM_DRY27_DRY_LEVEL_LESS_W" - NORMAL = "@WM_DRY27_DRY_LEVEL_NORMAL_W" - MORE = "@WM_DRY27_DRY_LEVEL_MORE_W" - VERY = "@WM_DRY27_DRY_LEVEL_VERY_W" + CUPBOARD = '@WM_DRY27_DRY_LEVEL_CUPBOARD_W' + DAMP = '@WM_DRY27_DRY_LEVEL_DAMP_W' + EXTRA = '@WM_DRY27_DRY_LEVEL_EXTRA_W' + IRON = '@WM_DRY27_DRY_LEVEL_IRON_W' + LESS = '@WM_DRY27_DRY_LEVEL_LESS_W' + MORE = '@WM_DRY27_DRY_LEVEL_MORE_W' + NORMAL = '@WM_DRY27_DRY_LEVEL_NORMAL_W' + OFF = '-' + VERY = '@WM_DRY27_DRY_LEVEL_VERY_W' class DryerError(enum.Enum): """A dryer error.""" - ERROR_DOOR = "@WM_US_DRYER_ERROR_DE_W" - ERROR_DRAINMOTOR = "@WM_US_DRYER_ERROR_OE_W" - ERROR_LE1 = "@WM_US_DRYER_ERROR_LE1_W" - ERROR_TE1 = "@WM_US_DRYER_ERROR_TE1_W" - ERROR_TE2 = "@WM_US_DRYER_ERROR_TE2_W" - ERROR_TE5 = "@WM_US_DRYER_ERROR_TE5_W" - ERROR_TE6 = "@WM_US_DRYER_ERROR_TE6_W" - ERROR_PS = "@WM_US_DRYER_ERROR_PS_W" - ERROR_NP = "@WM_US_DRYER_ERROR_NP_GAS_W" - ERROR_F1 = "@WM_US_DRYER_ERROR_F1_W" - ERROR_LE2 = "@WM_US_DRYER_ERROR_LE2_W" - ERROR_AE = "@WM_US_DRYER_ERROR_AE_W" - ERROR_dE4 = "@WM_WW_FL_ERROR_DE4_W" - ERROR_NOFILTER = "@WM_US_DRYER_ERROR_NOFILTER_W" - ERROR_EMPTYWATER = "@WM_US_DRYER_ERROR_EMPTYWATER_W" - ERROR_CE1 = "@WM_US_DRYER_ERROR_CE1_W" + ERROR_AE = '@WM_US_DRYER_ERROR_AE_W' + ERROR_CE1 = '@WM_US_DRYER_ERROR_CE1_W' + ERROR_DE4 = '@WM_WW_FL_ERROR_DE4_W' + ERROR_DOOR = '@WM_US_DRYER_ERROR_DE_W' + ERROR_DRAINMOTOR = '@WM_US_DRYER_ERROR_OE_W' + ERROR_EMPTYWATER = '@WM_US_DRYER_ERROR_EMPTYWATER_W' + ERROR_F1 = '@WM_US_DRYER_ERROR_F1_W' + ERROR_LE1 = '@WM_US_DRYER_ERROR_LE1_W' + ERROR_LE2 = '@WM_US_DRYER_ERROR_LE2_W' + ERROR_NOFILTER = '@WM_US_DRYER_ERROR_NOFILTER_W' + ERROR_NP = '@WM_US_DRYER_ERROR_NP_GAS_W' + ERROR_PS = '@WM_US_DRYER_ERROR_PS_W' + ERROR_TE1 = '@WM_US_DRYER_ERROR_TE1_W' + ERROR_TE2 = '@WM_US_DRYER_ERROR_TE2_W' + ERROR_TE5 = '@WM_US_DRYER_ERROR_TE5_W' + ERROR_TE6 = '@WM_US_DRYER_ERROR_TE6_W' class DryerDevice(Device): @@ -143,3 +143,8 @@ class DryerStatus(object): def smart_course(self): """Get the current smart course.""" raise NotImplementedError + + @property + def error(self): + """Get the current error.""" + raise NotImplementedError From 2636e8617b9f3edcf7a71f58e6586669b034a5cd Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Tue, 2 Jul 2019 17:52:44 -0700 Subject: [PATCH 03/10] Added some tests. --- tests/fixtures/client.json | 5089 ++++++++++++++++++++++++++++++++++++ 1 file changed, 5089 insertions(+) create mode 100644 tests/fixtures/client.json diff --git a/tests/fixtures/client.json b/tests/fixtures/client.json new file mode 100644 index 0000000..d3fbf6a --- /dev/null +++ b/tests/fixtures/client.json @@ -0,0 +1,5089 @@ +{ + "model_info": { + "https://aic.lgthinq.com:46030/api/webContents/modelJSON?modelName=RV13B6ES_D_US_WIFI&countryCode=WW&contentsId=JS11260025236447318&authKey=thinq": { + "Info": { + "productType": "WM", + "country": "US", + "modelType": "Dryer", + "model": "Victor 2 Better(D) Wi-Fi", + "modelName": "RV13B6ES_D_US_WIFI", + "networkType": "WIFI", + "version": "3.5" + }, + "Module": { + "WPM": { + "GWM_CEN01_Main": "001", + "GWM_CRS01_Main": "001", + "GWM_CRS02_CourseList": "001", + "GWM_CRS03_CourseDetail": "001", + "GWM_WCH02_Main": "001", + "GWM_WCH01_UserGuide2": "001", + "GCM_SDS01_SdsMain": "001", + "GWM_SET01_Main": "001", + "GWM_SET02_PushList": "001", + "GWM_SET03_NickName": "001", + "GWM_FOT01_Main": "001" + }, + "Menu": [ + "GWM_CRS01_Main", + "GWM_WCH02_Main", + "GWM_ENM01_Main", + "GCM_SDS01_SdsMain", + "GWM_SET01_Main" + ] + }, + "Config": { + "remoteStartLabel": "@WM_OPTION_REMOTE_START_W", + "freshCareLabel": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", + "downloadPanelLabel": "@WM_STATE_DOWNLOAD_COMPLETE_W", + "maxDownloadCourseNum": 1, + "defaultCourseId": 3, + "defaultSmartCourseId": 100, + "fota": true, + "powerOffDownload": true, + "SmartCourseCategory": [ + { + "label": "@WM_COURSE_CATEGORY_DRYNESS_W", + "courseIdList": [ + 100, + 202, + 204 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", + "courseIdList": [ + 101, + 102, + 104, + 107, + 108, + 109, + 113, + 115 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", + "courseIdList": [ + 105, + 110, + 114 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_SIZE_W", + "courseIdList": [ + 103, + 205, + 206 + ] + } + ] + }, + "Value": { + "State": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "1": "@WM_STATE_INITIAL_W", + "2": "@WM_STATE_RUNNING_W", + "3": "@WM_STATE_PAUSE_W", + "4": "@WM_STATE_END_W", + "5": "@WM_STATE_ERROR_W", + "8": "@WM_STATE_SMART_DIAGNOSIS_W", + "50": "@WM_STATE_DRYING_W", + "51": "@WM_STATE_COOLING_W", + "56": "@WM_STATE_WRINKLECARE_W" + } + }, + "PreState": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "1": "@WM_STATE_INITIAL_W", + "2": "@WM_STATE_RUNNING_W", + "3": "@WM_STATE_PAUSE_W", + "4": "@WM_STATE_END_W", + "5": "@WM_STATE_ERROR_W", + "8": "@WM_STATE_SMART_DIAGNOSIS_W", + "50": "@WM_STATE_DRYING_W", + "51": "@WM_STATE_COOLING_W", + "56": "@WM_STATE_WRINKLECARE_W" + } + }, + "DryLevel": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_DRY_LEVEL_W", + "option": { + "0": "-", + "1": "@WM_DRY27_DRY_LEVEL_DAMP_W", + "2": "@WM_DRY27_DRY_LEVEL_LESS_W", + "3": "@WM_DRY27_DRY_LEVEL_NORMAL_W", + "4": "@WM_DRY27_DRY_LEVEL_MORE_W", + "5": "@WM_DRY27_DRY_LEVEL_VERY_W" + } + }, + "TempControl": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_TEMP_W", + "option": { + "0": "-", + "1": "@WM_DRY27_TEMP_ULTRA_LOW_W", + "2": "@WM_DRY27_TEMP_LOW_W", + "3": "@WM_DRY27_TEMP_MEDIUM_W", + "4": "@WM_DRY27_TEMP_MID_HIGH_W", + "5": "@WM_DRY27_TEMP_HIGH_W" + } + }, + "TimeDry": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_TIME_DRY_W", + "option": { + "0": "-", + "1": "20", + "2": "30", + "3": "40", + "4": "50", + "5": "60" + } + }, + "LoadItem": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_LOAD_ITEM_W", + "option": { + "0": "0", + "1": "1", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W", + "5": "16", + "6": "18", + "D": "16" + }, + "changeTable": [ + { + "condition": { + "default": 1 + }, + "option": { + "0": "0", + "1": "1", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W" + } + }, + { + "condition": { + "EasyIron": 1 + }, + "option": { + "0": "0", + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5" + } + }, + { + "condition": { + "TurboSteam": 1 + }, + "option": { + "0": "0", + "1": "1", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W" + } + }, + { + "condition": { + "ReduceStatic": 1 + }, + "option": { + "0": "0", + "1": "7", + "2": "9", + "3": "11", + "4": "14", + "5": "16", + "6": "18", + "D": "16" + } + } + ] + }, + "ChildLock": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_CHILD_LOCK_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "RemoteStart": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_REMORT_START_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "WrinkleCare": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "AntiBacterial": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_ANTI_BACTERIAL_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "DampDrySingal": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_DAMP_DRY_SIGNAL_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "TurboSteam": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_TURBO_STEAM_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "EnergySaver": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_ENERGY_SAVER_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "EasyIron": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_EASY_IRON_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "ReduceStatic": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_REDUCE_STATIC_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "InitialBit": { + "type": "Boolean", + "default": false + }, + "MoreLessTime": { + "type": "Range", + "default": 0, + "label": "@WM_OPTION_MORE_LESS_W", + "option": { + "min": 10, + "max": 100 + } + }, + "Remain_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 24 + } + }, + "Remain_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 60 + } + }, + "Initial_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 24 + } + }, + "Initial_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 60 + } + }, + "Option1": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "ChildLock" + }, + { + "startbit": 1, + "length": 1, + "default": "0", + "value": "ReduceStatic" + }, + { + "startbit": 2, + "length": 1, + "default": "0", + "value": "EasyIron" + }, + { + "startbit": 3, + "length": 1, + "default": "0", + "value": "DampDrySingal" + }, + { + "startbit": 4, + "length": 1, + "default": "0", + "value": "WrinkleCare" + }, + { + "startbit": 7, + "length": 1, + "default": "0", + "value": "AntiBacterial" + } + ] + }, + "Option2": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "RemoteStart" + }, + { + "startbit": 1, + "length": 1, + "default": "0", + "value": "EnergySaver" + }, + { + "startbit": 2, + "length": 1, + "default": "0", + "value": "TurboSteam" + }, + { + "startbit": 6, + "length": 1, + "default": "0", + "value": "InitialBit" + } + ] + }, + "Course": { + "type": "Reference", + "option": [ + "Course" + ] + }, + "SmartCourse": { + "type": "Reference", + "option": [ + "SmartCourse" + ] + }, + "CurrentDownloadCourse": { + "type": "Reference", + "option": [ + "SmartCourse" + ] + }, + "Error": { + "type": "Reference", + "option": [ + "Error" + ] + } + }, + "Error": { + "0": { + "_comment": "No Error", + "label": "ERROR_NOERROR", + "title": "ERROR_NOERROR_TITLE", + "content": "ERROR_NOERROR_CONTENT" + }, + "1": { + "_comment": "TE1", + "label": "@WM_US_DRYER_ERROR_TE1_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE1_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE1_S" + }, + "2": { + "_comment": "TE2", + "label": "@WM_US_DRYER_ERROR_TE2_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE2_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE2_S" + }, + "5": { + "_comment": "TE5", + "label": "@WM_US_DRYER_ERROR_TE5_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE5_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE5_S" + }, + "6": { + "_comment": "TE6", + "label": "@WM_US_DRYER_ERROR_TE6_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE6_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE6_S" + }, + "13": { + "_comment": "HIGHPOWER", + "label": "@WM_US_DRYER_ERROR_PS_W", + "title": "@WM_US_DRYER_ERROR_TITLE_PS_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_PS_S" + }, + "19": { + "_comment": "nP", + "label": "@WM_US_DRYER_ERROR_NP_GAS_W", + "title": "@WM_US_DRYER_ERROR_TITLE_NP_GAS_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_NP_GAS_W" + } + }, + "Monitoring": { + "type": "BINARY(BYTE)", + "protocol": [ + { + "_comment": "State", + "startByte": 0, + "length": 1, + "value": "State" + }, + { + "_comment": "Remain Time H", + "startByte": 1, + "length": 1, + "value": "Remain_Time_H" + }, + { + "_comment": "Remain Time M", + "startByte": 2, + "length": 1, + "value": "Remain_Time_M" + }, + { + "_comment": "Initial Time H", + "startByte": 3, + "length": 1, + "value": "Initial_Time_H" + }, + { + "_comment": "Initial Time M", + "startByte": 4, + "length": 1, + "value": "Initial_Time_M" + }, + { + "_comment": "Course", + "startByte": 5, + "length": 1, + "value": "Course" + }, + { + "_comment": "Error", + "startByte": 6, + "length": 1, + "value": "Error" + }, + { + "_comment": "DryLevel", + "startByte": 7, + "length": 1, + "value": "DryLevel" + }, + { + "_comment": "TempControl", + "startByte": 8, + "length": 1, + "value": "TempControl" + }, + { + "_comment": "TimeDry", + "startByte": 9, + "length": 1, + "value": "TimeDry" + }, + { + "_comment": "MoreLessTime", + "startByte": 11, + "length": 1, + "value": "MoreLessTime" + }, + { + "_comment": "Option1", + "startByte": 14, + "length": 1, + "value": "Option1" + }, + { + "_comment": "Option2", + "startByte": 15, + "length": 1, + "value": "Option2" + }, + { + "_comment": "PreState", + "startByte": 19, + "length": 1, + "value": "PreState" + }, + { + "_comment": "SmartCourse", + "startByte": 20, + "length": 1, + "value": "SmartCourse" + }, + { + "_comment": "LoadItem", + "startByte": 22, + "length": 1, + "value": "LoadItem" + }, + { + "_comment": "Current DownloadCourse", + "startByte": 23, + "length": 1, + "value": "CurrentDownloadCourse" + } + ] + }, + "Push": [ + { + "category": "PUSH_WM_STATE", + "label": "@CP_ALARM_PRODUCT_STATE_W", + "groupCode": "20201", + "pushList": [ + { + "0000": "PUSH_WM_COMPLETE" + }, + { + "0001": "PUSH_WM_REMOTE_ANOTHER_ID" + }, + { + "0100": "PUSH_WM_ERROR" + }, + { + "0200": "PUSH_WM_REMOTE_START_OFF" + }, + { + "0201": "PUSH_WM_REMOTE_START_ON" + } + ] + } + ], + "ControlWifi": { + "type": "BINARY(BYTE)", + "action": { + "CourseDownload": { + "tag": [ + "COURSE", + "ID", + "DATA" + ], + "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" + }, + "OperationStart": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "encode": true, + "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" + }, + "OperationStop": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Stop" + }, + "PowerOff": { + "cmd": "Control", + "cmdOpt": "Power", + "value": "Off" + }, + "MODE020Start": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "encode": true, + "data": "[3,0,0,3,0,0,0,0,64,0,3,0,0,0,0,3,0,0,0,0,0]" + }, + "WrinkleCareOn": { + "cmd": "Control", + "cmdOpt": "WrinkleCare", + "value": "On" + } + } + }, + "Course": { + "1": { + "_comment": "Heavy Duty", + "courseType": "Course", + "id": 1, + "name": "@WM_DRY27_COURSE_HEAVY_DUTY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 33, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "2": { + "_comment": "Towels", + "courseType": "Course", + "id": 2, + "name": "@WM_DRY27_COURSE_TOWELS_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 42, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "4" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "3": { + "_comment": "Normal", + "courseType": "Course", + "id": 3, + "name": "@WM_DRY27_COURSE_NORMAL_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 61, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "4" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "1" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "4": { + "_comment": "PermPress", + "courseType": "Course", + "id": 4, + "name": "@WM_DRY27_COURSE_PERM_PRESS_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 40, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "5": { + "_comment": "Delicates", + "courseType": "Course", + "id": 5, + "name": "@WM_DRY27_COURSE_DELICATES_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 41, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "7": { + "_comment": "Bedding / Bulky Large", + "courseType": "Course", + "id": 7, + "name": "@WM_DRY27_COURSE_BEDDING_W", + "script": "", + "controlEnable": true, + "imgIndex": 12, + "freshcareEnable": false, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "8": { + "_comment": "Anti Bacterial", + "courseType": "Course", + "id": 8, + "name": "@WM_DRY27_COURSE_ANTI_BACTERIAL_W", + "script": "", + "controlEnable": true, + "imgIndex": 65, + "freshcareEnable": true, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "16": { + "_comment": "Speed Dry", + "courseType": "Course", + "id": 16, + "name": "@WM_DRY27_COURSE_SPEED_DRY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 72, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "display": "25" + } + ] + }, + "17": { + "_comment": "Air Dry", + "courseType": "Course", + "id": 17, + "name": "@WM_DRY27_COURSE_AIR_DRY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 73, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "0" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "display": "30" + } + ] + }, + "21": { + "_comment": "Steam Fresh", + "courseType": "Course", + "id": 21, + "name": "@WM_DRY27_COURSE_STEAM_FRESH_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 67, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "4", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "1", + "showing": "@CP_ON_EN_W" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "2", + "selectable": [ + 1, + 2, + 3, + 4 + ] + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "22": { + "_comment": "Steam Sanitary", + "courseType": "Course", + "id": 22, + "name": "@WM_DRY27_COURSE_STEAM_SANITARY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 66, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "1", + "showing": "@CP_ON_EN_W" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "18": { + "_comment": "Time Dry", + "courseType": "Course", + "id": 18, + "name": "@WM_DRY27_BUTTON_TIME_DRY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "visibility": "gone", + "imgIndex": 15, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "4", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + } + }, + "SmartCourse": { + "100": { + "_comment": "Super Dry", + "courseType": "SmartCourse", + "id": 100, + "Course": 26, + "name": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 75, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "101": { + "_comment": "Denim", + "courseType": "SmartCourse", + "id": 101, + "Course": 10, + "name": "@WM_US_DR_SMARTCOURSE_DENIM_W", + "script": "@WM_US_DR_SMARTCOURSE_DENIM_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 76, + "function": [ + { + "value": "DryLevel", + "default": "3", + "showing": "-" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "102": { + "_comment": "Kids' Clothes", + "courseType": "SmartCourse", + "id": 102, + "Course": 12, + "name": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_W", + "script": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 77, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "103": { + "_comment": "Small Load", + "courseType": "SmartCourse", + "id": 103, + "Course": 9, + "name": "@WM_US_DR_SMARTCOURSE_SMALL_LOAD_W", + "script": "@WM_US_DR_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 46, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "104": { + "_comment": "Ultra Delicates", + "courseType": "SmartCourse", + "id": 104, + "Course": 6, + "name": "@WM_US_DR_SMARTCOURSE_ULTRA_DELICATES_W", + "script": "@WM_US_DR_SMARTCOURSE_ULTRA_DELICATES_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 78, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "1" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "105": { + "_comment": "Low Temp Dry", + "courseType": "SmartCourse", + "id": 105, + "Course": 13, + "name": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 64, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "107": { + "_comment": "Gym Clothes", + "courseType": "SmartCourse", + "id": 107, + "Course": 11, + "name": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_W", + "script": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 81, + "function": [ + { + "value": "DryLevel", + "default": "3", + "showing": "-" + }, + { + "value": "TempControl", + "default": "5", + "showing": "-" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "108": { + "_comment": "Blankets", + "courseType": "SmartCourse", + "id": 108, + "Course": 14, + "name": "@WM_US_DR_SMARTCOURSE_BLANKETS_W", + "script": "@WM_US_DR_SMARTCOURSE_BLANKETS_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 82, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "109": { + "_comment": "Blanket Refresh", + "courseType": "SmartCourse", + "id": 109, + "Course": 18, + "name": "@WM_US_DR_SMARTCOURSE_BLANKET_REFRESH_W", + "script": "@WM_US_DR_SMARTCOURSE_BLANKET_REFRESH_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 83, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "1" + }, + { + "value": "TimeDry", + "default": "1" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "display": "20" + } + ] + }, + "110": { + "_comment": "Rainy Day", + "courseType": "SmartCourse", + "id": 110, + "Course": 13, + "name": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_W", + "script": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 84, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "113": { + "_comment": "Socks", + "courseType": "SmartCourse", + "id": 113, + "Course": 18, + "name": "@WM_US_DR_SMARTCOURSE_SOCKS_W", + "script": "@WM_US_DR_SMARTCOURSE_SOCKS_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 87, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "2", + "showing": "35" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 5, + "display": "35" + } + ] + }, + "114": { + "_comment": "Overnight Dry", + "courseType": "SmartCourse", + "id": 114, + "Course": 13, + "name": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 88, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "1" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "115": { + "_comment": "Bedding / Curtains", + "courseType": "SmartCourse", + "id": 115, + "Course": 7, + "name": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_W", + "script": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": false, + "imgIndex": 89, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "202": { + "_comment": "Wrinkle Prevention", + "courseType": "SmartCourse", + "id": 202, + "Course": 3, + "name": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_W", + "script": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 80, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "1" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "204": { + "_comment": "Static Reduce", + "courseType": "SmartCourse", + "id": 204, + "Course": 3, + "name": "@WM_US_DR_SMARTCOURSE_STATIC_REDUCE_W", + "script": "@WM_US_DR_SMARTCOURSE_STATIC_REDUCE_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 23, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "ReduceStatic", + "default": "1", + "visibility": "gone" + }, + { + "value": "LoadItem", + "default": "5", + "showing": "16" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "205": { + "_comment": "Half Load Dry", + "courseType": "SmartCourse", + "id": 205, + "Course": 3, + "name": "@WM_US_DR_SMARTCOURSE_HALF_LOAD_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_HALF_LOAD_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 176, + "function": [ + { + "value": "DryLevel", + "default": "4" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "206": { + "_comment": "Full Load Dry", + "courseType": "SmartCourse", + "id": 206, + "Course": 1, + "name": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 177, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + } + }, + "EnergyMonitoring": { + "option": [ + "DryLevel", + "TempControl" + ], + "powertable": { + "1": 2600, + "2": 5200, + "3": 7800, + "4": 10400, + "5": 13000 + } + } + }, + "https://aic.lgthinq.com:46030/api/webContents/modelJSON?modelName=F3L2CYV5W_WIFI&countryCode=WW&contentsId=JS1217232703654216&authKey=thinq": { + "Info": { + "productType": "WM", + "country": "US", + "modelType": "FL", + "model": "Victor 899", + "modelName": "F3L2CYV5W_WIFI", + "networkType": "WIFI", + "version": "3.3" + }, + "Module": { + "WPM": { + "GWM_CEN01_Main": "001", + "GWM_CRS01_Main": "001", + "GWM_CRS02_CourseList": "001", + "GWM_CRS03_CourseDetail": "001", + "GWM_WCH01_Main": "001", + "GWM_WCH01_UserGuide2": "001", + "GWM_ENM01_Main": "001", + "GCM_SDS01_SdsMain": "001", + "GWM_SET01_Main": "001", + "GWM_SET02_PushList": "001", + "GWM_SET03_NickName": "001" + }, + "Menu": [ + "GWM_CRS01_Main", + "GWM_WCH01_Main", + "GWM_ENM01_Main", + "GCM_SDS01_SdsMain", + "GWM_SET01_Main" + ] + }, + "Config": { + "powerOffDownload": true, + "expectedStartTime": true, + "fota": true, + "freshCareCancelable": true, + "freshCareLabel": "@WM_MX_OPTION_FRESH_CARE_W", + "downloadPanelLabel": "@WM_MX_TERM_DOWNLOADED_W", + "remoteStartLabel": "@WM_MX_OPTION_REMOTE_START_W", + "maxDownloadCourseNum": 1, + "defaultCourseId": 6, + "downloadCourseAPId": 12, + "defaultSmartCourseId": 51, + "tubCleanCourseId": 1, + "SmartCourseCategory": [ + { + "label": "@WM_COURSE_CATEGORY_SIZE_W", + "courseIdList": [ + 51, + 64, + 108, + 109 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_STAIN_W", + "courseIdList": [ + 61, + 63, + 100 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", + "courseIdList": [ + 52, + 53, + 54, + 55, + 59, + 107 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", + "courseIdList": [ + 60, + 105, + 106 + ] + } + ] + }, + "Value": { + "State": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "5": "@WM_STATE_INITIAL_W", + "6": "@WM_STATE_PAUSE_W", + "10": "@WM_STATE_RESERVE_W", + "20": "@WM_STATE_DETECTING_W", + "23": "@WM_STATE_RUNNING_W", + "24": "@WM_STATE_PREWASH_W", + "30": "@WM_STATE_RINSING_W", + "31": "@WM_STATE_RINSE_HOLD_W", + "40": "@WM_STATE_SPINNING_W", + "50": "@WM_STATE_DRYING_W", + "60": "@WM_STATE_END_W", + "61": "@WM_STATE_FRESHCARE_W" + } + }, + "PreState": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "5": "@WM_STATE_INITIAL_W", + "6": "@WM_STATE_PAUSE_W", + "10": "@WM_STATE_RESERVE_W", + "20": "@WM_STATE_DETECTING_W", + "23": "@WM_STATE_RUNNING_W", + "24": "@WM_STATE_PREWASH_W", + "30": "@WM_STATE_RINSING_W", + "31": "@WM_STATE_RINSE_HOLD_W", + "40": "@WM_STATE_SPINNING_W", + "50": "@WM_STATE_DRYING_W", + "60": "@WM_STATE_END_W", + "61": "@WM_STATE_FRESHCARE_W" + } + }, + "RemoteStart": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_REMOTE_START_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "InitialBit": { + "type": "Boolean", + "default": false + }, + "ChildLock": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_CHILDLOCK_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "TCLCount": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 60 + } + }, + "Reserve_Time_H": { + "type": "Range", + "default": 0, + "label": "@WM_MX_OPTION_DELAY_WASH_W", + "option": { + "min": 1, + "max": 19 + } + }, + "Reserve_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 59 + } + }, + "Remain_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 30 + } + }, + "Remain_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 59 + } + }, + "Initial_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 30 + } + }, + "Initial_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 59 + } + }, + "Soil": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_SOIL_W", + "option": { + "0": "-", + "1": "@WM_MX_OPTION_SOIL_LIGHT_W", + "2": "@WM_MX_OPTION_SOIL_LIGHT_NORMAL_W", + "3": "@WM_MX_OPTION_SOIL_NORMAL_W", + "4": "@WM_MX_OPTION_SOIL_NORMAL_HEAVY_W", + "5": "@WM_MX_OPTION_SOIL_HEAVY_W" + } + }, + "SpinSpeed": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_SPIN_SPEED_W", + "option": { + "0": "-", + "1": "@WM_MX_OPTION_SPIN_NO_SPIN_W", + "2": "@WM_MX_OPTION_SPIN_LOW_W", + "3": "@WM_MX_OPTION_SPIN_MEDIUM_W", + "4": "@WM_MX_OPTION_SPIN_HIGH_W", + "5": "@WM_MX_OPTION_SPIN_EXTRA_HIGH_W" + } + }, + "WaterTemp": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_WASH_TEMP_W", + "option": { + "0": "-", + "1": "@WM_MX_OPTION_TEMP_TAP_COLD_W", + "2": "@WM_MX_OPTION_TEMP_COLD_W", + "3": "@WM_MX_OPTION_TEMP_ECO_WARM_W", + "4": "@WM_MX_OPTION_TEMP_WARM_W", + "5": "@WM_MX_OPTION_TEMP_WARM_W", + "6": "@WM_MX_OPTION_TEMP_HOT_W", + "7": "@WM_MX_OPTION_TEMP_EXTRA_HOT_W" + } + }, + "RinseOption": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 4, + "default": "0", + "value": "RinseCount" + }, + { + "startbit": 4, + "length": 4, + "default": "0", + "value": "ExtraRinseCount" + } + ] + }, + "RinseCount": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_RINSE_COUNT_W", + "option": { + "0": "@WM_OPTION_RINSE_COUNT_0_TIME_W", + "1": "@WM_OPTION_RINSE_COUNT_1_TIME_W", + "2": "@WM_OPTION_RINSE_COUNT_2_TIME_W", + "3": "@WM_OPTION_RINSE_COUNT_3_TIME_W" + } + }, + "ExtraRinseCount": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_EXTRA_RINSE_W", + "option": { + "0": "-", + "1": "@WM_OPTION_EXTRA_RINSE_1_W", + "2": "@WM_OPTION_EXTRA_RINSE_2_W", + "3": "@WM_OPTION_EXTRA_RINSE_3_W" + } + }, + "ExtraRinse": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_EXTRA_RINSE_W", + "option": { + "0": "@WM_OPTION_EXTRA_RINSE_0_W", + "1": "@WM_OPTION_EXTRA_RINSE_1_W", + "2": "@WM_OPTION_EXTRA_RINSE_2_W", + "3": "@WM_OPTION_EXTRA_RINSE_3_W" + } + }, + "ColdWash": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_COLD_WASH_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "DryLevel": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_DRY_LEVEL_W", + "option": { + "0": "-", + "5": "@WM_MX_OPTION_DRY_TURBO_W", + "6": "@WM_MX_OPTION_DRY_WIND_W", + "7": "@WM_OPTION_DRY_TIME_30_W", + "8": "@WM_OPTION_DRY_TIME_60_W", + "9": "@WM_OPTION_DRY_TIME_90_W", + "10": "@WM_OPTION_DRY_TIME_120_W", + "11": "@WM_OPTION_DRY_TIME_150_W" + } + }, + "TurboWash": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_TURBO_WASH_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "Steam": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_STEAM_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "PreWash": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_PRE_WASH_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "FreshCare": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_FRESH_CARE_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "Rinse_Spin": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_RINSE_SPIN_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "Option1": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "ChildLock" + }, + { + "startbit": 2, + "length": 1, + "default": "0", + "value": "Steam" + }, + { + "startbit": 3, + "length": 1, + "default": "0", + "value": "PreWash" + }, + { + "startbit": 6, + "length": 1, + "default": "0", + "value": "ExtraRinse" + }, + { + "startbit": 7, + "length": 1, + "default": "0", + "value": "TurboWash" + } + ] + }, + "Option2": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "FreshCare" + }, + { + "startbit": 4, + "length": 1, + "default": "0", + "value": "ColdWash" + }, + { + "startbit": 7, + "length": 1, + "default": "0", + "value": "RemoteStart" + } + ] + }, + "Option3": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 5, + "length": 1, + "default": "0", + "value": "InitialBit" + } + ] + }, + "Error": { + "type": "Reference", + "option": [ + "Error" + ] + }, + "OPCourse": { + "type": "Reference", + "option": [ + "OPCourse" + ] + }, + "APCourse": { + "type": "Reference", + "option": [ + "APCourse" + ] + }, + "SmartCourse": { + "type": "Reference", + "option": [ + "SmartCourse" + ] + } + }, + "Error": { + "0": { + "_comment": "No Error", + "label": "ERROR_NOERROR", + "title": "ERROR_NOERROR_TITLE", + "content": "ERROR_NOERROR_CONTENT" + }, + "1": { + "_comment": "DE2 Error - Door Lock Error", + "label": "@WM_US_FL_ERROR_DE2_W", + "title": "@WM_US_FL_ERROR_DE2_TITLE_W", + "content": "@WM_US_FL_ERROR_DE2_CONTENT_S" + }, + "2": { + "_comment": "IE Error - No Fill Error", + "label": "@WM_US_FL_ERROR_IE_W", + "title": "@WM_US_FL_ERROR_IE_TITLE_W", + "content": "@WM_US_FL_ERROR_IE_CONTENT_S" + }, + "3": { + "_comment": "OE Error - Not Draining Error", + "label": "@WM_US_FL_ERROR_OE_W", + "title": "@WM_US_FL_ERROR_OE_TITLE_W", + "content": "@WM_US_FL_ERROR_OE_CONTENT_S" + }, + "4": { + "_comment": "UE Error - Out of Balance Load", + "label": "@WM_US_FL_ERROR_UE_W", + "title": "@WM_US_FL_ERROR_UE_TITLE_W", + "content": "@WM_US_FL_ERROR_UE_CONTENT_S" + }, + "5": { + "_comment": "FE Error - Overfill Error", + "label": "@WM_US_FL_ERROR_FE_W", + "title": "@WM_US_FL_ERROR_FE_TITLE_W", + "content": "@WM_US_FL_ERROR_FE_CONTENT_S" + }, + "6": { + "_comment": "PE Error - Water Sensor Error", + "label": "@WM_US_FL_ERROR_PE_W", + "title": "@WM_US_FL_ERROR_PE_TITLE_W", + "content": "@WM_US_FL_ERROR_PE_CONTENT_S" + }, + "7": { + "_comment": "tE Error - Thermistor Error", + "label": "@WM_US_FL_ERROR_TE_W", + "title": "@WM_US_FL_ERROR_TE_TITLE_W", + "content": "@WM_US_FL_ERROR_TE_CONTENT_S" + }, + "8": { + "_comment": "LE Error - Locked Motor Error", + "label": "@WM_US_FL_ERROR_LE_W", + "title": "@WM_US_FL_ERROR_LE_TITLE_W", + "content": "@WM_US_FL_ERROR_LE_CONTENT_S" + }, + "9": { + "_comment": "CE Error", + "label": "@WM_US_FL_ERROR_CE_W", + "title": "@WM_US_FL_ERROR_CE_TITLE_W", + "content": "@WM_US_FL_ERROR_CE_CONTENT_S" + }, + "10": { + "_comment": "dHE Error", + "label": "@WM_US_FL_ERROR_DHE_W", + "title": "@WM_US_FL_ERROR_DHE_TITLE_W", + "content": "@WM_US_FL_ERROR_DHE_CONTENT_S" + }, + "11": { + "_comment": "PF Error - Power Failure Error", + "label": "@WM_US_FL_ERROR_PF_W", + "title": "@WM_US_FL_ERROR_PF_TITLE_W", + "content": "@WM_US_FL_ERROR_PF_CONTENT_S" + }, + "12": { + "_comment": "FF Error - Freeze Error", + "label": "@WM_US_FL_ERROR_FF_W", + "title": "@WM_US_FL_ERROR_FF_TITLE_W", + "content": "@WM_US_FL_ERROR_FF_CONTENT_S" + }, + "13": { + "_comment": "dCE Error", + "label": "@WM_US_FL_ERROR_DCE_W", + "title": "@WM_US_FL_ERROR_DCE_TITLE_W", + "content": "@WM_US_FL_ERROR_DCE_CONTENT_S" + }, + "14": { + "_comment": "AE Error", + "label": "@WM_US_FL_ERROR_AE_W", + "title": "@WM_US_FL_ERROR_AE_TITLE_W", + "content": "@WM_US_FL_ERROR_AE_CONTENT_S" + }, + "15": { + "_comment": "EE Error - EEPROM Error", + "label": "@WM_US_FL_ERROR_EE_W", + "title": "@WM_US_FL_ERROR_EE_TITLE_W", + "content": "@WM_US_FL_ERROR_EE_CONTENT_S" + }, + "16": { + "_comment": "Sud Error - Suds Error", + "label": "@WM_US_FL_ERROR_SUD_W", + "title": "@WM_US_FL_ERROR_SUD_TITLE_W", + "content": "@WM_US_FL_ERROR_SUD_CONTENT_S" + }, + "17": { + "_comment": "DE1 Error - Door Open Error", + "label": "@WM_US_FL_ERROR_DE1_W", + "title": "@WM_US_FL_ERROR_DE1_TITLE_W", + "content": "@WM_US_FL_ERROR_DE1_CONTENT_S" + }, + "18": { + "_comment": "LOE Error - Sliding Lid Open Error", + "label": "@WM_US_FL_WD_WIFI_ERROR_LOE", + "title": "@WM_US_FL_WD_WIFI_ERROR_LOE_TITLE", + "content": "@WM_US_FL_WD_WIFI_ERROR_LOE_CONTENT" + }, + "19": { + "_comment": "PS Error ", + "label": "@WM_WW_FL_ERROR_PS_W", + "title": "@WM_WW_FL_ERROR_PS_TITLE_W", + "content": "@WM_WW_FL_ERROR_PS_CONTENT_S" + } + }, + "Monitoring": { + "type": "BINARY(BYTE)", + "protocol": [ + { + "_comment": "Status", + "startByte": 0, + "length": 1, + "value": "State" + }, + { + "_comment": "RemainTime - Hour", + "startByte": 1, + "length": 1, + "value": "Remain_Time_H" + }, + { + "_comment": "RemainTime - Min", + "startByte": 2, + "length": 1, + "value": "Remain_Time_M" + }, + { + "_comment": "InitialTime - Hour", + "startByte": 3, + "length": 1, + "value": "Initial_Time_H" + }, + { + "_comment": "InitialTime - Min", + "startByte": 4, + "length": 1, + "value": "Initial_Time_M" + }, + { + "_comment": "AP Course", + "startByte": 5, + "length": 1, + "value": "APCourse" + }, + { + "_comment": "Error", + "startByte": 6, + "length": 1, + "value": "Error" + }, + { + "_comment": "Wash Option", + "startByte": 7, + "length": 1, + "value": "Soil" + }, + { + "_comment": "Spin Option", + "startByte": 8, + "length": 1, + "value": "SpinSpeed" + }, + { + "_comment": "Water Temp Option", + "startByte": 9, + "length": 1, + "value": "WaterTemp" + }, + { + "_comment": "Rinse Option", + "startByte": 10, + "length": 1, + "value": "RinseOption" + }, + { + "_comment": "Dry Level Option", + "startByte": 11, + "length": 1, + "value": "DryLevel" + }, + { + "_comment": "ReserveTime - Hour", + "startByte": 12, + "length": 1, + "value": "Reserve_Time_H" + }, + { + "_comment": "ReserveTime - Min", + "startByte": 13, + "length": 1, + "value": "Reserve_Time_M" + }, + { + "_comment": "Option 1", + "startByte": 14, + "length": 1, + "value": "Option1" + }, + { + "_comment": "Option 2", + "startByte": 15, + "length": 1, + "value": "Option2" + }, + { + "_comment": "Option 3", + "startByte": 16, + "length": 1, + "value": "Option3" + }, + { + "_comment": "PreState", + "startByte": 19, + "length": 1, + "value": "PreState" + }, + { + "_comment": "Download Course Index", + "startByte": 20, + "length": 1, + "value": "SmartCourse" + }, + { + "_comment": "Tub Clean Count", + "startByte": 21, + "length": 1, + "value": "TCLCount" + }, + { + "_comment": "OP Course", + "startByte": 22, + "length": 1, + "value": "OPCourse" + }, + { + "_comment": "Load Level", + "startByte": 23, + "length": 1, + "value": "LoadLevel" + } + ] + }, + "Push": [ + { + "category": "PUSH_WM_STATE", + "label": "@CP_ALARM_PRODUCT_STATE_W", + "groupCode": "20101", + "pushList": [ + { + "0001": "PUSH_WM_COMPLETE" + }, + { + "0002": "PUSH_WM_ERROR" + }, + { + "0003": "PUSH_WM_REMOTE_START_ON" + }, + { + "0004": "PUSH_WM_REMOTE_START_OFF" + }, + { + "0005": "PUSH_WM_REMOTE_ANOTHER_ID" + } + ] + } + ], + "EnergyMonitoring": { + "option": [ + "WaterTemp", + "SpinSpeed", + "ExtraRinseCount" + ], + "powertable": { + "1": 798, + "2": 1008, + "3": 1218, + "4": 1428, + "5": 1638 + } + }, + "SmartMode": { + "MODE010": { + "_comment": "MODE_HOME_OUT", + "modeCase": 0, + "actionName": "@WM_MODE_FRESHCARE_ON_W", + "control": [ + { + "command": "OperationStart" + } + ] + }, + "MODE020": { + "_comment": "MODE_HOME_IN", + "modeCase": 0, + "actionName": "@WM_MODE_COURSE_START_W", + "control": [ + { + "command": "MODE020Start" + } + ] + } + }, + "ControlWifi": { + "type": "BINARY(BYTE)", + "action": { + "CourseDownload": { + "tag": [ + "COURSE", + "ID", + "DATA" + ], + "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]" + }, + "PowerOff": { + "cmd": "Control", + "cmdOpt": "Power", + "value": "Off" + }, + "OperationStart": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]", + "encode": true + }, + "OperationStop": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Stop" + }, + "MODE020Start": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "data": "[6,3,4,4,0,0,0,0,0,32,6,0,0,0,0,0,0,0,0,0,0]", + "encode": true + } + } + }, + "APCourse": { + "6": { + "_comment": "Normal", + "courseType": "APCourse", + "id": 6, + "OPCourse": 6, + "name": "@WM_MX_COURSE_NORMAL_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 32, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "5": { + "_comment": "Heavy Duty", + "courseType": "APCourse", + "id": 5, + "OPCourse": 7, + "name": "@WM_MX_COURSE_HEAVY_DUTY_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 33, + "function": [ + { + "value": "Soil", + "default": "5" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "4": { + "_comment": "Bedding", + "courseType": "APCourse", + "id": 4, + "OPCourse": 4, + "name": "@WM_MX_COURSE_BEDDING_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 34, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "8": { + "_comment": "Perm.Press", + "courseType": "APCourse", + "id": 8, + "OPCourse": 5, + "name": "@WM_MX_COURSE_PERMPRESS_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 40, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "10": { + "_comment": "Towels", + "courseType": "APCourse", + "id": 10, + "OPCourse": 14, + "name": "@WM_MX_COURSE_TOWELS_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 42, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "3": { + "_comment": "Sanitary", + "courseType": "APCourse", + "id": 3, + "OPCourse": 2, + "name": "@WM_MX_COURSE_SANITARY_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 35, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "7" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "2": { + "_comment": "Allergiene", + "courseType": "APCourse", + "id": 2, + "OPCourse": 3, + "name": "@WM_MX_COURSE_ALLERGIENE_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 36, + "function": [ + { + "value": "Soil", + "default": "0" + }, + { + "value": "WaterTemp", + "default": "0" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "1" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "7": { + "_comment": "Bright Whites", + "courseType": "APCourse", + "id": 7, + "OPCourse": 8, + "name": "@WM_MX_COURSE_BRIGHT_WHITES_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 37, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "1": { + "_comment": "Tub Clean", + "courseType": "APCourse", + "id": 1, + "OPCourse": 13, + "name": "@WM_MX_COURSE_TUB_CLEAN_W", + "script": "", + "freshcareEnable": false, + "controlEnable": true, + "imgIndex": 38, + "function": [ + { + "value": "Soil", + "default": "0" + }, + { + "value": "WaterTemp", + "default": "0" + }, + { + "value": "SpinSpeed", + "default": "3", + "showing": "-" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "1" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0" + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "9": { + "_comment": "Delicates", + "courseType": "APCourse", + "id": 9, + "OPCourse": 10, + "name": "@WM_MX_COURSE_DELICATES_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 41, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "11": { + "_comment": "Speed Wash", + "courseType": "APCourse", + "id": 11, + "OPCourse": 12, + "name": "@WM_MX_COURSE_SPEED_WASH_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 43, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "12": { + "_comment": "DownloadCourse", + "courseType": "APCourse", + "id": 12 + } + }, + "OPCourse": { + "0": { + "_comment": "OPCourse", + "id": "0" + }, + "1": { + "_comment": "Refresh", + "id": "1" + }, + "2": { + "_comment": "Sanitary", + "id": "2" + }, + "3": { + "_comment": "Allergiene", + "id": "3" + }, + "4": { + "_comment": "Bedding", + "id": "4" + }, + "5": { + "_comment": "Perm.Press", + "id": "5" + }, + "6": { + "_comment": "Normal", + "id": "6" + }, + "7": { + "_comment": "Heavy Duty", + "id": "7" + }, + "8": { + "_comment": "Bright Whites", + "id": "8" + }, + "9": { + "_comment": "Cold Care", + "id": "9" + }, + "10": { + "_comment": "Delicates", + "id": "10" + }, + "11": { + "_comment": "Hand Wash", + "id": "11" + }, + "12": { + "_comment": "Speed Wash", + "id": "12" + }, + "13": { + "_comment": "Tub Clean", + "id": "13" + }, + "14": { + "_comment": "Towels", + "id": "14" + }, + "15": { + "_comment": "Small Load", + "id": "15" + }, + "16": { + "_comment": "Rinse+Spin", + "id": "16" + }, + "17": { + "_comment": "Rugged", + "id": "17" + }, + "18": { + "_comment": "KidsWears", + "id": "18" + }, + "19": { + "_comment": "WorkOut Wear", + "id": "19" + }, + "20": { + "_comment": "Drain+Spin", + "id": "20" + }, + "21": { + "_comment": "Sportswear", + "id": "21" + }, + "22": { + "_comment": "Jumbo Wash", + "id": "22" + } + }, + "SmartCourse": { + "51": { + "_comment": "SmallLoad", + "courseType": "SmartCourse", + "id": 51, + "OPCourse": 15, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_W", + "script": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 46, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "52": { + "_comment": "ColorCare", + "courseType": "SmartCourse", + "id": 52, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_W", + "script": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 47, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "53": { + "_comment": "Beachwear", + "courseType": "SmartCourse", + "id": 53, + "OPCourse": 10, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_W", + "script": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 48, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "54": { + "_comment": "NewClothes", + "courseType": "SmartCourse", + "id": 54, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_W", + "script": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 49, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "55": { + "_comment": "Denim", + "courseType": "SmartCourse", + "id": 55, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_DENIM_W", + "script": "@WM_US_FL_SMARTCOURSE_DENIM_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 50, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "59": { + "_comment": "Swimwear", + "courseType": "SmartCourse", + "id": 59, + "OPCourse": 10, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_W", + "script": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 54, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "60": { + "_comment": "RainyDay", + "courseType": "SmartCourse", + "id": 60, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_W", + "script": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 55, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "61": { + "_comment": "Gym Clothes", + "courseType": "SmartCourse", + "id": 61, + "OPCourse": 21, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_W", + "script": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 56, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "63": { + "_comment": "SweatStains", + "courseType": "SmartCourse", + "id": 63, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_W", + "script": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 58, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "64": { + "_comment": "SingleGarments", + "courseType": "SmartCourse", + "id": 64, + "OPCourse": 12, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_W", + "script": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 59, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "100": { + "_comment": "BabyClothes", + "courseType": "SmartCourse", + "id": 100, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_W", + "script": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 52, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "1" + }, + { + "value": "ExtraRinse", + "default": "1", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "1" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "105": { + "_comment": "OvernightWash", + "courseType": "SmartCourse", + "id": 105, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_W", + "script": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 26, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "1", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "106": { + "_comment": "EconoWash", + "courseType": "SmartCourse", + "id": 106, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_ECONOWASH_W", + "script": "@WM_US_FL_SMARTCOURSE_ECONOWASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 112, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "1" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "107": { + "_comment": "DelicateDresses", + "courseType": "SmartCourse", + "id": 107, + "OPCourse": 10, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_W", + "script": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 113, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "108": { + "_comment": "HalfLoadWash", + "courseType": "SmartCourse", + "id": 108, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_W", + "script": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 15, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "109": { + "_comment": "FullLoadWash", + "courseType": "SmartCourse", + "id": 109, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_W", + "script": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 109, + "function": [ + { + "value": "Soil", + "default": "5" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "1" + }, + { + "value": "ExtraRinse", + "default": "1", + "visibility": "gone" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + } + } + } + }, + "gateway": { + "auth_base": "https://us.m.lgaccount.com", + "api_root": "https://aic.lgthinq.com:46030/api", + "oauth_root": "https://us.lgeapi.com", + "country": "US", + "language": "en-US" + }, + "auth": { + "access_token": "abcbc3004d39aa3cf645f82f7327dde9c2983a4dbc6579401b8a713c75fa0a9c22b71fac6a28330a11772ec0dbd43123", + "refresh_token": "def6a8af4322736f66a38bab8fbea53835e704cee96a5434b8d89415accf777ec18e79d1bbd84329988b6db57c512456" + }, + "session": "B21649540DF63EA9ABD04AC601C41A22.node_sadap_10", + "country": "US", + "language": "en-US" +} From 552b6b4de9c5905e1c5f45eca536d7c39883a072 Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Tue, 2 Jul 2019 17:56:27 -0700 Subject: [PATCH 04/10] Added soem tests. --- tests/test_client.py | 14 ++++++++++- tests/test_dryer.py | 57 ++++++++++++++++++++++++++++++++++++++++++-- wideq/client.py | 23 +++++++++++++++--- wideq/dryer.py | 50 +++++++++++++++++++++++++------------- 4 files changed, 121 insertions(+), 23 deletions(-) diff --git a/tests/test_client.py b/tests/test_client.py index 5d10eb0..21b8836 100644 --- a/tests/test_client.py +++ b/tests/test_client.py @@ -68,6 +68,18 @@ DATA = { }, 'Unexpected': {'type': 'Unexpected'}, }, + 'Course': { + "3": { + "_comment": "Normal", + "courseType": "Course", + "id": 3, + "name": "@WM_DRY27_COURSE_NORMAL_W", + "script": "", + "controlEnable": True, + "freshcareEnable": True, + "imgIndex": 61, + }, + }, } @@ -101,7 +113,7 @@ class ModelInfoTest(unittest.TestCase): def test_value_reference(self): actual = self.model_info.value('Course') - expected = ReferenceValue('Course') + expected = ReferenceValue(DATA['Course']) self.assertEqual(expected, actual) def test_value_unsupported(self): diff --git a/tests/test_dryer.py b/tests/test_dryer.py index b38ccf1..66d34f0 100644 --- a/tests/test_dryer.py +++ b/tests/test_dryer.py @@ -1,7 +1,60 @@ +import json import unittest -from wideq.dryer import DryerDevice, DryerStatus +from wideq.client import Client, DeviceInfo +from wideq.dryer import DryerDevice, DryLevel, DryerState, DryerStatus + + +POLL_DATA = { + 'Course': '5', + 'CurrentDownloadCourse': '100', + 'DryLevel': '0', + 'Error': '0', + 'Initial_Time_H': '0', + 'Initial_Time_M': '1', + 'LoadItem': '0', + 'MoreLessTime': '0', + 'Option1': '64', + 'Option2': '168', + 'PreState': '4', + 'Remain_Time_H': '0', + 'Remain_Time_M': '1', + 'SmartCourse': '0', + 'State': '0', + 'TempControl': '0', + 'TimeDry': '0', +} class DryerStatusTest(unittest.TestCase): - pass + + def setUp(self): + super().setUp() + with open('./tests/fixtures/client.json') as fp: + state = json.load(fp) + self.client = Client.load(state) + self.device_info = DeviceInfo({ + 'alias': 'DRYER', + 'deviceId': '33330ba80-107d-11e9-96c8-0051ede85d3f', + 'deviceType': 202, + 'modelJsonUrl': ( + 'https://aic.lgthinq.com:46030/api/webContents/modelJSON?' + 'modelName=RV13B6ES_D_US_WIFI&countryCode=WW&contentsId=' + 'JS11260025236447318&authKey=thinq'), + 'modelNm': 'RV13B6ES_D_US_WIFI', + }) + self.dryer = DryerDevice(self.client, self.device_info) + + def test_properties(self): + status = DryerStatus(self.dryer, POLL_DATA) + self.assertEqual(DryerState.OFF, status.state) + self.assertEqual(DryerState.END, status.previous_state) + self.assertEqual(DryLevel.OFF, status.dry_level) + self.assertFalse(status.is_on) + self.assertEqual('0', status.remain_time_hours) + self.assertEqual('1', status.remain_time_minutes) + self.assertEqual('0', status.initial_time_hours) + self.assertEqual('1', status.initial_time_minutes) + self.assertEqual('Delicates', status.course) + self.assertEqual('Off', status.smart_course) + self.assertEqual('No Error', status.error) diff --git a/wideq/client.py b/wideq/client.py index 4b5c456..987cbb9 100644 --- a/wideq/client.py +++ b/wideq/client.py @@ -6,6 +6,7 @@ import enum import requests import base64 from collections import namedtuple +from typing import Any from . import core @@ -296,6 +297,8 @@ class DeviceInfo(object): BitValue = namedtuple('BitValue', ['options']) EnumValue = namedtuple('EnumValue', ['options']) RangeValue = namedtuple('RangeValue', ['min', 'max', 'step']) +#: This is a value that is a reference to another key in the data that is at +#: the same level as the `Value` key. ReferenceValue = namedtuple('ReferenceValue', ['reference']) @@ -326,7 +329,8 @@ class ModelInfo(object): bit_values = {opt['startbit']: opt['value'] for opt in d['option']} return BitValue(bit_values) elif d['type'].lower() == 'reference': - return ReferenceValue(d['option'][0]) + ref = d['option'][0] + return ReferenceValue(self.data[ref]) else: raise ValueError("unsupported value type {}".format(d['type'])) @@ -348,6 +352,19 @@ class ModelInfo(object): options = self.value(key).options return options[value] + def reference_name(self, key: str, value: Any) -> str: + """Look up the friendly name for an encoded reference value. + + :param key: The referenced key. + :param value: The value whose name we want to look up. + :returns: The friendly name for the referenced value. + """ + value = str(value) + reference = self.value(key).reference + if value in reference: + return reference[value]['_comment'] + return '-' + @property def binary_monitor_data(self): """Check that type of monitoring is BINARY(BYTE). @@ -387,13 +404,13 @@ class Device(object): regarding the device. """ - def __init__(self, client, device): + def __init__(self, client: Client, device: DeviceInfo): """Create a wrapper for a `DeviceInfo` object associated with a `Client`. """ self.client = client self.device = device - self.model = client.model_info(device) + self.model: ModelInfo = client.model_info(device) def _set_control(self, key, value): """Set a device's control for `key` to `value`.""" diff --git a/wideq/dryer.py b/wideq/dryer.py index b826b28..b47c8dd 100644 --- a/wideq/dryer.py +++ b/wideq/dryer.py @@ -1,4 +1,5 @@ import enum +from typing import Optional from .client import Device @@ -61,8 +62,8 @@ class DryerDevice(Device): Monitoring must be started first with `monitor_start`. - :returns: Either a `DruerStatus` instance or `None` if the status is not - yet available. + :returns: Either a `DryerStatus` instance or `None` if the status is + not yet available. """ # Abort if monitoring has not started yet. if not hasattr(self, 'mon'): @@ -86,25 +87,29 @@ class DryerStatus(object): self.dryer = dryer self.data = data + def get_bit(self, key: str, index: int) -> str: + bit_value = int(self.data[key]) + bit_index = 2 ** index + mode = bin(bit_value & bit_index) + if mode == bin(0): + return 'OFF' + else: + return 'ON' + @property - def state(self): + def state(self) -> DryerState: """Get the state of the dryer.""" attr = 'State' return DryerState(self.dryer.model.enum_name(attr, self.data[attr])) @property - def pre_state(self): - """Get the previous? state of the dryer. - - - @TODO: Run some tests to determine what this value means. Is it the - previous state? If not, what would a pre-state mean? - """ + def previous_state(self) -> DryerState: + """Get the previous state of the dryer.""" attr = 'PreState' return DryerState(self.dryer.model.enum_name(attr, self.data[attr])) @property - def dry_level(self): + def dry_level(self) -> DryLevel: """Get the dry level.""" attr = 'DryLevel' return DryLevel(self.dryer.model.enum_name(attr, self.data[attr])) @@ -134,17 +139,28 @@ class DryerStatus(object): """Get the initial number of minutes.""" return self.data['Initial_Time_M'] + def _lookup_reference(self, attr: str) -> str: + """Look up a reference value for the provided attribute. + + :param attr: The attribute to find the value for. + :returns: The looked up value. + """ + value = self.dryer.model.reference_name(attr, self.data[attr]) + if value == '-': + return 'Off' + return value + @property - def course(self): + def course(self) -> str: """Get the current course.""" - raise NotImplementedError + return self._lookup_reference('Course') @property - def smart_course(self): + def smart_course(self) -> str: """Get the current smart course.""" - raise NotImplementedError + return self._lookup_reference('SmartCourse') @property - def error(self): + def error(self) -> str: """Get the current error.""" - raise NotImplementedError + return self._lookup_reference('Error') From 48684c14fdf08da16628fafe046d143f2a320794 Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Fri, 5 Jul 2019 13:58:55 -0700 Subject: [PATCH 05/10] Added a data directory with known values for washers/dryers. Also added temp_control and time_Dry properties to dryer status. --- data/dryer-US-RV13B6AM_D_US_WIFI.json | 1830 ++++++++++++++++ data/dryer-US-RV13B6ES_D_US_WIFI.json | 2287 ++++++++++++++++++++ data/washer-US-F3L2CNV4W_WIFI.json | 2618 +++++++++++++++++++++++ data/washer-US-F3L2CYV5W_WIFI.json | 2785 +++++++++++++++++++++++++ tests/test_dryer.py | 35 +- wideq/dryer.py | 34 + 6 files changed, 9573 insertions(+), 16 deletions(-) create mode 100644 data/dryer-US-RV13B6AM_D_US_WIFI.json create mode 100644 data/dryer-US-RV13B6ES_D_US_WIFI.json create mode 100644 data/washer-US-F3L2CNV4W_WIFI.json create mode 100644 data/washer-US-F3L2CYV5W_WIFI.json diff --git a/data/dryer-US-RV13B6AM_D_US_WIFI.json b/data/dryer-US-RV13B6AM_D_US_WIFI.json new file mode 100644 index 0000000..e5492b8 --- /dev/null +++ b/data/dryer-US-RV13B6AM_D_US_WIFI.json @@ -0,0 +1,1830 @@ +{ + "ControlWifi": { + "action": { + "OperationStart": { + "encode": true, + "cmd": "Control", + "value": "Start", + "cmdOpt": "Operation", + "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" + }, + "OperationStop": { + "cmd": "Control", + "value": "Stop", + "cmdOpt": "Operation" + }, + "CourseDownload": { + "tag": [ + "COURSE", + "ID", + "DATA" + ], + "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" + }, + "PowerOff": { + "cmd": "Control", + "value": "Off", + "cmdOpt": "Power" + }, + "MODE020Start": { + "encode": true, + "cmd": "Control", + "value": "Start", + "cmdOpt": "Operation", + "data": "[3,0,0,3,0,0,0,0,64,0,3,0,0,0,0,3,0,0,0,0,0]" + }, + "WrinkleCareOn": { + "cmd": "Control", + "value": "On", + "cmdOpt": "WrinkleCare" + } + }, + "type": "BINARY(BYTE)" + }, + "Monitoring": { + "type": "BINARY(BYTE)", + "protocol": [ + { + "value": "State", + "startByte": 0, + "_comment": "State", + "length": 1 + }, + { + "value": "Remain_Time_H", + "startByte": 1, + "_comment": "Remain Time H", + "length": 1 + }, + { + "value": "Remain_Time_M", + "startByte": 2, + "_comment": "Remain Time M", + "length": 1 + }, + { + "value": "Initial_Time_H", + "startByte": 3, + "_comment": "Initial Time H", + "length": 1 + }, + { + "value": "Initial_Time_M", + "startByte": 4, + "_comment": "Initial Time M", + "length": 1 + }, + { + "value": "Course", + "startByte": 5, + "_comment": "Course", + "length": 1 + }, + { + "value": "Error", + "startByte": 6, + "_comment": "Error", + "length": 1 + }, + { + "value": "DryLevel", + "startByte": 7, + "_comment": "DryLevel", + "length": 1 + }, + { + "value": "TempControl", + "startByte": 8, + "_comment": "TempControl", + "length": 1 + }, + { + "value": "TimeDry", + "startByte": 9, + "_comment": "TimeDry", + "length": 1 + }, + { + "value": "MoreLessTime", + "startByte": 11, + "_comment": "MoreLessTime", + "length": 1 + }, + { + "value": "Option1", + "startByte": 14, + "_comment": "Option1", + "length": 1 + }, + { + "value": "Option2", + "startByte": 15, + "_comment": "Option2", + "length": 1 + }, + { + "value": "PreState", + "startByte": 19, + "_comment": "PreState", + "length": 1 + }, + { + "value": "SmartCourse", + "startByte": 20, + "_comment": "SmartCourse", + "length": 1 + }, + { + "value": "LoadItem", + "startByte": 22, + "_comment": "LoadItem", + "length": 1 + }, + { + "value": "CurrentDownloadCourse", + "startByte": 23, + "_comment": "Current DownloadCourse", + "length": 1 + } + ] + }, + "Info": { + "modelType": "Dryer", + "modelName": "RV13B6AM_D_US_WIFI", + "productType": "WM", + "version": "2.6", + "model": "Victor 2 Pro(D) Wi-Fi", + "country": "US", + "networkType": "WIFI" + }, + "Module": { + "Menu": [ + "GWM_CRS01_Main", + "GWM_WCH02_Main", + "GWM_ENM01_Main", + "GCM_SDS01_SdsMain", + "GWM_SET01_Main" + ], + "WPM": { + "GWM_WCH02_Main": "001", + "GWM_SET03_NickName": "001", + "GWM_CRS02_CourseList": "001", + "GWM_WCH01_UserGuide2": "001", + "GWM_SET01_Main": "001", + "GWM_SET02_PushList": "001", + "GWM_CRS01_Main": "001", + "GWM_CEN01_Main": "001", + "GWM_FOT01_Main": "001", + "GCM_SDS01_SdsMain": "001", + "GWM_CRS03_CourseDetail": "001" + } + }, + "EnergyMonitoring": { + "option": [ + "DryLevel", + "TempControl" + ], + "powertable": { + "2": 5200, + "5": 13000, + "4": 10400, + "3": 7800, + "1": 2600 + } + }, + "SmartCourse": { + "102": { + "script": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_W", + "function": [ + { + "default": "3", + "value": "DryLevel" + }, + { + "default": "5", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 77, + "id": 102, + "_comment": "Kids' Clothes", + "Course": 12, + "courseType": "SmartCourse" + }, + "105": { + "script": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_W", + "function": [ + { + "default": "3", + "value": "DryLevel" + }, + { + "default": "2", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 64, + "id": 105, + "_comment": "Low Temp Dry", + "Course": 13, + "courseType": "SmartCourse" + }, + "110": { + "script": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_W", + "function": [ + { + "default": "3", + "value": "DryLevel" + }, + { + "default": "2", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 84, + "id": 110, + "_comment": "Rainy Day", + "Course": 13, + "courseType": "SmartCourse" + }, + "107": { + "script": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "showing": "-" + }, + { + "default": "5", + "value": "TempControl", + "showing": "-" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 81, + "id": 107, + "_comment": "Gym Clothes", + "Course": 11, + "courseType": "SmartCourse" + }, + "100": { + "script": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_W", + "function": [ + { + "default": "5", + "value": "DryLevel" + }, + { + "default": "5", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 75, + "id": 100, + "_comment": "Super Dry", + "Course": 26, + "courseType": "SmartCourse" + }, + "108": { + "script": "@WM_US_DR_SMARTCOURSE_BLANKETS_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_BLANKETS_W", + "function": [ + { + "default": "5", + "value": "DryLevel" + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 82, + "id": 108, + "_comment": "Blankets", + "Course": 14, + "courseType": "SmartCourse" + }, + "101": { + "script": "@WM_US_DR_SMARTCOURSE_DENIM_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_DENIM_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "showing": "-" + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 76, + "id": 101, + "_comment": "Denim", + "Course": 10, + "courseType": "SmartCourse" + }, + "113": { + "script": "@WM_US_DR_SMARTCOURSE_SOCKS_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_SOCKS_W", + "function": [ + { + "default": "0", + "value": "DryLevel" + }, + { + "default": "5", + "value": "TempControl" + }, + { + "default": "2", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 5, + "display": "35", + "value": "MoreLessTime" + } + ], + "downloadEnable": true, + "imgIndex": 87, + "id": 113, + "_comment": "Socks", + "Course": 18, + "courseType": "SmartCourse" + }, + "114": { + "script": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_W", + "function": [ + { + "default": "3", + "value": "DryLevel" + }, + { + "default": "2", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "1", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 88, + "id": 114, + "_comment": "Overnight Dry", + "Course": 13, + "courseType": "SmartCourse" + }, + "202": { + "script": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_W", + "function": [ + { + "default": "3", + "value": "DryLevel" + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "1", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 80, + "id": 202, + "_comment": "Wrinkle Prevention", + "Course": 3, + "courseType": "SmartCourse" + }, + "206": { + "script": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_W", + "function": [ + { + "default": "5", + "value": "DryLevel" + }, + { + "default": "5", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 177, + "id": 206, + "_comment": "Full Load Dry", + "Course": 1, + "courseType": "SmartCourse" + }, + "115": { + "script": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_SCRIPT_S", + "controlEnable": true, + "freshcareEnable": false, + "name": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_W", + "function": [ + { + "default": "5", + "value": "DryLevel" + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "downloadEnable": true, + "imgIndex": 89, + "id": 115, + "_comment": "Bedding \/ Curtains", + "Course": 7, + "courseType": "SmartCourse" + } + }, + "Value": { + "DampDrySingal": { + "default": "0", + "label": "@WM_DRY27_BUTTON_DAMP_DRY_SIGNAL_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "CurrentDownloadCourse": { + "option": [ + "SmartCourse" + ], + "type": "Reference" + }, + "Error": { + "option": [ + "Error" + ], + "type": "Reference" + }, + "EasyIron": { + "default": "0", + "label": "@WM_OPTION_EASY_IRON_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "InitialBit": { + "default": false, + "type": "Boolean" + }, + "TimeDry": { + "default": "0", + "label": "@WM_DRY27_BUTTON_TIME_DRY_W", + "type": "Enum", + "option": { + "0": "-", + "2": "30", + "3": "40", + "5": "60", + "4": "50", + "1": "20" + } + }, + "Remain_Time_M": { + "default": 0, + "option": { + "min": 0, + "max": 60 + }, + "type": "Range" + }, + "WrinkleCare": { + "default": "0", + "label": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "Remain_Time_H": { + "default": 0, + "option": { + "min": 0, + "max": 24 + }, + "type": "Range" + }, + "MoreLessTime": { + "default": 0, + "label": "@WM_OPTION_MORE_LESS_W", + "type": "Range", + "option": { + "min": 10, + "max": 100 + } + }, + "LoadItem": { + "default": "0", + "label": "@WM_DRY27_BUTTON_LOAD_ITEM_W", + "changeTable": [ + { + "option": { + "0": "0", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "1": "1" + }, + "condition": { + "default": 1 + } + }, + { + "option": { + "0": "0", + "2": "2", + "3": "3", + "5": "5", + "4": "4", + "1": "1" + }, + "condition": { + "EasyIron": 1 + } + }, + { + "option": { + "0": "0", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "1": "1" + }, + "condition": { + "TurboSteam": 1 + } + }, + { + "option": { + "0": "0", + "2": "9", + "3": "11", + "6": "18", + "5": "16", + "D": "16", + "4": "14", + "1": "7" + }, + "condition": { + "ReduceStatic": 1 + } + } + ], + "type": "Enum", + "option": { + "0": "0", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "6": "18", + "5": "16", + "D": "16", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W", + "1": "1" + } + }, + "EnergySaver": { + "default": "0", + "label": "@WM_DRY27_BUTTON_ENERGY_SAVER_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "ReduceStatic": { + "default": "0", + "label": "@WM_OPTION_REDUCE_STATIC_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "TempControl": { + "default": "0", + "label": "@WM_DRY27_BUTTON_TEMP_W", + "type": "Enum", + "option": { + "0": "-", + "2": "@WM_DRY27_TEMP_LOW_W", + "3": "@WM_DRY27_TEMP_MEDIUM_W", + "5": "@WM_DRY27_TEMP_HIGH_W", + "4": "@WM_DRY27_TEMP_MID_HIGH_W", + "1": "@WM_DRY27_TEMP_ULTRA_LOW_W" + } + }, + "TurboSteam": { + "default": "0", + "label": "@WM_DRY27_BUTTON_TURBO_STEAM_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "AntiBacterial": { + "default": "0", + "label": "@WM_DRY27_BUTTON_ANTI_BACTERIAL_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "PreState": { + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "2": "@WM_STATE_RUNNING_W", + "3": "@WM_STATE_PAUSE_W", + "50": "@WM_STATE_DRYING_W", + "56": "@WM_STATE_WRINKLECARE_W", + "5": "@WM_STATE_ERROR_W", + "4": "@WM_STATE_END_W", + "8": "@WM_STATE_SMART_DIAGNOSIS_W", + "51": "@WM_STATE_COOLING_W", + "1": "@WM_STATE_INITIAL_W" + }, + "type": "Enum" + }, + "Option1": { + "default": "0", + "option": [ + { + "default": "0", + "value": "ChildLock", + "startbit": 0, + "length": 1 + }, + { + "default": "0", + "value": "ReduceStatic", + "startbit": 1, + "length": 1 + }, + { + "default": "0", + "value": "EasyIron", + "startbit": 2, + "length": 1 + }, + { + "default": "0", + "value": "DampDrySingal", + "startbit": 3, + "length": 1 + }, + { + "default": "0", + "value": "WrinkleCare", + "startbit": 4, + "length": 1 + }, + { + "default": "0", + "value": "AntiBacterial", + "startbit": 7, + "length": 1 + } + ], + "type": "Bit" + }, + "State": { + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "2": "@WM_STATE_RUNNING_W", + "3": "@WM_STATE_PAUSE_W", + "50": "@WM_STATE_DRYING_W", + "56": "@WM_STATE_WRINKLECARE_W", + "5": "@WM_STATE_ERROR_W", + "4": "@WM_STATE_END_W", + "8": "@WM_STATE_SMART_DIAGNOSIS_W", + "51": "@WM_STATE_COOLING_W", + "1": "@WM_STATE_INITIAL_W" + }, + "type": "Enum" + }, + "RemoteStart": { + "default": "0", + "label": "@WM_OPTION_REMORT_START_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "Initial_Time_M": { + "default": 0, + "option": { + "min": 0, + "max": 60 + }, + "type": "Range" + }, + "SmartCourse": { + "option": [ + "SmartCourse" + ], + "type": "Reference" + }, + "DryLevel": { + "default": "0", + "label": "@WM_DRY27_BUTTON_DRY_LEVEL_W", + "type": "Enum", + "option": { + "0": "-", + "2": "@WM_DRY27_DRY_LEVEL_LESS_W", + "3": "@WM_DRY27_DRY_LEVEL_NORMAL_W", + "5": "@WM_DRY27_DRY_LEVEL_VERY_W", + "4": "@WM_DRY27_DRY_LEVEL_MORE_W", + "1": "@WM_DRY27_DRY_LEVEL_DAMP_W" + } + }, + "ChildLock": { + "default": "0", + "label": "@WM_DRY27_BUTTON_CHILD_LOCK_W", + "type": "Enum", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ] + }, + "Option2": { + "default": "0", + "option": [ + { + "default": "0", + "value": "RemoteStart", + "startbit": 0, + "length": 1 + }, + { + "default": "0", + "value": "EnergySaver", + "startbit": 1, + "length": 1 + }, + { + "default": "0", + "value": "TurboSteam", + "startbit": 2, + "length": 1 + }, + { + "default": "0", + "value": "InitialBit", + "startbit": 6, + "length": 1 + } + ], + "type": "Bit" + }, + "Initial_Time_H": { + "default": 0, + "option": { + "min": 0, + "max": 24 + }, + "type": "Range" + }, + "Course": { + "option": [ + "Course" + ], + "type": "Reference" + } + }, + "Error": { + "0": { + "content": "ERROR_NOERROR_CONTENT", + "label": "ERROR_NOERROR", + "title": "ERROR_NOERROR_TITLE", + "_comment": "No Error" + }, + "2": { + "content": "@WM_US_DRYER_ERROR_CONTENT_TE2_S", + "label": "@WM_US_DRYER_ERROR_TE2_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE2_W", + "_comment": "TE2" + }, + "6": { + "content": "@WM_US_DRYER_ERROR_CONTENT_TE6_S", + "label": "@WM_US_DRYER_ERROR_TE6_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE6_W", + "_comment": "TE6" + }, + "5": { + "content": "@WM_US_DRYER_ERROR_CONTENT_TE5_S", + "label": "@WM_US_DRYER_ERROR_TE5_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE5_W", + "_comment": "TE5" + }, + "19": { + "content": "@WM_US_DRYER_ERROR_CONTENT_NP_GAS_W", + "label": "@WM_US_DRYER_ERROR_NP_GAS_W", + "title": "@WM_US_DRYER_ERROR_TITLE_NP_GAS_W", + "_comment": "nP" + }, + "1": { + "content": "@WM_US_DRYER_ERROR_CONTENT_TE1_S", + "label": "@WM_US_DRYER_ERROR_TE1_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE1_W", + "_comment": "TE1" + }, + "13": { + "content": "@WM_US_DRYER_ERROR_CONTENT_PS_S", + "label": "@WM_US_DRYER_ERROR_PS_W", + "title": "@WM_US_DRYER_ERROR_TITLE_PS_W", + "_comment": "HIGHPOWER" + } + }, + "Push": [ + { + "label": "@CP_ALARM_PRODUCT_STATE_W", + "pushList": [ + { + "0000": "PUSH_WM_COMPLETE" + }, + { + "0001": "PUSH_WM_REMOTE_ANOTHER_ID" + }, + { + "0100": "PUSH_WM_ERROR" + }, + { + "0200": "PUSH_WM_REMOTE_START_OFF" + }, + { + "0201": "PUSH_WM_REMOTE_START_ON" + } + ], + "groupCode": "20201", + "category": "PUSH_WM_STATE" + } + ], + "Course": { + "2": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_TOWELS_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "id": 2, + "_comment": "Towels", + "imgIndex": 42, + "courseType": "Course" + }, + "5": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_DELICATES_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "default": "2", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "id": 5, + "_comment": "Delicates", + "imgIndex": 41, + "courseType": "Course" + }, + "3": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_NORMAL_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "1", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "id": 3, + "_comment": "Normal", + "imgIndex": 61, + "courseType": "Course" + }, + "9": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_SMALL_LOAD_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "selectable": [ + 3, + 4, + 5 + ] + }, + { + "default": "5", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "id": 9, + "_comment": "Small Load", + "imgIndex": 46, + "courseType": "Course" + }, + "16": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_SPEED_DRY_W", + "function": [ + { + "default": "0", + "value": "DryLevel" + }, + { + "default": "5", + "value": "TempControl", + "selectable": [ + 2, + 3, + 5 + ] + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": 0, + "display": "25", + "value": "MoreLessTime" + } + ], + "id": 16, + "_comment": "Speed Dry", + "imgIndex": 72, + "courseType": "Course" + }, + "4": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_PERM_PRESS_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": 0, + "value": "WrinkleCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "id": 4, + "_comment": "PermPress", + "imgIndex": 40, + "courseType": "Course" + }, + "7": { + "script": "", + "controlEnable": true, + "freshcareEnable": false, + "name": "@WM_DRY27_COURSE_BEDDING_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "selectable": [ + 3, + 4, + 5 + ] + }, + { + "default": "3", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare" + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "id": 7, + "_comment": "Bedding \/ Bulky Large", + "imgIndex": 12, + "courseType": "Course" + }, + "1": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_HEAVY_DUTY_W", + "function": [ + { + "default": "3", + "value": "DryLevel", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "default": "5", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": 0, + "value": "MoreLessTime", + "visibility": "gone" + } + ], + "id": 1, + "_comment": "Heavy Duty", + "imgIndex": 33, + "courseType": "Course" + }, + "17": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_DRY27_COURSE_AIR_DRY_W", + "function": [ + { + "default": "0", + "value": "DryLevel" + }, + { + "default": "0", + "value": "TempControl" + }, + { + "default": "0", + "value": "TimeDry" + }, + { + "default": "0", + "value": "TurboSteam" + }, + { + "default": "0", + "value": "EnergySaver" + }, + { + "default": "0", + "value": "DampDrySingal" + }, + { + "default": "0", + "value": "LoadItem", + "visibility": "gone" + }, + { + "default": "0", + "value": "WrinkleCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": 0, + "display": "30", + "value": "MoreLessTime" + } + ], + "id": 17, + "_comment": "Air Dry", + "imgIndex": 73, + "courseType": "Course" + } + }, + "Config": { + "defaultCourseId": 3, + "defaultSmartCourseId": 100, + "fota": true, + "maxDownloadCourseNum": 1, + "freshCareLabel": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", + "powerOffDownload": true, + "SmartCourseCategory": [ + { + "label": "@WM_COURSE_CATEGORY_DRYNESS_W", + "courseIdList": [ + 100, + 202 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", + "courseIdList": [ + 101, + 102, + 107, + 108, + 113, + 115 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", + "courseIdList": [ + 105, + 110, + 114 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_SIZE_W", + "courseIdList": [ + 206 + ] + } + ], + "remoteStartLabel": "@WM_OPTION_REMOTE_START_W", + "downloadPanelLabel": "@WM_STATE_DOWNLOAD_COMPLETE_W" + } +} diff --git a/data/dryer-US-RV13B6ES_D_US_WIFI.json b/data/dryer-US-RV13B6ES_D_US_WIFI.json new file mode 100644 index 0000000..87e55d3 --- /dev/null +++ b/data/dryer-US-RV13B6ES_D_US_WIFI.json @@ -0,0 +1,2287 @@ +{ + "Info": { + "productType": "WM", + "country": "US", + "modelType": "Dryer", + "model": "Victor 2 Better(D) Wi-Fi", + "modelName": "RV13B6ES_D_US_WIFI", + "networkType": "WIFI", + "version": "3.5" + }, + "Module": { + "WPM": { + "GWM_CEN01_Main": "001", + "GWM_CRS01_Main": "001", + "GWM_CRS02_CourseList": "001", + "GWM_CRS03_CourseDetail": "001", + "GWM_WCH02_Main": "001", + "GWM_WCH01_UserGuide2": "001", + "GCM_SDS01_SdsMain": "001", + "GWM_SET01_Main": "001", + "GWM_SET02_PushList": "001", + "GWM_SET03_NickName": "001", + "GWM_FOT01_Main": "001" + }, + "Menu": [ + "GWM_CRS01_Main", + "GWM_WCH02_Main", + "GWM_ENM01_Main", + "GCM_SDS01_SdsMain", + "GWM_SET01_Main" + ] + }, + "Config": { + "remoteStartLabel": "@WM_OPTION_REMOTE_START_W", + "freshCareLabel": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", + "downloadPanelLabel": "@WM_STATE_DOWNLOAD_COMPLETE_W", + "maxDownloadCourseNum": 1, + "defaultCourseId": 3, + "defaultSmartCourseId": 100, + "fota": true, + "powerOffDownload": true, + "SmartCourseCategory": [ + { + "label": "@WM_COURSE_CATEGORY_DRYNESS_W", + "courseIdList": [ + 100, + 202, + 204 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", + "courseIdList": [ + 101, + 102, + 104, + 107, + 108, + 109, + 113, + 115 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", + "courseIdList": [ + 105, + 110, + 114 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_SIZE_W", + "courseIdList": [ + 103, + 205, + 206 + ] + } + ] + }, + "Value": { + "State": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "1": "@WM_STATE_INITIAL_W", + "2": "@WM_STATE_RUNNING_W", + "3": "@WM_STATE_PAUSE_W", + "4": "@WM_STATE_END_W", + "5": "@WM_STATE_ERROR_W", + "8": "@WM_STATE_SMART_DIAGNOSIS_W", + "50": "@WM_STATE_DRYING_W", + "51": "@WM_STATE_COOLING_W", + "56": "@WM_STATE_WRINKLECARE_W" + } + }, + "PreState": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "1": "@WM_STATE_INITIAL_W", + "2": "@WM_STATE_RUNNING_W", + "3": "@WM_STATE_PAUSE_W", + "4": "@WM_STATE_END_W", + "5": "@WM_STATE_ERROR_W", + "8": "@WM_STATE_SMART_DIAGNOSIS_W", + "50": "@WM_STATE_DRYING_W", + "51": "@WM_STATE_COOLING_W", + "56": "@WM_STATE_WRINKLECARE_W" + } + }, + "DryLevel": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_DRY_LEVEL_W", + "option": { + "0": "-", + "1": "@WM_DRY27_DRY_LEVEL_DAMP_W", + "2": "@WM_DRY27_DRY_LEVEL_LESS_W", + "3": "@WM_DRY27_DRY_LEVEL_NORMAL_W", + "4": "@WM_DRY27_DRY_LEVEL_MORE_W", + "5": "@WM_DRY27_DRY_LEVEL_VERY_W" + } + }, + "TempControl": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_TEMP_W", + "option": { + "0": "-", + "1": "@WM_DRY27_TEMP_ULTRA_LOW_W", + "2": "@WM_DRY27_TEMP_LOW_W", + "3": "@WM_DRY27_TEMP_MEDIUM_W", + "4": "@WM_DRY27_TEMP_MID_HIGH_W", + "5": "@WM_DRY27_TEMP_HIGH_W" + } + }, + "TimeDry": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_TIME_DRY_W", + "option": { + "0": "-", + "1": "20", + "2": "30", + "3": "40", + "4": "50", + "5": "60" + } + }, + "LoadItem": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_LOAD_ITEM_W", + "option": { + "0": "0", + "1": "1", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W", + "5": "16", + "6": "18", + "D": "16" + }, + "changeTable": [ + { + "condition": { + "default": 1 + }, + "option": { + "0": "0", + "1": "1", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W" + } + }, + { + "condition": { + "EasyIron": 1 + }, + "option": { + "0": "0", + "1": "1", + "2": "2", + "3": "3", + "4": "4", + "5": "5" + } + }, + { + "condition": { + "TurboSteam": 1 + }, + "option": { + "0": "0", + "1": "1", + "2": "@WM_OPTION_LOAD_ITEM_3_W", + "3": "@WM_OPTION_LOAD_ITEM_5_W", + "4": "@WM_OPTION_LOAD_ITEM_BIG_W" + } + }, + { + "condition": { + "ReduceStatic": 1 + }, + "option": { + "0": "0", + "1": "7", + "2": "9", + "3": "11", + "4": "14", + "5": "16", + "6": "18", + "D": "16" + } + } + ] + }, + "ChildLock": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_CHILD_LOCK_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "RemoteStart": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_REMORT_START_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "WrinkleCare": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "AntiBacterial": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_ANTI_BACTERIAL_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "DampDrySingal": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_DAMP_DRY_SIGNAL_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "TurboSteam": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_TURBO_STEAM_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "EnergySaver": { + "type": "Enum", + "default": "0", + "label": "@WM_DRY27_BUTTON_ENERGY_SAVER_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "EasyIron": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_EASY_IRON_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "ReduceStatic": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_REDUCE_STATIC_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "InitialBit": { + "type": "Boolean", + "default": false + }, + "MoreLessTime": { + "type": "Range", + "default": 0, + "label": "@WM_OPTION_MORE_LESS_W", + "option": { + "min": 10, + "max": 100 + } + }, + "Remain_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 24 + } + }, + "Remain_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 60 + } + }, + "Initial_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 24 + } + }, + "Initial_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 60 + } + }, + "Option1": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "ChildLock" + }, + { + "startbit": 1, + "length": 1, + "default": "0", + "value": "ReduceStatic" + }, + { + "startbit": 2, + "length": 1, + "default": "0", + "value": "EasyIron" + }, + { + "startbit": 3, + "length": 1, + "default": "0", + "value": "DampDrySingal" + }, + { + "startbit": 4, + "length": 1, + "default": "0", + "value": "WrinkleCare" + }, + { + "startbit": 7, + "length": 1, + "default": "0", + "value": "AntiBacterial" + } + ] + }, + "Option2": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "RemoteStart" + }, + { + "startbit": 1, + "length": 1, + "default": "0", + "value": "EnergySaver" + }, + { + "startbit": 2, + "length": 1, + "default": "0", + "value": "TurboSteam" + }, + { + "startbit": 6, + "length": 1, + "default": "0", + "value": "InitialBit" + } + ] + }, + "Course": { + "type": "Reference", + "option": [ + "Course" + ] + }, + "SmartCourse": { + "type": "Reference", + "option": [ + "SmartCourse" + ] + }, + "CurrentDownloadCourse": { + "type": "Reference", + "option": [ + "SmartCourse" + ] + }, + "Error": { + "type": "Reference", + "option": [ + "Error" + ] + } + }, + "Error": { + "0": { + "_comment": "No Error", + "label": "ERROR_NOERROR", + "title": "ERROR_NOERROR_TITLE", + "content": "ERROR_NOERROR_CONTENT" + }, + "1": { + "_comment": "TE1", + "label": "@WM_US_DRYER_ERROR_TE1_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE1_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE1_S" + }, + "2": { + "_comment": "TE2", + "label": "@WM_US_DRYER_ERROR_TE2_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE2_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE2_S" + }, + "5": { + "_comment": "TE5", + "label": "@WM_US_DRYER_ERROR_TE5_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE5_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE5_S" + }, + "6": { + "_comment": "TE6", + "label": "@WM_US_DRYER_ERROR_TE6_W", + "title": "@WM_US_DRYER_ERROR_TITLE_TE6_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_TE6_S" + }, + "13": { + "_comment": "HIGHPOWER", + "label": "@WM_US_DRYER_ERROR_PS_W", + "title": "@WM_US_DRYER_ERROR_TITLE_PS_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_PS_S" + }, + "19": { + "_comment": "nP", + "label": "@WM_US_DRYER_ERROR_NP_GAS_W", + "title": "@WM_US_DRYER_ERROR_TITLE_NP_GAS_W", + "content": "@WM_US_DRYER_ERROR_CONTENT_NP_GAS_W" + } + }, + "Monitoring": { + "type": "BINARY(BYTE)", + "protocol": [ + { + "_comment": "State", + "startByte": 0, + "length": 1, + "value": "State" + }, + { + "_comment": "Remain Time H", + "startByte": 1, + "length": 1, + "value": "Remain_Time_H" + }, + { + "_comment": "Remain Time M", + "startByte": 2, + "length": 1, + "value": "Remain_Time_M" + }, + { + "_comment": "Initial Time H", + "startByte": 3, + "length": 1, + "value": "Initial_Time_H" + }, + { + "_comment": "Initial Time M", + "startByte": 4, + "length": 1, + "value": "Initial_Time_M" + }, + { + "_comment": "Course", + "startByte": 5, + "length": 1, + "value": "Course" + }, + { + "_comment": "Error", + "startByte": 6, + "length": 1, + "value": "Error" + }, + { + "_comment": "DryLevel", + "startByte": 7, + "length": 1, + "value": "DryLevel" + }, + { + "_comment": "TempControl", + "startByte": 8, + "length": 1, + "value": "TempControl" + }, + { + "_comment": "TimeDry", + "startByte": 9, + "length": 1, + "value": "TimeDry" + }, + { + "_comment": "MoreLessTime", + "startByte": 11, + "length": 1, + "value": "MoreLessTime" + }, + { + "_comment": "Option1", + "startByte": 14, + "length": 1, + "value": "Option1" + }, + { + "_comment": "Option2", + "startByte": 15, + "length": 1, + "value": "Option2" + }, + { + "_comment": "PreState", + "startByte": 19, + "length": 1, + "value": "PreState" + }, + { + "_comment": "SmartCourse", + "startByte": 20, + "length": 1, + "value": "SmartCourse" + }, + { + "_comment": "LoadItem", + "startByte": 22, + "length": 1, + "value": "LoadItem" + }, + { + "_comment": "Current DownloadCourse", + "startByte": 23, + "length": 1, + "value": "CurrentDownloadCourse" + } + ] + }, + "Push": [ + { + "category": "PUSH_WM_STATE", + "label": "@CP_ALARM_PRODUCT_STATE_W", + "groupCode": "20201", + "pushList": [ + { + "0000": "PUSH_WM_COMPLETE" + }, + { + "0001": "PUSH_WM_REMOTE_ANOTHER_ID" + }, + { + "0100": "PUSH_WM_ERROR" + }, + { + "0200": "PUSH_WM_REMOTE_START_OFF" + }, + { + "0201": "PUSH_WM_REMOTE_START_ON" + } + ] + } + ], + "ControlWifi": { + "type": "BINARY(BYTE)", + "action": { + "CourseDownload": { + "tag": [ + "COURSE", + "ID", + "DATA" + ], + "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" + }, + "OperationStart": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "encode": true, + "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" + }, + "OperationStop": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Stop" + }, + "PowerOff": { + "cmd": "Control", + "cmdOpt": "Power", + "value": "Off" + }, + "MODE020Start": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "encode": true, + "data": "[3,0,0,3,0,0,0,0,64,0,3,0,0,0,0,3,0,0,0,0,0]" + }, + "WrinkleCareOn": { + "cmd": "Control", + "cmdOpt": "WrinkleCare", + "value": "On" + } + } + }, + "Course": { + "1": { + "_comment": "Heavy Duty", + "courseType": "Course", + "id": 1, + "name": "@WM_DRY27_COURSE_HEAVY_DUTY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 33, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "2": { + "_comment": "Towels", + "courseType": "Course", + "id": 2, + "name": "@WM_DRY27_COURSE_TOWELS_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 42, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "4" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "3": { + "_comment": "Normal", + "courseType": "Course", + "id": 3, + "name": "@WM_DRY27_COURSE_NORMAL_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 61, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "4" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "1" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "4": { + "_comment": "PermPress", + "courseType": "Course", + "id": 4, + "name": "@WM_DRY27_COURSE_PERM_PRESS_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 40, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "5": { + "_comment": "Delicates", + "courseType": "Course", + "id": 5, + "name": "@WM_DRY27_COURSE_DELICATES_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 41, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "7": { + "_comment": "Bedding / Bulky Large", + "courseType": "Course", + "id": 7, + "name": "@WM_DRY27_COURSE_BEDDING_W", + "script": "", + "controlEnable": true, + "imgIndex": 12, + "freshcareEnable": false, + "function": [ + { + "value": "DryLevel", + "default": "3", + "selectable": [ + 3, + 4, + 5 + ] + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "8": { + "_comment": "Anti Bacterial", + "courseType": "Course", + "id": 8, + "name": "@WM_DRY27_COURSE_ANTI_BACTERIAL_W", + "script": "", + "controlEnable": true, + "imgIndex": 65, + "freshcareEnable": true, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "16": { + "_comment": "Speed Dry", + "courseType": "Course", + "id": 16, + "name": "@WM_DRY27_COURSE_SPEED_DRY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 72, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "display": "25" + } + ] + }, + "17": { + "_comment": "Air Dry", + "courseType": "Course", + "id": 17, + "name": "@WM_DRY27_COURSE_AIR_DRY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 73, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "0" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "display": "30" + } + ] + }, + "21": { + "_comment": "Steam Fresh", + "courseType": "Course", + "id": 21, + "name": "@WM_DRY27_COURSE_STEAM_FRESH_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 67, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "4", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "1", + "showing": "@CP_ON_EN_W" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "2", + "selectable": [ + 1, + 2, + 3, + 4 + ] + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "22": { + "_comment": "Steam Sanitary", + "courseType": "Course", + "id": 22, + "name": "@WM_DRY27_COURSE_STEAM_SANITARY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 66, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "1", + "showing": "@CP_ON_EN_W" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "18": { + "_comment": "Time Dry", + "courseType": "Course", + "id": 18, + "name": "@WM_DRY27_BUTTON_TIME_DRY_W", + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "visibility": "gone", + "imgIndex": 15, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "4", + "selectable": [ + 1, + 2, + 3, + 4, + 5 + ] + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + } + }, + "SmartCourse": { + "100": { + "_comment": "Super Dry", + "courseType": "SmartCourse", + "id": 100, + "Course": 26, + "name": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 75, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "101": { + "_comment": "Denim", + "courseType": "SmartCourse", + "id": 101, + "Course": 10, + "name": "@WM_US_DR_SMARTCOURSE_DENIM_W", + "script": "@WM_US_DR_SMARTCOURSE_DENIM_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 76, + "function": [ + { + "value": "DryLevel", + "default": "3", + "showing": "-" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "102": { + "_comment": "Kids' Clothes", + "courseType": "SmartCourse", + "id": 102, + "Course": 12, + "name": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_W", + "script": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 77, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "103": { + "_comment": "Small Load", + "courseType": "SmartCourse", + "id": 103, + "Course": 9, + "name": "@WM_US_DR_SMARTCOURSE_SMALL_LOAD_W", + "script": "@WM_US_DR_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 46, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "104": { + "_comment": "Ultra Delicates", + "courseType": "SmartCourse", + "id": 104, + "Course": 6, + "name": "@WM_US_DR_SMARTCOURSE_ULTRA_DELICATES_W", + "script": "@WM_US_DR_SMARTCOURSE_ULTRA_DELICATES_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 78, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "1" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "105": { + "_comment": "Low Temp Dry", + "courseType": "SmartCourse", + "id": 105, + "Course": 13, + "name": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 64, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "107": { + "_comment": "Gym Clothes", + "courseType": "SmartCourse", + "id": 107, + "Course": 11, + "name": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_W", + "script": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 81, + "function": [ + { + "value": "DryLevel", + "default": "3", + "showing": "-" + }, + { + "value": "TempControl", + "default": "5", + "showing": "-" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "108": { + "_comment": "Blankets", + "courseType": "SmartCourse", + "id": 108, + "Course": 14, + "name": "@WM_US_DR_SMARTCOURSE_BLANKETS_W", + "script": "@WM_US_DR_SMARTCOURSE_BLANKETS_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 82, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "109": { + "_comment": "Blanket Refresh", + "courseType": "SmartCourse", + "id": 109, + "Course": 18, + "name": "@WM_US_DR_SMARTCOURSE_BLANKET_REFRESH_W", + "script": "@WM_US_DR_SMARTCOURSE_BLANKET_REFRESH_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 83, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "1" + }, + { + "value": "TimeDry", + "default": "1" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "display": "20" + } + ] + }, + "110": { + "_comment": "Rainy Day", + "courseType": "SmartCourse", + "id": 110, + "Course": 13, + "name": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_W", + "script": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 84, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "113": { + "_comment": "Socks", + "courseType": "SmartCourse", + "id": 113, + "Course": 18, + "name": "@WM_US_DR_SMARTCOURSE_SOCKS_W", + "script": "@WM_US_DR_SMARTCOURSE_SOCKS_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 87, + "function": [ + { + "value": "DryLevel", + "default": "0" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "2", + "showing": "35" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 5, + "display": "35" + } + ] + }, + "114": { + "_comment": "Overnight Dry", + "courseType": "SmartCourse", + "id": 114, + "Course": 13, + "name": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 88, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "2" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "1" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "115": { + "_comment": "Bedding / Curtains", + "courseType": "SmartCourse", + "id": 115, + "Course": 7, + "name": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_W", + "script": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": false, + "imgIndex": 89, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "202": { + "_comment": "Wrinkle Prevention", + "courseType": "SmartCourse", + "id": 202, + "Course": 3, + "name": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_W", + "script": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 80, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "1" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "204": { + "_comment": "Static Reduce", + "courseType": "SmartCourse", + "id": 204, + "Course": 3, + "name": "@WM_US_DR_SMARTCOURSE_STATIC_REDUCE_W", + "script": "@WM_US_DR_SMARTCOURSE_STATIC_REDUCE_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 23, + "function": [ + { + "value": "DryLevel", + "default": "3" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "ReduceStatic", + "default": "1", + "visibility": "gone" + }, + { + "value": "LoadItem", + "default": "5", + "showing": "16" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "205": { + "_comment": "Half Load Dry", + "courseType": "SmartCourse", + "id": 205, + "Course": 3, + "name": "@WM_US_DR_SMARTCOURSE_HALF_LOAD_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_HALF_LOAD_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 176, + "function": [ + { + "value": "DryLevel", + "default": "4" + }, + { + "value": "TempControl", + "default": "3" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + }, + "206": { + "_comment": "Full Load Dry", + "courseType": "SmartCourse", + "id": 206, + "Course": 1, + "name": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_W", + "script": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_SCRIPT_S", + "downloadEnable": true, + "controlEnable": true, + "freshcareEnable": true, + "imgIndex": 177, + "function": [ + { + "value": "DryLevel", + "default": "5" + }, + { + "value": "TempControl", + "default": "5" + }, + { + "value": "TimeDry", + "default": "0" + }, + { + "value": "TurboSteam", + "default": "0" + }, + { + "value": "EnergySaver", + "default": "0" + }, + { + "value": "DampDrySingal", + "default": "0" + }, + { + "value": "LoadItem", + "default": "0", + "visibility": "gone" + }, + { + "value": "WrinkleCare", + "default": "0" + }, + { + "value": "MoreLessTime", + "default": 0, + "visibility": "gone" + } + ] + } + }, + "EnergyMonitoring": { + "option": [ + "DryLevel", + "TempControl" + ], + "powertable": { + "1": 2600, + "2": 5200, + "3": 7800, + "4": 10400, + "5": 13000 + } + } +} +} diff --git a/data/washer-US-F3L2CNV4W_WIFI.json b/data/washer-US-F3L2CNV4W_WIFI.json new file mode 100644 index 0000000..927bc9e --- /dev/null +++ b/data/washer-US-F3L2CNV4W_WIFI.json @@ -0,0 +1,2618 @@ +{ + "Module": { + "Menu": [ + "GWM_CRS01_Main", + "GWM_WCH01_Main", + "GWM_ENM01_Main", + "GCM_SDS01_SdsMain", + "GWM_SET01_Main" + ], + "WPM": { + "GWM_CRS01_Main": "001", + "GWM_CRS02_CourseList": "001", + "GWM_ENM01_Main": "001", + "GWM_SET01_Main": "001", + "GWM_WCH01_Main": "001", + "GWM_SET02_PushList": "001", + "GWM_SET03_NickName": "001", + "GWM_CEN01_Main": "001", + "GCM_SDS01_SdsMain": "001", + "GWM_WCH01_UserGuide2": "001", + "GWM_CRS03_CourseDetail": "001" + } + }, + "OPCourse": { + "3": { + "id": "3", + "_comment": "Allergiene" + }, + "20": { + "id": "20", + "_comment": "Drain+Spin" + }, + "18": { + "id": "18", + "_comment": "KidsWears" + }, + "0": { + "id": "0", + "_comment": "OPCourse" + }, + "14": { + "id": "14", + "_comment": "Towels" + }, + "13": { + "id": "13", + "_comment": "Tub Clean" + }, + "16": { + "id": "16", + "_comment": "Rinse+Spin" + }, + "11": { + "id": "11", + "_comment": "Hand Wash" + }, + "21": { + "id": "21", + "_comment": "Sportswear" + }, + "4": { + "id": "4", + "_comment": "Bedding" + }, + "17": { + "id": "17", + "_comment": "Rugged" + }, + "12": { + "id": "12", + "_comment": "Speed Wash" + }, + "2": { + "id": "2", + "_comment": "Sanitary" + }, + "5": { + "id": "5", + "_comment": "Perm.Press" + }, + "9": { + "id": "9", + "_comment": "Cold Care" + }, + "15": { + "id": "15", + "_comment": "Small Load" + }, + "7": { + "id": "7", + "_comment": "Heavy Duty" + }, + "1": { + "id": "1", + "_comment": "Refresh" + }, + "19": { + "id": "19", + "_comment": "WorkOut Wear" + }, + "6": { + "id": "6", + "_comment": "Normal" + }, + "22": { + "id": "22", + "_comment": "Jumbo Wash" + }, + "10": { + "id": "10", + "_comment": "Delicates" + }, + "8": { + "id": "8", + "_comment": "Bright Whites" + } + }, + "Error": { + "2": { + "content": "@WM_US_FL_ERROR_IE_CONTENT_S", + "label": "@WM_US_FL_ERROR_IE_W", + "title": "@WM_US_FL_ERROR_IE_TITLE_W", + "_comment": "IE Error - No Fill Error" + }, + "5": { + "content": "@WM_US_FL_ERROR_FE_CONTENT_S", + "label": "@WM_US_FL_ERROR_FE_W", + "title": "@WM_US_FL_ERROR_FE_TITLE_W", + "_comment": "FE Error - Overfill Error" + }, + "9": { + "content": "@WM_US_FL_ERROR_CE_CONTENT_S", + "label": "@WM_US_FL_ERROR_CE_W", + "title": "@WM_US_FL_ERROR_CE_TITLE_W", + "_comment": "CE Error" + }, + "15": { + "content": "@WM_US_FL_ERROR_EE_CONTENT_S", + "label": "@WM_US_FL_ERROR_EE_W", + "title": "@WM_US_FL_ERROR_EE_TITLE_W", + "_comment": "EE Error - EEPROM Error" + }, + "14": { + "content": "@WM_US_FL_ERROR_AE_CONTENT_S", + "label": "@WM_US_FL_ERROR_AE_W", + "title": "@WM_US_FL_ERROR_AE_TITLE_W", + "_comment": "AE Error" + }, + "7": { + "content": "@WM_US_FL_ERROR_TE_CONTENT_S", + "label": "@WM_US_FL_ERROR_TE_W", + "title": "@WM_US_FL_ERROR_TE_TITLE_W", + "_comment": "tE Error - Thermistor Error" + }, + "1": { + "content": "@WM_US_FL_ERROR_DE2_CONTENT_S", + "label": "@WM_US_FL_ERROR_DE2_W", + "title": "@WM_US_FL_ERROR_DE2_TITLE_W", + "_comment": "DE2 Error - Door Lock Error" + }, + "18": { + "content": "@WM_US_FL_WD_WIFI_ERROR_LOE_CONTENT", + "label": "@WM_US_FL_WD_WIFI_ERROR_LOE", + "title": "@WM_US_FL_WD_WIFI_ERROR_LOE_TITLE", + "_comment": "LOE Error - Sliding Lid Open Error" + }, + "0": { + "content": "ERROR_NOERROR_CONTENT", + "label": "ERROR_NOERROR", + "title": "ERROR_NOERROR_TITLE", + "_comment": "No Error" + }, + "19": { + "content": "@WM_WW_FL_ERROR_PS_CONTENT_S", + "label": "@WM_WW_FL_ERROR_PS_W", + "title": "@WM_WW_FL_ERROR_PS_TITLE_W", + "_comment": "PS Error " + }, + "3": { + "content": "@WM_US_FL_ERROR_OE_CONTENT_S", + "label": "@WM_US_FL_ERROR_OE_W", + "title": "@WM_US_FL_ERROR_OE_TITLE_W", + "_comment": "OE Error - Not Draining Error" + }, + "12": { + "content": "@WM_US_FL_ERROR_FF_CONTENT_S", + "label": "@WM_US_FL_ERROR_FF_W", + "title": "@WM_US_FL_ERROR_FF_TITLE_W", + "_comment": "FF Error - Freeze Error" + }, + "6": { + "content": "@WM_US_FL_ERROR_PE_CONTENT_S", + "label": "@WM_US_FL_ERROR_PE_W", + "title": "@WM_US_FL_ERROR_PE_TITLE_W", + "_comment": "PE Error - Water Sensor Error" + }, + "16": { + "content": "@WM_US_FL_ERROR_SUD_CONTENT_S", + "label": "@WM_US_FL_ERROR_SUD_W", + "title": "@WM_US_FL_ERROR_SUD_TITLE_W", + "_comment": "Sud Error - Suds Error" + }, + "4": { + "content": "@WM_US_FL_ERROR_UE_CONTENT_S", + "label": "@WM_US_FL_ERROR_UE_W", + "title": "@WM_US_FL_ERROR_UE_TITLE_W", + "_comment": "UE Error - Out of Balance Load" + }, + "10": { + "content": "@WM_US_FL_ERROR_DHE_CONTENT_S", + "label": "@WM_US_FL_ERROR_DHE_W", + "title": "@WM_US_FL_ERROR_DHE_TITLE_W", + "_comment": "dHE Error" + }, + "8": { + "content": "@WM_US_FL_ERROR_LE_CONTENT_S", + "label": "@WM_US_FL_ERROR_LE_W", + "title": "@WM_US_FL_ERROR_LE_TITLE_W", + "_comment": "LE Error - Locked Motor Error" + }, + "11": { + "content": "@WM_US_FL_ERROR_PF_CONTENT_S", + "label": "@WM_US_FL_ERROR_PF_W", + "title": "@WM_US_FL_ERROR_PF_TITLE_W", + "_comment": "PF Error - Power Failure Error" + }, + "17": { + "content": "@WM_US_FL_ERROR_DE1_CONTENT_S", + "label": "@WM_US_FL_ERROR_DE1_W", + "title": "@WM_US_FL_ERROR_DE1_TITLE_W", + "_comment": "DE1 Error - Door Open Error" + }, + "13": { + "content": "@WM_US_FL_ERROR_DCE_CONTENT_S", + "label": "@WM_US_FL_ERROR_DCE_W", + "title": "@WM_US_FL_ERROR_DCE_TITLE_W", + "_comment": "dCE Error" + } + }, + "Push": [ + { + "label": "@CP_ALARM_PRODUCT_STATE_W", + "pushList": [ + { + "0001": "PUSH_WM_COMPLETE" + }, + { + "0002": "PUSH_WM_ERROR" + }, + { + "0003": "PUSH_WM_REMOTE_START_ON" + }, + { + "0004": "PUSH_WM_REMOTE_START_OFF" + }, + { + "0005": "PUSH_WM_REMOTE_ANOTHER_ID" + } + ], + "groupCode": "20101", + "category": "PUSH_WM_STATE" + } + ], + "SmartMode": { + "MODE020": { + "modeCase": 0, + "_comment": "MODE_HOME_IN", + "control": [ + { + "command": "MODE020Start" + } + ], + "actionName": "@WM_MODE_COURSE_START_W" + }, + "MODE010": { + "modeCase": 0, + "_comment": "MODE_HOME_OUT", + "control": [ + { + "command": "OperationStart" + } + ], + "actionName": "@WM_MODE_FRESHCARE_ON_W" + } + }, + "ControlWifi": { + "action": { + "CourseDownload": { + "tag": [ + "COURSE", + "ID", + "DATA" + ], + "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]" + }, + "OperationStart": { + "encode": true, + "cmd": "Control", + "value": "Start", + "cmdOpt": "Operation", + "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]" + }, + "OperationStop": { + "cmd": "Control", + "value": "Stop", + "cmdOpt": "Operation" + }, + "MODE020Start": { + "encode": true, + "cmd": "Control", + "value": "Start", + "cmdOpt": "Operation", + "data": "[5,3,4,4,0,0,0,0,0,32,6,0,0,0,0,0,0,0,0,0,0]" + }, + "PowerOff": { + "cmd": "Control", + "value": "Off", + "cmdOpt": "Power" + } + }, + "type": "BINARY(BYTE)" + }, + "Value": { + "FreshCare": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_MX_OPTION_FRESH_CARE_F3L2CNV4W_WIFI_W" + }, + "Error": { + "option": [ + "Error" + ], + "type": "Reference" + }, + "Reserve_Time_H": { + "default": 0, + "option": { + "min": 1, + "max": 19 + }, + "type": "Range", + "label": "@WM_MX_OPTION_DELAY_WASH_F3L2CNV4W_WIFI_W" + }, + "InitialBit": { + "default": false, + "type": "Boolean" + }, + "PreWash": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_MX_OPTION_PRE_WASH_F3L2CNV4W_WIFI_W" + }, + "SpinSpeed": { + "default": "0", + "option": { + "0": "-", + "2": "@WM_MX_OPTION_SPIN_LOW_F3L2CNV4W_WIFI_W", + "3": "@WM_MX_OPTION_SPIN_MEDIUM_F3L2CNV4W_WIFI_W", + "5": "@WM_MX_OPTION_SPIN_EXTRA_HIGH_F3L2CNV4W_WIFI_W", + "4": "@WM_MX_OPTION_SPIN_HIGH_F3L2CNV4W_WIFI_W", + "1": "@WM_MX_OPTION_SPIN_NO_SPIN_F3L2CNV4W_WIFI_W" + }, + "type": "Enum", + "label": "@WM_MX_OPTION_SPIN_SPEED_F3L2CNV4W_WIFI_W" + }, + "RinseOption": { + "default": "0", + "option": [ + { + "default": "0", + "value": "RinseCount", + "startbit": 0, + "length": 4 + }, + { + "default": "0", + "value": "ExtraRinseCount", + "startbit": 4, + "length": 4 + } + ], + "type": "Bit" + }, + "WaterTemp": { + "default": "0", + "option": { + "0": "-", + "2": "@WM_MX_OPTION_TEMP_COLD_F3L2CNV4W_WIFI_W", + "3": "@WM_MX_OPTION_TEMP_SEMI_WARM_F3L2CNV4W_WIFI_W", + "6": "@WM_MX_OPTION_TEMP_HOT_F3L2CNV4W_WIFI_W", + "5": "@WM_MX_OPTION_TEMP_WARM_F3L2CNV4W_WIFI_W", + "4": "@WM_MX_OPTION_TEMP_WARM_F3L2CNV4W_WIFI_W", + "7": "@WM_MX_OPTION_TEMP_EXTRA_HOT_F3L2CNV4W_WIFI_W", + "1": "@WM_MX_OPTION_TEMP_TAP_COLD_F3L2CNV4W_WIFI_W" + }, + "type": "Enum", + "label": "@WM_MX_OPTION_WASH_TEMP_F3L2CNV4W_WIFI_W" + }, + "ExtraRinse": { + "default": "0", + "option": { + "0": "@WM_OPTION_EXTRA_RINSE_0_W", + "2": "@WM_OPTION_EXTRA_RINSE_2_W", + "3": "@WM_OPTION_EXTRA_RINSE_3_W", + "1": "@WM_OPTION_EXTRA_RINSE_1_W" + }, + "type": "Enum", + "label": "@WM_MX_OPTION_EXTRA_RINSE_F3L2CNV4W_WIFI_W" + }, + "Reserve_Time_M": { + "default": 0, + "option": { + "min": 0, + "max": 59 + }, + "type": "Range" + }, + "Remain_Time_M": { + "default": 0, + "option": { + "min": 0, + "max": 59 + }, + "type": "Range" + }, + "Remain_Time_H": { + "default": 0, + "option": { + "min": 0, + "max": 30 + }, + "type": "Range" + }, + "ChildLock": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_OPTION_CHILDLOCK_W" + }, + "ExtraRinseCount": { + "default": "0", + "option": { + "0": "-", + "2": "@WM_OPTION_EXTRA_RINSE_2_W", + "3": "@WM_OPTION_EXTRA_RINSE_3_W", + "1": "@WM_OPTION_EXTRA_RINSE_1_W" + }, + "type": "Enum", + "label": "@WM_MX_OPTION_EXTRA_RINSE_F3L2CNV4W_WIFI_W" + }, + "State": { + "default": "0", + "option": { + "5": "@WM_STATE_INITIAL_W", + "23": "@WM_STATE_RUNNING_W", + "30": "@WM_STATE_RINSING_W", + "79": "@WM_STATE_SMART_DIAG_W", + "6": "@WM_STATE_PAUSE_W", + "20": "@WM_STATE_DETECTING_W", + "81": "@WM_STATE_TUBCLEAN_COUNT_ALRAM_W", + "7": "@WM_STATE_ERROR_AUTO_OFF_W", + "60": "@WM_STATE_END_W", + "0": "@WM_STATE_POWER_OFF_W", + "40": "@WM_STATE_SPINNING_W", + "101": "@WM_STATE_SMART_DIAGDATA_W", + "22": "@WM_STATE_LOAD_DISPLAY_W", + "50": "@WM_STATE_DRYING_W", + "10": "@WM_STATE_RESERVE_W", + "21": "@WM_STATE_ADD_DRAIN_W", + "31": "@WM_STATE_RINSE_HOLD_W", + "61": "@WM_STATE_FRESHCARE_W" + }, + "type": "Enum" + }, + "TCLCount": { + "default": 0, + "option": { + "min": 0, + "max": 60 + }, + "type": "Range" + }, + "ColdWash": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_MX_OPTION_COLD_WASH_F3L2CNV4W_WIFI_W" + }, + "Initial_Time_M": { + "default": 0, + "option": { + "min": 0, + "max": 59 + }, + "type": "Range" + }, + "OPCourse": { + "option": [ + "OPCourse" + ], + "type": "Reference" + }, + "SmartCourse": { + "option": [ + "SmartCourse" + ], + "type": "Reference" + }, + "RinseCount": { + "default": "0", + "option": { + "0": "@WM_OPTION_RINSE_COUNT_0_TIME_W", + "2": "@WM_OPTION_RINSE_COUNT_2_TIME_W", + "3": "@WM_OPTION_RINSE_COUNT_3_TIME_W", + "1": "@WM_OPTION_RINSE_COUNT_1_TIME_W" + }, + "type": "Enum", + "label": "@WM_OPTION_RINSE_COUNT_W" + }, + "PreState": { + "default": "0", + "option": { + "5": "@WM_STATE_INITIAL_W", + "23": "@WM_STATE_RUNNING_W", + "30": "@WM_STATE_RINSING_W", + "79": "@WM_STATE_SMART_DIAG_W", + "6": "@WM_STATE_PAUSE_W", + "20": "@WM_STATE_DETECTING_W", + "81": "@WM_STATE_TUBCLEAN_COUNT_ALRAM_W", + "7": "@WM_STATE_ERROR_AUTO_OFF_W", + "60": "@WM_STATE_END_W", + "0": "@WM_STATE_POWER_OFF_W", + "40": "@WM_STATE_SPINNING_W", + "101": "@WM_STATE_SMART_DIAGDATA_W", + "22": "@WM_STATE_LOAD_DISPLAY_W", + "50": "@WM_STATE_DRYING_W", + "10": "@WM_STATE_RESERVE_W", + "21": "@WM_STATE_ADD_DRAIN_W", + "31": "@WM_STATE_RINSE_HOLD_W", + "61": "@WM_STATE_FRESHCARE_W" + }, + "type": "Enum" + }, + "Option1": { + "default": "0", + "option": [ + { + "default": "0", + "value": "ChildLock", + "startbit": 0, + "length": 1 + }, + { + "default": "0", + "value": "Steam", + "startbit": 2, + "length": 1 + }, + { + "default": "0", + "value": "PreWash", + "startbit": 3, + "length": 1 + }, + { + "default": "0", + "value": "ExtraRinse", + "startbit": 6, + "length": 1 + }, + { + "default": "0", + "value": "TurboWash", + "startbit": 7, + "length": 1 + } + ], + "type": "Bit" + }, + "Rinse_Spin": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_MX_OPTION_RINSE_SPIN_F3L2CNV4W_WIFI_W" + }, + "TurboWash": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_MX_OPTION_TURBO_WASH_F3L2CNV4W_WIFI_W" + }, + "RemoteStart": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_OPTION_REMOTE_START_W" + }, + "Option3": { + "default": "0", + "option": [ + { + "default": "0", + "value": "InitialBit", + "startbit": 5, + "length": 1 + } + ], + "type": "Bit" + }, + "Soil": { + "default": "0", + "option": { + "0": "-", + "2": "@WM_MX_OPTION_SOIL_LIGHT_NORMAL_F3L2CNV4W_WIFI_W", + "3": "@WM_MX_OPTION_SOIL_NORMAL_F3L2CNV4W_WIFI_W", + "5": "@WM_MX_OPTION_SOIL_HEAVY_F3L2CNV4W_WIFI_W", + "4": "@WM_MX_OPTION_SOIL_NORMAL_HEAVY_F3L2CNV4W_WIFI_W", + "1": "@WM_MX_OPTION_SOIL_LIGHT_F3L2CNV4W_WIFI_W" + }, + "type": "Enum", + "label": "@WM_MX_OPTION_SOIL_F3L2CNV4W_WIFI_W" + }, + "DryLevel": { + "default": "0", + "option": { + "0": "-", + "5": "@WM_MX_OPTION_DRY_TURBO_F3L2CNV4W_WIFI_W", + "9": "@WM_OPTION_DRY_TIME_90_W", + "6": "@WM_MX_OPTION_DRY_WIND_F3L2CNV4W_WIFI_W", + "7": "@WM_OPTION_DRY_TIME_30_W", + "10": "@WM_OPTION_DRY_TIME_120_W", + "8": "@WM_OPTION_DRY_TIME_60_W", + "11": "@WM_OPTION_DRY_TIME_150_W" + }, + "type": "Enum", + "label": "@WM_MX_OPTION_DRY_LEVEL_F3L2CNV4W_WIFI_W" + }, + "APCourse": { + "option": [ + "APCourse" + ], + "type": "Reference" + }, + "Option2": { + "default": "0", + "option": [ + { + "default": "0", + "value": "FreshCare", + "startbit": 0, + "length": 1 + }, + { + "default": "0", + "value": "ColdWash", + "startbit": 4, + "length": 1 + }, + { + "default": "0", + "value": "RemoteStart", + "startbit": 7, + "length": 1 + } + ], + "type": "Bit" + }, + "Initial_Time_H": { + "default": 0, + "option": { + "min": 0, + "max": 30 + }, + "type": "Range" + }, + "Steam": { + "default": "0", + "option": [ + "@CP_OFF_EN_W", + "@CP_ON_EN_W" + ], + "type": "Enum", + "label": "@WM_MX_OPTION_STEAM_F3L2CNV4W_WIFI_W" + } + }, + "Info": { + "networkType": "WIFI", + "modelType": "FL", + "version": "1.8", + "productType": "WM", + "model": "Victor 799", + "country": "US", + "modelName": "F3L2CNV4W_WIFI" + }, + "EnergyMonitoring": { + "option": [ + "WaterTemp", + "SpinSpeed", + "ExtraRinseCount" + ], + "powertable": { + "2": 1008, + "5": 1638, + "4": 1428, + "3": 1218, + "1": 798 + } + }, + "SmartCourse": { + "55": { + "script": "@WM_US_FL_SMARTCOURSE_DENIM_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_DENIM_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "3", + "value": "SpinSpeed" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 55, + "_comment": "Denim", + "imgIndex": 50, + "courseType": "SmartCourse" + }, + "109": { + "script": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_W", + "function": [ + { + "default": "5", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "1", + "value": "ExtraRinseCount" + }, + { + "default": "1", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 109, + "_comment": "FullLoadWash", + "imgIndex": 109, + "courseType": "SmartCourse" + }, + "105": { + "script": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "2", + "value": "SpinSpeed" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "1", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 105, + "_comment": "OvernightWash", + "imgIndex": 26, + "courseType": "SmartCourse" + }, + "107": { + "script": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 10, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "2", + "value": "SpinSpeed" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 107, + "_comment": "DelicateDresses", + "imgIndex": 113, + "courseType": "SmartCourse" + }, + "51": { + "script": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 15, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 51, + "_comment": "SmallLoad", + "imgIndex": 46, + "courseType": "SmartCourse" + }, + "60": { + "script": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 60, + "_comment": "RainyDay", + "imgIndex": 55, + "courseType": "SmartCourse" + }, + "100": { + "script": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "6", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "1", + "value": "ExtraRinseCount" + }, + { + "default": "1", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "1", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 100, + "_comment": "BabyClothes", + "imgIndex": 52, + "courseType": "SmartCourse" + }, + "53": { + "script": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 10, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "3", + "value": "SpinSpeed" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 53, + "_comment": "Beachwear", + "imgIndex": 48, + "courseType": "SmartCourse" + }, + "63": { + "script": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 63, + "_comment": "SweatStains", + "imgIndex": 58, + "courseType": "SmartCourse" + }, + "106": { + "script": "@WM_US_FL_SMARTCOURSE_ECONOWASH_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_ECONOWASH_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "1", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 106, + "_comment": "EconoWash", + "imgIndex": 112, + "courseType": "SmartCourse" + }, + "64": { + "script": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 12, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "6", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 64, + "_comment": "SingleGarments", + "imgIndex": 59, + "courseType": "SmartCourse" + }, + "108": { + "script": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 108, + "_comment": "HalfLoadWash", + "imgIndex": 15, + "courseType": "SmartCourse" + }, + "52": { + "script": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "3", + "value": "SpinSpeed" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 52, + "_comment": "ColorCare", + "imgIndex": 47, + "courseType": "SmartCourse" + }, + "54": { + "script": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 6, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "2", + "value": "SpinSpeed" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 54, + "_comment": "NewClothes", + "imgIndex": 49, + "courseType": "SmartCourse" + }, + "59": { + "script": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 10, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "2", + "value": "SpinSpeed" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 59, + "_comment": "Swimwear", + "imgIndex": 54, + "courseType": "SmartCourse" + }, + "61": { + "script": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", + "downloadEnable": true, + "OPCourse": 21, + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "3", + "value": "SpinSpeed" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "APCourse": 10, + "id": 61, + "_comment": "Gym Clothes", + "imgIndex": 56, + "courseType": "SmartCourse" + } + }, + "Monitoring": { + "type": "BINARY(BYTE)", + "protocol": [ + { + "value": "State", + "startByte": 0, + "_comment": "Status", + "length": 1 + }, + { + "value": "Remain_Time_H", + "startByte": 1, + "_comment": "RemainTime - Hour", + "length": 1 + }, + { + "value": "Remain_Time_M", + "startByte": 2, + "_comment": "RemainTime - Min", + "length": 1 + }, + { + "value": "Initial_Time_H", + "startByte": 3, + "_comment": "InitialTime - Hour", + "length": 1 + }, + { + "value": "Initial_Time_M", + "startByte": 4, + "_comment": "InitialTime - Min", + "length": 1 + }, + { + "value": "APCourse", + "startByte": 5, + "_comment": "AP Course", + "length": 1 + }, + { + "value": "Error", + "startByte": 6, + "_comment": "Error", + "length": 1 + }, + { + "value": "Soil", + "startByte": 7, + "_comment": "Wash Option", + "length": 1 + }, + { + "value": "SpinSpeed", + "startByte": 8, + "_comment": "Spin Option", + "length": 1 + }, + { + "value": "WaterTemp", + "startByte": 9, + "_comment": "Water Temp Option", + "length": 1 + }, + { + "value": "RinseOption", + "startByte": 10, + "_comment": "Rinse Option", + "length": 1 + }, + { + "value": "DryLevel", + "startByte": 11, + "_comment": "Dry Level Option", + "length": 1 + }, + { + "value": "Reserve_Time_H", + "startByte": 12, + "_comment": "ReserveTime - Hour", + "length": 1 + }, + { + "value": "Reserve_Time_M", + "startByte": 13, + "_comment": "ReserveTime - Min", + "length": 1 + }, + { + "value": "Option1", + "startByte": 14, + "_comment": "Option 1", + "length": 1 + }, + { + "value": "Option2", + "startByte": 15, + "_comment": "Option 2", + "length": 1 + }, + { + "value": "Option3", + "startByte": 16, + "_comment": "Option 3", + "length": 1 + }, + { + "value": "PreState", + "startByte": 19, + "_comment": "PreState", + "length": 1 + }, + { + "value": "SmartCourse", + "startByte": 20, + "_comment": "Download Course Index", + "length": 1 + }, + { + "value": "TCLCount", + "startByte": 21, + "_comment": "Tub Clean Count", + "length": 1 + }, + { + "value": "OPCourse", + "startByte": 22, + "_comment": "OP Course", + "length": 1 + }, + { + "value": "LoadLevel", + "startByte": 23, + "_comment": "Load Level", + "length": 1 + } + ] + }, + "APCourse": { + "2": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_BRIGHT_WHITES_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "6", + "value": "WaterTemp" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 8, + "id": 2, + "_comment": "Bright Whites", + "imgIndex": 37, + "courseType": "APCourse" + }, + "5": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_NORMAL_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 6, + "id": 5, + "_comment": "Normal", + "imgIndex": 32, + "courseType": "APCourse" + }, + "9": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_SPEED_WASH_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "1", + "value": "Soil" + }, + { + "default": "6", + "value": "WaterTemp" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 12, + "id": 9, + "_comment": "Speed Wash", + "imgIndex": 43, + "courseType": "APCourse" + }, + "6": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_PERMPRESS_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "3", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 5, + "id": 6, + "_comment": "Perm.Press", + "imgIndex": 40, + "courseType": "APCourse" + }, + "7": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_DELICATES_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "2", + "value": "WaterTemp" + }, + { + "default": "3", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 10, + "id": 7, + "_comment": "Delicates", + "imgIndex": 41, + "courseType": "APCourse" + }, + "4": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_HEAVY_DUTY_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "5", + "value": "Soil" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 7, + "id": 4, + "_comment": "Heavy Duty", + "imgIndex": 33, + "courseType": "APCourse" + }, + "10": { + "id": 10, + "_comment": "DownloadCourse", + "courseType": "APCourse" + }, + "8": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_TOWELS_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 14, + "id": 8, + "_comment": "Towels", + "imgIndex": 42, + "courseType": "APCourse" + }, + "3": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_BEDDING_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "3", + "value": "Soil" + }, + { + "default": "4", + "value": "WaterTemp" + }, + { + "default": "3", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 4, + "id": 3, + "_comment": "Bedding", + "imgIndex": 34, + "courseType": "APCourse" + }, + "11": { + "script": "", + "controlEnable": true, + "freshcareEnable": true, + "name": "@WM_MX_COURSE_NORMAL_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "0", + "value": "Soil" + }, + { + "default": "0", + "value": "WaterTemp" + }, + { + "default": "5", + "value": "SpinSpeed" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare", + "selectable": [ + 0, + 1 + ] + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 6, + "visibility": "gone", + "id": 11, + "_comment": "Spin Only", + "imgIndex": 184, + "courseType": "APCourse" + }, + "1": { + "script": "", + "controlEnable": true, + "freshcareEnable": false, + "name": "@WM_MX_COURSE_TUB_CLEAN_F3L2CNV4W_WIFI_W", + "function": [ + { + "default": "0", + "value": "Soil" + }, + { + "default": "0", + "value": "WaterTemp" + }, + { + "default": "3", + "value": "SpinSpeed", + "showing": "-" + }, + { + "default": "0", + "value": "RinseCount", + "visibility": "gone" + }, + { + "default": "0", + "value": "Rinse_Spin", + "visibility": "gone" + }, + { + "default": "0", + "value": "ExtraRinseCount" + }, + { + "default": "0", + "value": "PreWash" + }, + { + "default": "0", + "value": "ColdWash" + }, + { + "default": "0", + "value": "ExtraRinse", + "visibility": "gone" + }, + { + "default": "0", + "value": "FreshCare" + }, + { + "default": "0", + "value": "Reserve_Time_H" + } + ], + "OPCourse": 13, + "id": 1, + "_comment": "Tub Clean", + "imgIndex": 38, + "courseType": "APCourse" + } + }, + "Config": { + "expectedStartTime": true, + "defaultSmartCourseId": 51, + "maxDownloadCourseNum": 1, + "defaultCourseId": 5, + "SmartCourseCategory": [ + { + "label": "@WM_COURSE_CATEGORY_SIZE_W", + "courseIdList": [ + 51, + 64, + 108, + 109 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_STAIN_W", + "courseIdList": [ + 61, + 63, + 100 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", + "courseIdList": [ + 52, + 53, + 54, + 55, + 59, + 107 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", + "courseIdList": [ + 60, + 105, + 106 + ] + } + ], + "tubCleanCourseId": 1, + "downloadCourseAPId": 10, + "fota": true, + "freshCareCancelable": true, + "freshCareLabel": "@WM_MX_OPTION_FRESH_CARE_F3L2CNV4W_WIFI_W", + "remoteStartLabel": "@WM_MX_OPTION_REMOTE_START_F3L2CNV4W_WIFI_W", + "downloadPanelLabel": "@WM_MX_TERM_DOWNLOADED_F3L2CNV4W_WIFI_W" + } +} diff --git a/data/washer-US-F3L2CYV5W_WIFI.json b/data/washer-US-F3L2CYV5W_WIFI.json new file mode 100644 index 0000000..9d6b6cd --- /dev/null +++ b/data/washer-US-F3L2CYV5W_WIFI.json @@ -0,0 +1,2785 @@ +{ + "Info": { + "productType": "WM", + "country": "US", + "modelType": "FL", + "model": "Victor 899", + "modelName": "F3L2CYV5W_WIFI", + "networkType": "WIFI", + "version": "3.3" + }, + "Module": { + "WPM": { + "GWM_CEN01_Main": "001", + "GWM_CRS01_Main": "001", + "GWM_CRS02_CourseList": "001", + "GWM_CRS03_CourseDetail": "001", + "GWM_WCH01_Main": "001", + "GWM_WCH01_UserGuide2": "001", + "GWM_ENM01_Main": "001", + "GCM_SDS01_SdsMain": "001", + "GWM_SET01_Main": "001", + "GWM_SET02_PushList": "001", + "GWM_SET03_NickName": "001" + }, + "Menu": [ + "GWM_CRS01_Main", + "GWM_WCH01_Main", + "GWM_ENM01_Main", + "GCM_SDS01_SdsMain", + "GWM_SET01_Main" + ] + }, + "Config": { + "powerOffDownload": true, + "expectedStartTime": true, + "fota": true, + "freshCareCancelable": true, + "freshCareLabel": "@WM_MX_OPTION_FRESH_CARE_W", + "downloadPanelLabel": "@WM_MX_TERM_DOWNLOADED_W", + "remoteStartLabel": "@WM_MX_OPTION_REMOTE_START_W", + "maxDownloadCourseNum": 1, + "defaultCourseId": 6, + "downloadCourseAPId": 12, + "defaultSmartCourseId": 51, + "tubCleanCourseId": 1, + "SmartCourseCategory": [ + { + "label": "@WM_COURSE_CATEGORY_SIZE_W", + "courseIdList": [ + 51, + 64, + 108, + 109 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_STAIN_W", + "courseIdList": [ + 61, + 63, + 100 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", + "courseIdList": [ + 52, + 53, + 54, + 55, + 59, + 107 + ] + }, + { + "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", + "courseIdList": [ + 60, + 105, + 106 + ] + } + ] + }, + "Value": { + "State": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "5": "@WM_STATE_INITIAL_W", + "6": "@WM_STATE_PAUSE_W", + "10": "@WM_STATE_RESERVE_W", + "20": "@WM_STATE_DETECTING_W", + "23": "@WM_STATE_RUNNING_W", + "24": "@WM_STATE_PREWASH_W", + "30": "@WM_STATE_RINSING_W", + "31": "@WM_STATE_RINSE_HOLD_W", + "40": "@WM_STATE_SPINNING_W", + "50": "@WM_STATE_DRYING_W", + "60": "@WM_STATE_END_W", + "61": "@WM_STATE_FRESHCARE_W" + } + }, + "PreState": { + "type": "Enum", + "default": "0", + "option": { + "0": "@WM_STATE_POWER_OFF_W", + "5": "@WM_STATE_INITIAL_W", + "6": "@WM_STATE_PAUSE_W", + "10": "@WM_STATE_RESERVE_W", + "20": "@WM_STATE_DETECTING_W", + "23": "@WM_STATE_RUNNING_W", + "24": "@WM_STATE_PREWASH_W", + "30": "@WM_STATE_RINSING_W", + "31": "@WM_STATE_RINSE_HOLD_W", + "40": "@WM_STATE_SPINNING_W", + "50": "@WM_STATE_DRYING_W", + "60": "@WM_STATE_END_W", + "61": "@WM_STATE_FRESHCARE_W" + } + }, + "RemoteStart": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_REMOTE_START_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "InitialBit": { + "type": "Boolean", + "default": false + }, + "ChildLock": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_CHILDLOCK_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "TCLCount": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 60 + } + }, + "Reserve_Time_H": { + "type": "Range", + "default": 0, + "label": "@WM_MX_OPTION_DELAY_WASH_W", + "option": { + "min": 1, + "max": 19 + } + }, + "Reserve_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 59 + } + }, + "Remain_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 30 + } + }, + "Remain_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 59 + } + }, + "Initial_Time_H": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 30 + } + }, + "Initial_Time_M": { + "type": "Range", + "default": 0, + "option": { + "min": 0, + "max": 59 + } + }, + "Soil": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_SOIL_W", + "option": { + "0": "-", + "1": "@WM_MX_OPTION_SOIL_LIGHT_W", + "2": "@WM_MX_OPTION_SOIL_LIGHT_NORMAL_W", + "3": "@WM_MX_OPTION_SOIL_NORMAL_W", + "4": "@WM_MX_OPTION_SOIL_NORMAL_HEAVY_W", + "5": "@WM_MX_OPTION_SOIL_HEAVY_W" + } + }, + "SpinSpeed": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_SPIN_SPEED_W", + "option": { + "0": "-", + "1": "@WM_MX_OPTION_SPIN_NO_SPIN_W", + "2": "@WM_MX_OPTION_SPIN_LOW_W", + "3": "@WM_MX_OPTION_SPIN_MEDIUM_W", + "4": "@WM_MX_OPTION_SPIN_HIGH_W", + "5": "@WM_MX_OPTION_SPIN_EXTRA_HIGH_W" + } + }, + "WaterTemp": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_WASH_TEMP_W", + "option": { + "0": "-", + "1": "@WM_MX_OPTION_TEMP_TAP_COLD_W", + "2": "@WM_MX_OPTION_TEMP_COLD_W", + "3": "@WM_MX_OPTION_TEMP_ECO_WARM_W", + "4": "@WM_MX_OPTION_TEMP_WARM_W", + "5": "@WM_MX_OPTION_TEMP_WARM_W", + "6": "@WM_MX_OPTION_TEMP_HOT_W", + "7": "@WM_MX_OPTION_TEMP_EXTRA_HOT_W" + } + }, + "RinseOption": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 4, + "default": "0", + "value": "RinseCount" + }, + { + "startbit": 4, + "length": 4, + "default": "0", + "value": "ExtraRinseCount" + } + ] + }, + "RinseCount": { + "type": "Enum", + "default": "0", + "label": "@WM_OPTION_RINSE_COUNT_W", + "option": { + "0": "@WM_OPTION_RINSE_COUNT_0_TIME_W", + "1": "@WM_OPTION_RINSE_COUNT_1_TIME_W", + "2": "@WM_OPTION_RINSE_COUNT_2_TIME_W", + "3": "@WM_OPTION_RINSE_COUNT_3_TIME_W" + } + }, + "ExtraRinseCount": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_EXTRA_RINSE_W", + "option": { + "0": "-", + "1": "@WM_OPTION_EXTRA_RINSE_1_W", + "2": "@WM_OPTION_EXTRA_RINSE_2_W", + "3": "@WM_OPTION_EXTRA_RINSE_3_W" + } + }, + "ExtraRinse": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_EXTRA_RINSE_W", + "option": { + "0": "@WM_OPTION_EXTRA_RINSE_0_W", + "1": "@WM_OPTION_EXTRA_RINSE_1_W", + "2": "@WM_OPTION_EXTRA_RINSE_2_W", + "3": "@WM_OPTION_EXTRA_RINSE_3_W" + } + }, + "ColdWash": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_COLD_WASH_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "DryLevel": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_DRY_LEVEL_W", + "option": { + "0": "-", + "5": "@WM_MX_OPTION_DRY_TURBO_W", + "6": "@WM_MX_OPTION_DRY_WIND_W", + "7": "@WM_OPTION_DRY_TIME_30_W", + "8": "@WM_OPTION_DRY_TIME_60_W", + "9": "@WM_OPTION_DRY_TIME_90_W", + "10": "@WM_OPTION_DRY_TIME_120_W", + "11": "@WM_OPTION_DRY_TIME_150_W" + } + }, + "TurboWash": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_TURBO_WASH_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "Steam": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_STEAM_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "PreWash": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_PRE_WASH_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "FreshCare": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_FRESH_CARE_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "Rinse_Spin": { + "type": "Enum", + "default": "0", + "label": "@WM_MX_OPTION_RINSE_SPIN_W", + "option": { + "0": "@CP_OFF_EN_W", + "1": "@CP_ON_EN_W" + } + }, + "Option1": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "ChildLock" + }, + { + "startbit": 2, + "length": 1, + "default": "0", + "value": "Steam" + }, + { + "startbit": 3, + "length": 1, + "default": "0", + "value": "PreWash" + }, + { + "startbit": 6, + "length": 1, + "default": "0", + "value": "ExtraRinse" + }, + { + "startbit": 7, + "length": 1, + "default": "0", + "value": "TurboWash" + } + ] + }, + "Option2": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 0, + "length": 1, + "default": "0", + "value": "FreshCare" + }, + { + "startbit": 4, + "length": 1, + "default": "0", + "value": "ColdWash" + }, + { + "startbit": 7, + "length": 1, + "default": "0", + "value": "RemoteStart" + } + ] + }, + "Option3": { + "type": "Bit", + "default": "0", + "option": [ + { + "startbit": 5, + "length": 1, + "default": "0", + "value": "InitialBit" + } + ] + }, + "Error": { + "type": "Reference", + "option": [ + "Error" + ] + }, + "OPCourse": { + "type": "Reference", + "option": [ + "OPCourse" + ] + }, + "APCourse": { + "type": "Reference", + "option": [ + "APCourse" + ] + }, + "SmartCourse": { + "type": "Reference", + "option": [ + "SmartCourse" + ] + } + }, + "Error": { + "0": { + "_comment": "No Error", + "label": "ERROR_NOERROR", + "title": "ERROR_NOERROR_TITLE", + "content": "ERROR_NOERROR_CONTENT" + }, + "1": { + "_comment": "DE2 Error - Door Lock Error", + "label": "@WM_US_FL_ERROR_DE2_W", + "title": "@WM_US_FL_ERROR_DE2_TITLE_W", + "content": "@WM_US_FL_ERROR_DE2_CONTENT_S" + }, + "2": { + "_comment": "IE Error - No Fill Error", + "label": "@WM_US_FL_ERROR_IE_W", + "title": "@WM_US_FL_ERROR_IE_TITLE_W", + "content": "@WM_US_FL_ERROR_IE_CONTENT_S" + }, + "3": { + "_comment": "OE Error - Not Draining Error", + "label": "@WM_US_FL_ERROR_OE_W", + "title": "@WM_US_FL_ERROR_OE_TITLE_W", + "content": "@WM_US_FL_ERROR_OE_CONTENT_S" + }, + "4": { + "_comment": "UE Error - Out of Balance Load", + "label": "@WM_US_FL_ERROR_UE_W", + "title": "@WM_US_FL_ERROR_UE_TITLE_W", + "content": "@WM_US_FL_ERROR_UE_CONTENT_S" + }, + "5": { + "_comment": "FE Error - Overfill Error", + "label": "@WM_US_FL_ERROR_FE_W", + "title": "@WM_US_FL_ERROR_FE_TITLE_W", + "content": "@WM_US_FL_ERROR_FE_CONTENT_S" + }, + "6": { + "_comment": "PE Error - Water Sensor Error", + "label": "@WM_US_FL_ERROR_PE_W", + "title": "@WM_US_FL_ERROR_PE_TITLE_W", + "content": "@WM_US_FL_ERROR_PE_CONTENT_S" + }, + "7": { + "_comment": "tE Error - Thermistor Error", + "label": "@WM_US_FL_ERROR_TE_W", + "title": "@WM_US_FL_ERROR_TE_TITLE_W", + "content": "@WM_US_FL_ERROR_TE_CONTENT_S" + }, + "8": { + "_comment": "LE Error - Locked Motor Error", + "label": "@WM_US_FL_ERROR_LE_W", + "title": "@WM_US_FL_ERROR_LE_TITLE_W", + "content": "@WM_US_FL_ERROR_LE_CONTENT_S" + }, + "9": { + "_comment": "CE Error", + "label": "@WM_US_FL_ERROR_CE_W", + "title": "@WM_US_FL_ERROR_CE_TITLE_W", + "content": "@WM_US_FL_ERROR_CE_CONTENT_S" + }, + "10": { + "_comment": "dHE Error", + "label": "@WM_US_FL_ERROR_DHE_W", + "title": "@WM_US_FL_ERROR_DHE_TITLE_W", + "content": "@WM_US_FL_ERROR_DHE_CONTENT_S" + }, + "11": { + "_comment": "PF Error - Power Failure Error", + "label": "@WM_US_FL_ERROR_PF_W", + "title": "@WM_US_FL_ERROR_PF_TITLE_W", + "content": "@WM_US_FL_ERROR_PF_CONTENT_S" + }, + "12": { + "_comment": "FF Error - Freeze Error", + "label": "@WM_US_FL_ERROR_FF_W", + "title": "@WM_US_FL_ERROR_FF_TITLE_W", + "content": "@WM_US_FL_ERROR_FF_CONTENT_S" + }, + "13": { + "_comment": "dCE Error", + "label": "@WM_US_FL_ERROR_DCE_W", + "title": "@WM_US_FL_ERROR_DCE_TITLE_W", + "content": "@WM_US_FL_ERROR_DCE_CONTENT_S" + }, + "14": { + "_comment": "AE Error", + "label": "@WM_US_FL_ERROR_AE_W", + "title": "@WM_US_FL_ERROR_AE_TITLE_W", + "content": "@WM_US_FL_ERROR_AE_CONTENT_S" + }, + "15": { + "_comment": "EE Error - EEPROM Error", + "label": "@WM_US_FL_ERROR_EE_W", + "title": "@WM_US_FL_ERROR_EE_TITLE_W", + "content": "@WM_US_FL_ERROR_EE_CONTENT_S" + }, + "16": { + "_comment": "Sud Error - Suds Error", + "label": "@WM_US_FL_ERROR_SUD_W", + "title": "@WM_US_FL_ERROR_SUD_TITLE_W", + "content": "@WM_US_FL_ERROR_SUD_CONTENT_S" + }, + "17": { + "_comment": "DE1 Error - Door Open Error", + "label": "@WM_US_FL_ERROR_DE1_W", + "title": "@WM_US_FL_ERROR_DE1_TITLE_W", + "content": "@WM_US_FL_ERROR_DE1_CONTENT_S" + }, + "18": { + "_comment": "LOE Error - Sliding Lid Open Error", + "label": "@WM_US_FL_WD_WIFI_ERROR_LOE", + "title": "@WM_US_FL_WD_WIFI_ERROR_LOE_TITLE", + "content": "@WM_US_FL_WD_WIFI_ERROR_LOE_CONTENT" + }, + "19": { + "_comment": "PS Error ", + "label": "@WM_WW_FL_ERROR_PS_W", + "title": "@WM_WW_FL_ERROR_PS_TITLE_W", + "content": "@WM_WW_FL_ERROR_PS_CONTENT_S" + } + }, + "Monitoring": { + "type": "BINARY(BYTE)", + "protocol": [ + { + "_comment": "Status", + "startByte": 0, + "length": 1, + "value": "State" + }, + { + "_comment": "RemainTime - Hour", + "startByte": 1, + "length": 1, + "value": "Remain_Time_H" + }, + { + "_comment": "RemainTime - Min", + "startByte": 2, + "length": 1, + "value": "Remain_Time_M" + }, + { + "_comment": "InitialTime - Hour", + "startByte": 3, + "length": 1, + "value": "Initial_Time_H" + }, + { + "_comment": "InitialTime - Min", + "startByte": 4, + "length": 1, + "value": "Initial_Time_M" + }, + { + "_comment": "AP Course", + "startByte": 5, + "length": 1, + "value": "APCourse" + }, + { + "_comment": "Error", + "startByte": 6, + "length": 1, + "value": "Error" + }, + { + "_comment": "Wash Option", + "startByte": 7, + "length": 1, + "value": "Soil" + }, + { + "_comment": "Spin Option", + "startByte": 8, + "length": 1, + "value": "SpinSpeed" + }, + { + "_comment": "Water Temp Option", + "startByte": 9, + "length": 1, + "value": "WaterTemp" + }, + { + "_comment": "Rinse Option", + "startByte": 10, + "length": 1, + "value": "RinseOption" + }, + { + "_comment": "Dry Level Option", + "startByte": 11, + "length": 1, + "value": "DryLevel" + }, + { + "_comment": "ReserveTime - Hour", + "startByte": 12, + "length": 1, + "value": "Reserve_Time_H" + }, + { + "_comment": "ReserveTime - Min", + "startByte": 13, + "length": 1, + "value": "Reserve_Time_M" + }, + { + "_comment": "Option 1", + "startByte": 14, + "length": 1, + "value": "Option1" + }, + { + "_comment": "Option 2", + "startByte": 15, + "length": 1, + "value": "Option2" + }, + { + "_comment": "Option 3", + "startByte": 16, + "length": 1, + "value": "Option3" + }, + { + "_comment": "PreState", + "startByte": 19, + "length": 1, + "value": "PreState" + }, + { + "_comment": "Download Course Index", + "startByte": 20, + "length": 1, + "value": "SmartCourse" + }, + { + "_comment": "Tub Clean Count", + "startByte": 21, + "length": 1, + "value": "TCLCount" + }, + { + "_comment": "OP Course", + "startByte": 22, + "length": 1, + "value": "OPCourse" + }, + { + "_comment": "Load Level", + "startByte": 23, + "length": 1, + "value": "LoadLevel" + } + ] + }, + "Push": [ + { + "category": "PUSH_WM_STATE", + "label": "@CP_ALARM_PRODUCT_STATE_W", + "groupCode": "20101", + "pushList": [ + { + "0001": "PUSH_WM_COMPLETE" + }, + { + "0002": "PUSH_WM_ERROR" + }, + { + "0003": "PUSH_WM_REMOTE_START_ON" + }, + { + "0004": "PUSH_WM_REMOTE_START_OFF" + }, + { + "0005": "PUSH_WM_REMOTE_ANOTHER_ID" + } + ] + } + ], + "EnergyMonitoring": { + "option": [ + "WaterTemp", + "SpinSpeed", + "ExtraRinseCount" + ], + "powertable": { + "1": 798, + "2": 1008, + "3": 1218, + "4": 1428, + "5": 1638 + } + }, + "SmartMode": { + "MODE010": { + "_comment": "MODE_HOME_OUT", + "modeCase": 0, + "actionName": "@WM_MODE_FRESHCARE_ON_W", + "control": [ + { + "command": "OperationStart" + } + ] + }, + "MODE020": { + "_comment": "MODE_HOME_IN", + "modeCase": 0, + "actionName": "@WM_MODE_COURSE_START_W", + "control": [ + { + "command": "MODE020Start" + } + ] + } + }, + "ControlWifi": { + "type": "BINARY(BYTE)", + "action": { + "CourseDownload": { + "tag": [ + "COURSE", + "ID", + "DATA" + ], + "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]" + }, + "PowerOff": { + "cmd": "Control", + "cmdOpt": "Power", + "value": "Off" + }, + "OperationStart": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]", + "encode": true + }, + "OperationStop": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Stop" + }, + "MODE020Start": { + "cmd": "Control", + "cmdOpt": "Operation", + "value": "Start", + "data": "[6,3,4,4,0,0,0,0,0,32,6,0,0,0,0,0,0,0,0,0,0]", + "encode": true + } + } + }, + "APCourse": { + "6": { + "_comment": "Normal", + "courseType": "APCourse", + "id": 6, + "OPCourse": 6, + "name": "@WM_MX_COURSE_NORMAL_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 32, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "5": { + "_comment": "Heavy Duty", + "courseType": "APCourse", + "id": 5, + "OPCourse": 7, + "name": "@WM_MX_COURSE_HEAVY_DUTY_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 33, + "function": [ + { + "value": "Soil", + "default": "5" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "4": { + "_comment": "Bedding", + "courseType": "APCourse", + "id": 4, + "OPCourse": 4, + "name": "@WM_MX_COURSE_BEDDING_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 34, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "8": { + "_comment": "Perm.Press", + "courseType": "APCourse", + "id": 8, + "OPCourse": 5, + "name": "@WM_MX_COURSE_PERMPRESS_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 40, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "10": { + "_comment": "Towels", + "courseType": "APCourse", + "id": 10, + "OPCourse": 14, + "name": "@WM_MX_COURSE_TOWELS_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 42, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "3": { + "_comment": "Sanitary", + "courseType": "APCourse", + "id": 3, + "OPCourse": 2, + "name": "@WM_MX_COURSE_SANITARY_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 35, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "7" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "2": { + "_comment": "Allergiene", + "courseType": "APCourse", + "id": 2, + "OPCourse": 3, + "name": "@WM_MX_COURSE_ALLERGIENE_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 36, + "function": [ + { + "value": "Soil", + "default": "0" + }, + { + "value": "WaterTemp", + "default": "0" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "1" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "7": { + "_comment": "Bright Whites", + "courseType": "APCourse", + "id": 7, + "OPCourse": 8, + "name": "@WM_MX_COURSE_BRIGHT_WHITES_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 37, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "1": { + "_comment": "Tub Clean", + "courseType": "APCourse", + "id": 1, + "OPCourse": 13, + "name": "@WM_MX_COURSE_TUB_CLEAN_W", + "script": "", + "freshcareEnable": false, + "controlEnable": true, + "imgIndex": 38, + "function": [ + { + "value": "Soil", + "default": "0" + }, + { + "value": "WaterTemp", + "default": "0" + }, + { + "value": "SpinSpeed", + "default": "3", + "showing": "-" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "1" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0" + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "9": { + "_comment": "Delicates", + "courseType": "APCourse", + "id": 9, + "OPCourse": 10, + "name": "@WM_MX_COURSE_DELICATES_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 41, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "11": { + "_comment": "Speed Wash", + "courseType": "APCourse", + "id": 11, + "OPCourse": 12, + "name": "@WM_MX_COURSE_SPEED_WASH_W", + "script": "", + "freshcareEnable": true, + "controlEnable": true, + "imgIndex": 43, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "12": { + "_comment": "DownloadCourse", + "courseType": "APCourse", + "id": 12 + } + }, + "OPCourse": { + "0": { + "_comment": "OPCourse", + "id": "0" + }, + "1": { + "_comment": "Refresh", + "id": "1" + }, + "2": { + "_comment": "Sanitary", + "id": "2" + }, + "3": { + "_comment": "Allergiene", + "id": "3" + }, + "4": { + "_comment": "Bedding", + "id": "4" + }, + "5": { + "_comment": "Perm.Press", + "id": "5" + }, + "6": { + "_comment": "Normal", + "id": "6" + }, + "7": { + "_comment": "Heavy Duty", + "id": "7" + }, + "8": { + "_comment": "Bright Whites", + "id": "8" + }, + "9": { + "_comment": "Cold Care", + "id": "9" + }, + "10": { + "_comment": "Delicates", + "id": "10" + }, + "11": { + "_comment": "Hand Wash", + "id": "11" + }, + "12": { + "_comment": "Speed Wash", + "id": "12" + }, + "13": { + "_comment": "Tub Clean", + "id": "13" + }, + "14": { + "_comment": "Towels", + "id": "14" + }, + "15": { + "_comment": "Small Load", + "id": "15" + }, + "16": { + "_comment": "Rinse+Spin", + "id": "16" + }, + "17": { + "_comment": "Rugged", + "id": "17" + }, + "18": { + "_comment": "KidsWears", + "id": "18" + }, + "19": { + "_comment": "WorkOut Wear", + "id": "19" + }, + "20": { + "_comment": "Drain+Spin", + "id": "20" + }, + "21": { + "_comment": "Sportswear", + "id": "21" + }, + "22": { + "_comment": "Jumbo Wash", + "id": "22" + } + }, + "SmartCourse": { + "51": { + "_comment": "SmallLoad", + "courseType": "SmartCourse", + "id": 51, + "OPCourse": 15, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_W", + "script": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 46, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "52": { + "_comment": "ColorCare", + "courseType": "SmartCourse", + "id": 52, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_W", + "script": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 47, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "53": { + "_comment": "Beachwear", + "courseType": "SmartCourse", + "id": 53, + "OPCourse": 10, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_W", + "script": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 48, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "54": { + "_comment": "NewClothes", + "courseType": "SmartCourse", + "id": 54, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_W", + "script": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 49, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "55": { + "_comment": "Denim", + "courseType": "SmartCourse", + "id": 55, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_DENIM_W", + "script": "@WM_US_FL_SMARTCOURSE_DENIM_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 50, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "59": { + "_comment": "Swimwear", + "courseType": "SmartCourse", + "id": 59, + "OPCourse": 10, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_W", + "script": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 54, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "60": { + "_comment": "RainyDay", + "courseType": "SmartCourse", + "id": 60, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_W", + "script": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 55, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "5" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "61": { + "_comment": "Gym Clothes", + "courseType": "SmartCourse", + "id": 61, + "OPCourse": 21, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_W", + "script": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 56, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "3" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "63": { + "_comment": "SweatStains", + "courseType": "SmartCourse", + "id": 63, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_W", + "script": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 58, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "64": { + "_comment": "SingleGarments", + "courseType": "SmartCourse", + "id": 64, + "OPCourse": 12, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_W", + "script": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 59, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "100": { + "_comment": "BabyClothes", + "courseType": "SmartCourse", + "id": 100, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_W", + "script": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 52, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "6" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "1" + }, + { + "value": "ExtraRinse", + "default": "1", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "1" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "105": { + "_comment": "OvernightWash", + "courseType": "SmartCourse", + "id": 105, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_W", + "script": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 26, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "1", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "106": { + "_comment": "EconoWash", + "courseType": "SmartCourse", + "id": 106, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_ECONOWASH_W", + "script": "@WM_US_FL_SMARTCOURSE_ECONOWASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 112, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "1" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "107": { + "_comment": "DelicateDresses", + "courseType": "SmartCourse", + "id": 107, + "OPCourse": 10, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_W", + "script": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 113, + "function": [ + { + "value": "Soil", + "default": "1" + }, + { + "value": "SpinSpeed", + "default": "2" + }, + { + "value": "WaterTemp", + "default": "2" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "108": { + "_comment": "HalfLoadWash", + "courseType": "SmartCourse", + "id": 108, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_W", + "script": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 15, + "function": [ + { + "value": "Soil", + "default": "3" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "0" + }, + { + "value": "ExtraRinse", + "default": "0", + "visibility": "gone" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + }, + "109": { + "_comment": "FullLoadWash", + "courseType": "SmartCourse", + "id": 109, + "OPCourse": 6, + "APCourse": 12, + "name": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_W", + "script": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_SCRIPT_S", + "freshcareEnable": true, + "downloadEnable": true, + "controlEnable": true, + "imgIndex": 109, + "function": [ + { + "value": "Soil", + "default": "5" + }, + { + "value": "SpinSpeed", + "default": "4" + }, + { + "value": "WaterTemp", + "default": "4" + }, + { + "value": "RinseCount", + "default": "0", + "visibility": "gone" + }, + { + "value": "Rinse_Spin", + "default": "0", + "visibility": "gone" + }, + { + "value": "ExtraRinseCount", + "default": "1" + }, + { + "value": "ExtraRinse", + "default": "1", + "visibility": "gone" + }, + { + "value": "Steam", + "default": "0" + }, + { + "value": "PreWash", + "default": "0" + }, + { + "value": "ColdWash", + "default": "0" + }, + { + "value": "FreshCare", + "default": "0", + "selectable": [ + 0, + 1 + ] + }, + { + "value": "Reserve_Time_H", + "default": "0" + } + ] + } + } +} diff --git a/tests/test_dryer.py b/tests/test_dryer.py index 66d34f0..35e4a04 100644 --- a/tests/test_dryer.py +++ b/tests/test_dryer.py @@ -2,26 +2,27 @@ import json import unittest from wideq.client import Client, DeviceInfo -from wideq.dryer import DryerDevice, DryLevel, DryerState, DryerStatus +from wideq.dryer import ( + DryerDevice, DryLevel, DryerState, DryerStatus, TempControl, TimeDry) POLL_DATA = { - 'Course': '5', + 'Course': '2', 'CurrentDownloadCourse': '100', - 'DryLevel': '0', + 'DryLevel': '3', 'Error': '0', 'Initial_Time_H': '0', - 'Initial_Time_M': '1', + 'Initial_Time_M': '55', 'LoadItem': '0', 'MoreLessTime': '0', - 'Option1': '64', + 'Option1': '0', 'Option2': '168', - 'PreState': '4', + 'PreState': '1', 'Remain_Time_H': '0', - 'Remain_Time_M': '1', + 'Remain_Time_M': '54', 'SmartCourse': '0', - 'State': '0', - 'TempControl': '0', + 'State': '50', + 'TempControl': '4', 'TimeDry': '0', } @@ -47,14 +48,16 @@ class DryerStatusTest(unittest.TestCase): def test_properties(self): status = DryerStatus(self.dryer, POLL_DATA) - self.assertEqual(DryerState.OFF, status.state) - self.assertEqual(DryerState.END, status.previous_state) - self.assertEqual(DryLevel.OFF, status.dry_level) - self.assertFalse(status.is_on) + self.assertEqual(DryerState.DRYING, status.state) + self.assertEqual(DryerState.INITIAL, status.previous_state) + self.assertEqual(DryLevel.NORMAL, status.dry_level) + self.assertTrue(status.is_on) self.assertEqual('0', status.remain_time_hours) - self.assertEqual('1', status.remain_time_minutes) + self.assertEqual('54', status.remain_time_minutes) self.assertEqual('0', status.initial_time_hours) - self.assertEqual('1', status.initial_time_minutes) - self.assertEqual('Delicates', status.course) + self.assertEqual('55', status.initial_time_minutes) + self.assertEqual('Towels', status.course) self.assertEqual('Off', status.smart_course) self.assertEqual('No Error', status.error) + self.assertEqual(TempControl.MID_HIGH, status.temperature_control) + self.assertEqual(TimeDry.OFF, status.time_dry) diff --git a/wideq/dryer.py b/wideq/dryer.py index b47c8dd..191e8c0 100644 --- a/wideq/dryer.py +++ b/wideq/dryer.py @@ -54,6 +54,28 @@ class DryerError(enum.Enum): ERROR_TE6 = '@WM_US_DRYER_ERROR_TE6_W' +class TempControl(enum.Enum): + """Represents temperature control setting.""" + + OFF = '-' + ULTRA_LOW = '@WM_DRY27_TEMP_ULTRA_LOW_W' + LOW = '@WM_DRY27_TEMP_LOW_W' + MEDIUM = '@WM_DRY27_TEMP_MEDIUM_W' + MID_HIGH = '@WM_DRY27_TEMP_MID_HIGH_W' + HIGH = '@WM_DRY27_TEMP_HIGH_W' + + +class TimeDry(enum.Enum): + """Represents a timed dry setting.""" + + OFF = '-' + TWENTY = '20' + THIRTY = '30' + FOURTY = '40' + FIFTY = '50' + SIXTY = '60' + + class DryerDevice(Device): """A higher-level interface for a dryer.""" @@ -114,6 +136,18 @@ class DryerStatus(object): attr = 'DryLevel' return DryLevel(self.dryer.model.enum_name(attr, self.data[attr])) + @property + def temperature_control(self) -> TempControl: + """Get the temperature control setting.""" + attr = 'TempControl' + return TempControl(self.dryer.model.enum_name(attr, self.data[attr])) + + @property + def time_dry(self) -> TimeDry: + """Get the time dry setting.""" + attr = 'TimeDry' + return TimeDry(self.dryer.model.enum_name(attr, self.data[attr])) + @property def is_on(self) -> bool: """Check if the dryer is on or not.""" From 763d9f98878fe07a833e731f6b06799f8b62aed2 Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Fri, 5 Jul 2019 16:01:21 -0700 Subject: [PATCH 06/10] Don't raise an exception if we encounter an enum value that's not known. Instead log a warning and return a value of 'Unknown'. --- tests/test_dryer.py | 17 +++++++++++++++++ wideq/client.py | 8 ++++++++ wideq/dryer.py | 7 ++++++- 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/tests/test_dryer.py b/tests/test_dryer.py index 35e4a04..7d98c78 100644 --- a/tests/test_dryer.py +++ b/tests/test_dryer.py @@ -1,5 +1,6 @@ import json import unittest +from unittest import mock from wideq.client import Client, DeviceInfo from wideq.dryer import ( @@ -48,6 +49,8 @@ class DryerStatusTest(unittest.TestCase): def test_properties(self): status = DryerStatus(self.dryer, POLL_DATA) + self.assertEqual(self.dryer, status.dryer) + self.assertEqual(POLL_DATA, status.data) self.assertEqual(DryerState.DRYING, status.state) self.assertEqual(DryerState.INITIAL, status.previous_state) self.assertEqual(DryLevel.NORMAL, status.dry_level) @@ -61,3 +64,17 @@ class DryerStatusTest(unittest.TestCase): self.assertEqual('No Error', status.error) self.assertEqual(TempControl.MID_HIGH, status.temperature_control) self.assertEqual(TimeDry.OFF, status.time_dry) + + @mock.patch('wideq.client.logging') + def test_properties_unknown_enum_value(self, mock_logging): + """ + This should not raise an error for an invalid enum value and instead + use the `UNKNOWN` enum value. + """ + data = dict(POLL_DATA, State='5000') + status = DryerStatus(self.dryer, data) + self.assertEqual(DryerState.UNKNOWN, status.state) + expected_call = mock.call( + 'Value `%s` for key `%s` not in options: %s. Values from API: %s', + '5000', 'State', mock.ANY, mock.ANY) + self.assertEqual(expected_call, mock_logging.warning.call_args) diff --git a/wideq/client.py b/wideq/client.py index 987cbb9..3ab371c 100644 --- a/wideq/client.py +++ b/wideq/client.py @@ -3,6 +3,7 @@ SmartThinQ API for most use cases. """ import json import enum +import logging import requests import base64 from collections import namedtuple @@ -12,6 +13,8 @@ from . import core DEFAULT_COUNTRY = 'US' DEFAULT_LANGUAGE = 'en-US' +#: Represents an unknown enum value. +_UNKNOWN = 'Unknown' class Monitor(object): @@ -350,6 +353,11 @@ class ModelInfo(object): """Look up the friendly enum name for an encoded value. """ options = self.value(key).options + if value not in options: + logging.warning( + 'Value `%s` for key `%s` not in options: %s. Values from API: ' + '%s', value, key, options, self.data['Value'][key]['option']) + return _UNKNOWN return options[value] def reference_name(self, key: str, value: Any) -> str: diff --git a/wideq/dryer.py b/wideq/dryer.py index 191e8c0..2a19121 100644 --- a/wideq/dryer.py +++ b/wideq/dryer.py @@ -1,7 +1,7 @@ import enum from typing import Optional -from .client import Device +from .client import Device, _UNKNOWN class DryerState(enum.Enum): @@ -17,6 +17,7 @@ class DryerState(enum.Enum): RUNNING = '@WM_STATE_RUNNING_W' SMART_DIAGNOSIS = '@WM_STATE_SMART_DIAGNOSIS_W' WRINKLE_CARE = '@WM_STATE_WRINKLECARE_W' + UNKNOWN = _UNKNOWN class DryLevel(enum.Enum): @@ -31,6 +32,7 @@ class DryLevel(enum.Enum): NORMAL = '@WM_DRY27_DRY_LEVEL_NORMAL_W' OFF = '-' VERY = '@WM_DRY27_DRY_LEVEL_VERY_W' + UNKNOWN = _UNKNOWN class DryerError(enum.Enum): @@ -52,6 +54,7 @@ class DryerError(enum.Enum): ERROR_TE2 = '@WM_US_DRYER_ERROR_TE2_W' ERROR_TE5 = '@WM_US_DRYER_ERROR_TE5_W' ERROR_TE6 = '@WM_US_DRYER_ERROR_TE6_W' + UNKNOWN = _UNKNOWN class TempControl(enum.Enum): @@ -63,6 +66,7 @@ class TempControl(enum.Enum): MEDIUM = '@WM_DRY27_TEMP_MEDIUM_W' MID_HIGH = '@WM_DRY27_TEMP_MID_HIGH_W' HIGH = '@WM_DRY27_TEMP_HIGH_W' + UNKNOWN = _UNKNOWN class TimeDry(enum.Enum): @@ -74,6 +78,7 @@ class TimeDry(enum.Enum): FOURTY = '40' FIFTY = '50' SIXTY = '60' + UNKNOWN = _UNKNOWN class DryerDevice(Device): From 8ed1ae3c1befd64254843a41993f0f5a76046bc3 Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Fri, 5 Jul 2019 23:23:34 -0700 Subject: [PATCH 07/10] Addressing PR comments. --- pyproject.toml | 4 ++-- tests/test_dryer.py | 10 ++++----- wideq/client.py | 3 ++- wideq/dryer.py | 50 +++++++++++++++++++++------------------------ 4 files changed, 31 insertions(+), 36 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 787831d..d6a23b4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,8 +11,8 @@ requires = [ "requests" ] description-file = "README.md" -requires-python = ">=3.4" - +requires-python = ">=3.5" +\be [tool.flit.metadata.requires-extra] test = [ "responses" diff --git a/tests/test_dryer.py b/tests/test_dryer.py index 7d98c78..b568fbd 100644 --- a/tests/test_dryer.py +++ b/tests/test_dryer.py @@ -12,8 +12,8 @@ POLL_DATA = { 'CurrentDownloadCourse': '100', 'DryLevel': '3', 'Error': '0', - 'Initial_Time_H': '0', - 'Initial_Time_M': '55', + 'Initial_Time_H': '1', + 'Initial_Time_M': '11', 'LoadItem': '0', 'MoreLessTime': '0', 'Option1': '0', @@ -55,10 +55,8 @@ class DryerStatusTest(unittest.TestCase): self.assertEqual(DryerState.INITIAL, status.previous_state) self.assertEqual(DryLevel.NORMAL, status.dry_level) self.assertTrue(status.is_on) - self.assertEqual('0', status.remain_time_hours) - self.assertEqual('54', status.remain_time_minutes) - self.assertEqual('0', status.initial_time_hours) - self.assertEqual('55', status.initial_time_minutes) + self.assertEqual(54, status.remaining_time) + self.assertEqual(71, status.initial_time) self.assertEqual('Towels', status.course) self.assertEqual('Off', status.smart_course) self.assertEqual('No Error', status.error) diff --git a/wideq/client.py b/wideq/client.py index 3ab371c..0ff2e87 100644 --- a/wideq/client.py +++ b/wideq/client.py @@ -365,7 +365,8 @@ class ModelInfo(object): :param key: The referenced key. :param value: The value whose name we want to look up. - :returns: The friendly name for the referenced value. + :returns: The friendly name for the referenced value. If no name + can be found `-` will be returned. """ value = str(value) reference = self.value(key).reference diff --git a/wideq/dryer.py b/wideq/dryer.py index 2a19121..b6e4a41 100644 --- a/wideq/dryer.py +++ b/wideq/dryer.py @@ -84,7 +84,7 @@ class TimeDry(enum.Enum): class DryerDevice(Device): """A higher-level interface for a dryer.""" - def poll(self) -> Optional['DryerDevice']: + def poll(self) -> Optional['DryerStatus']: """Poll the device's current state. Monitoring must be started first with `monitor_start`. @@ -123,35 +123,38 @@ class DryerStatus(object): else: return 'ON' + def _lookup_enum(self, attr: str) -> str: + """Looks up an enum value for the provided attr. + + :param attr: The attribute to lookup in the enum. + :returns: The enum value. + """ + return self.dryer.model.enum_name(attr, self.data[attr]) + @property def state(self) -> DryerState: """Get the state of the dryer.""" - attr = 'State' - return DryerState(self.dryer.model.enum_name(attr, self.data[attr])) + return DryerState(self._lookup_enum('State')) @property def previous_state(self) -> DryerState: """Get the previous state of the dryer.""" - attr = 'PreState' - return DryerState(self.dryer.model.enum_name(attr, self.data[attr])) + return DryerState(self._lookup_enum('PreState')) @property def dry_level(self) -> DryLevel: """Get the dry level.""" - attr = 'DryLevel' - return DryLevel(self.dryer.model.enum_name(attr, self.data[attr])) + return DryLevel(self._lookup_enum('DryLevel')) @property def temperature_control(self) -> TempControl: """Get the temperature control setting.""" - attr = 'TempControl' - return TempControl(self.dryer.model.enum_name(attr, self.data[attr])) + return TempControl(self._lookup_enum('TempControl')) @property def time_dry(self) -> TimeDry: """Get the time dry setting.""" - attr = 'TimeDry' - return TimeDry(self.dryer.model.enum_name(attr, self.data[attr])) + return TimeDry(self._lookup_enum('TimeDry')) @property def is_on(self) -> bool: @@ -159,24 +162,17 @@ class DryerStatus(object): return self.state != DryerState.OFF @property - def remain_time_hours(self): - """Get the remaining number of hours.""" - return self.data['Remain_Time_H'] + def remaining_time(self): + """Get the remaining time in minutes.""" + return (int(self.data['Remain_Time_H']) * 60 + + int(self.data['Remain_Time_M'])) @property - def remain_time_minutes(self): - """Get the remaining number of minutes.""" - return self.data['Remain_Time_M'] - - @property - def initial_time_hours(self): - """Get the initial number of hours.""" - return self.data['Initial_Time_H'] - - @property - def initial_time_minutes(self): - """Get the initial number of minutes.""" - return self.data['Initial_Time_M'] + def initial_time(self): + """Get the initial time in minutes.""" + return ( + int(self.data['Initial_Time_H']) * 60 + + int(self.data['Initial_Time_M'])) def _lookup_reference(self, attr: str) -> str: """Look up a reference value for the provided attribute. From 347fab5fcd1b1556d6d51065593f0bba32a189b2 Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Fri, 5 Jul 2019 23:27:54 -0700 Subject: [PATCH 08/10] Added type hints. --- wideq/dryer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wideq/dryer.py b/wideq/dryer.py index b6e4a41..6e65e1e 100644 --- a/wideq/dryer.py +++ b/wideq/dryer.py @@ -162,13 +162,13 @@ class DryerStatus(object): return self.state != DryerState.OFF @property - def remaining_time(self): + def remaining_time(self) -> int: """Get the remaining time in minutes.""" return (int(self.data['Remain_Time_H']) * 60 + int(self.data['Remain_Time_M'])) @property - def initial_time(self): + def initial_time(self) -> int: """Get the initial time in minutes.""" return ( int(self.data['Initial_Time_H']) * 60 + From eef9ed39329d8f6abaead273698d28f804a6f566 Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Sun, 7 Jul 2019 13:09:34 -0700 Subject: [PATCH 09/10] Removed data directory and fixed chars in pyproject.toml --- data/dryer-US-RV13B6AM_D_US_WIFI.json | 1830 ---------------- data/dryer-US-RV13B6ES_D_US_WIFI.json | 2287 -------------------- data/washer-US-F3L2CNV4W_WIFI.json | 2618 ----------------------- data/washer-US-F3L2CYV5W_WIFI.json | 2785 ------------------------- pyproject.toml | 1 - 5 files changed, 9521 deletions(-) delete mode 100644 data/dryer-US-RV13B6AM_D_US_WIFI.json delete mode 100644 data/dryer-US-RV13B6ES_D_US_WIFI.json delete mode 100644 data/washer-US-F3L2CNV4W_WIFI.json delete mode 100644 data/washer-US-F3L2CYV5W_WIFI.json diff --git a/data/dryer-US-RV13B6AM_D_US_WIFI.json b/data/dryer-US-RV13B6AM_D_US_WIFI.json deleted file mode 100644 index e5492b8..0000000 --- a/data/dryer-US-RV13B6AM_D_US_WIFI.json +++ /dev/null @@ -1,1830 +0,0 @@ -{ - "ControlWifi": { - "action": { - "OperationStart": { - "encode": true, - "cmd": "Control", - "value": "Start", - "cmdOpt": "Operation", - "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" - }, - "OperationStop": { - "cmd": "Control", - "value": "Stop", - "cmdOpt": "Operation" - }, - "CourseDownload": { - "tag": [ - "COURSE", - "ID", - "DATA" - ], - "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" - }, - "PowerOff": { - "cmd": "Control", - "value": "Off", - "cmdOpt": "Power" - }, - "MODE020Start": { - "encode": true, - "cmd": "Control", - "value": "Start", - "cmdOpt": "Operation", - "data": "[3,0,0,3,0,0,0,0,64,0,3,0,0,0,0,3,0,0,0,0,0]" - }, - "WrinkleCareOn": { - "cmd": "Control", - "value": "On", - "cmdOpt": "WrinkleCare" - } - }, - "type": "BINARY(BYTE)" - }, - "Monitoring": { - "type": "BINARY(BYTE)", - "protocol": [ - { - "value": "State", - "startByte": 0, - "_comment": "State", - "length": 1 - }, - { - "value": "Remain_Time_H", - "startByte": 1, - "_comment": "Remain Time H", - "length": 1 - }, - { - "value": "Remain_Time_M", - "startByte": 2, - "_comment": "Remain Time M", - "length": 1 - }, - { - "value": "Initial_Time_H", - "startByte": 3, - "_comment": "Initial Time H", - "length": 1 - }, - { - "value": "Initial_Time_M", - "startByte": 4, - "_comment": "Initial Time M", - "length": 1 - }, - { - "value": "Course", - "startByte": 5, - "_comment": "Course", - "length": 1 - }, - { - "value": "Error", - "startByte": 6, - "_comment": "Error", - "length": 1 - }, - { - "value": "DryLevel", - "startByte": 7, - "_comment": "DryLevel", - "length": 1 - }, - { - "value": "TempControl", - "startByte": 8, - "_comment": "TempControl", - "length": 1 - }, - { - "value": "TimeDry", - "startByte": 9, - "_comment": "TimeDry", - "length": 1 - }, - { - "value": "MoreLessTime", - "startByte": 11, - "_comment": "MoreLessTime", - "length": 1 - }, - { - "value": "Option1", - "startByte": 14, - "_comment": "Option1", - "length": 1 - }, - { - "value": "Option2", - "startByte": 15, - "_comment": "Option2", - "length": 1 - }, - { - "value": "PreState", - "startByte": 19, - "_comment": "PreState", - "length": 1 - }, - { - "value": "SmartCourse", - "startByte": 20, - "_comment": "SmartCourse", - "length": 1 - }, - { - "value": "LoadItem", - "startByte": 22, - "_comment": "LoadItem", - "length": 1 - }, - { - "value": "CurrentDownloadCourse", - "startByte": 23, - "_comment": "Current DownloadCourse", - "length": 1 - } - ] - }, - "Info": { - "modelType": "Dryer", - "modelName": "RV13B6AM_D_US_WIFI", - "productType": "WM", - "version": "2.6", - "model": "Victor 2 Pro(D) Wi-Fi", - "country": "US", - "networkType": "WIFI" - }, - "Module": { - "Menu": [ - "GWM_CRS01_Main", - "GWM_WCH02_Main", - "GWM_ENM01_Main", - "GCM_SDS01_SdsMain", - "GWM_SET01_Main" - ], - "WPM": { - "GWM_WCH02_Main": "001", - "GWM_SET03_NickName": "001", - "GWM_CRS02_CourseList": "001", - "GWM_WCH01_UserGuide2": "001", - "GWM_SET01_Main": "001", - "GWM_SET02_PushList": "001", - "GWM_CRS01_Main": "001", - "GWM_CEN01_Main": "001", - "GWM_FOT01_Main": "001", - "GCM_SDS01_SdsMain": "001", - "GWM_CRS03_CourseDetail": "001" - } - }, - "EnergyMonitoring": { - "option": [ - "DryLevel", - "TempControl" - ], - "powertable": { - "2": 5200, - "5": 13000, - "4": 10400, - "3": 7800, - "1": 2600 - } - }, - "SmartCourse": { - "102": { - "script": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_W", - "function": [ - { - "default": "3", - "value": "DryLevel" - }, - { - "default": "5", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 77, - "id": 102, - "_comment": "Kids' Clothes", - "Course": 12, - "courseType": "SmartCourse" - }, - "105": { - "script": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_W", - "function": [ - { - "default": "3", - "value": "DryLevel" - }, - { - "default": "2", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 64, - "id": 105, - "_comment": "Low Temp Dry", - "Course": 13, - "courseType": "SmartCourse" - }, - "110": { - "script": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_W", - "function": [ - { - "default": "3", - "value": "DryLevel" - }, - { - "default": "2", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 84, - "id": 110, - "_comment": "Rainy Day", - "Course": 13, - "courseType": "SmartCourse" - }, - "107": { - "script": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "showing": "-" - }, - { - "default": "5", - "value": "TempControl", - "showing": "-" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 81, - "id": 107, - "_comment": "Gym Clothes", - "Course": 11, - "courseType": "SmartCourse" - }, - "100": { - "script": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_W", - "function": [ - { - "default": "5", - "value": "DryLevel" - }, - { - "default": "5", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 75, - "id": 100, - "_comment": "Super Dry", - "Course": 26, - "courseType": "SmartCourse" - }, - "108": { - "script": "@WM_US_DR_SMARTCOURSE_BLANKETS_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_BLANKETS_W", - "function": [ - { - "default": "5", - "value": "DryLevel" - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 82, - "id": 108, - "_comment": "Blankets", - "Course": 14, - "courseType": "SmartCourse" - }, - "101": { - "script": "@WM_US_DR_SMARTCOURSE_DENIM_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_DENIM_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "showing": "-" - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 76, - "id": 101, - "_comment": "Denim", - "Course": 10, - "courseType": "SmartCourse" - }, - "113": { - "script": "@WM_US_DR_SMARTCOURSE_SOCKS_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_SOCKS_W", - "function": [ - { - "default": "0", - "value": "DryLevel" - }, - { - "default": "5", - "value": "TempControl" - }, - { - "default": "2", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 5, - "display": "35", - "value": "MoreLessTime" - } - ], - "downloadEnable": true, - "imgIndex": 87, - "id": 113, - "_comment": "Socks", - "Course": 18, - "courseType": "SmartCourse" - }, - "114": { - "script": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_W", - "function": [ - { - "default": "3", - "value": "DryLevel" - }, - { - "default": "2", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "1", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 88, - "id": 114, - "_comment": "Overnight Dry", - "Course": 13, - "courseType": "SmartCourse" - }, - "202": { - "script": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_W", - "function": [ - { - "default": "3", - "value": "DryLevel" - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "1", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 80, - "id": 202, - "_comment": "Wrinkle Prevention", - "Course": 3, - "courseType": "SmartCourse" - }, - "206": { - "script": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_W", - "function": [ - { - "default": "5", - "value": "DryLevel" - }, - { - "default": "5", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 177, - "id": 206, - "_comment": "Full Load Dry", - "Course": 1, - "courseType": "SmartCourse" - }, - "115": { - "script": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_SCRIPT_S", - "controlEnable": true, - "freshcareEnable": false, - "name": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_W", - "function": [ - { - "default": "5", - "value": "DryLevel" - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "downloadEnable": true, - "imgIndex": 89, - "id": 115, - "_comment": "Bedding \/ Curtains", - "Course": 7, - "courseType": "SmartCourse" - } - }, - "Value": { - "DampDrySingal": { - "default": "0", - "label": "@WM_DRY27_BUTTON_DAMP_DRY_SIGNAL_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "CurrentDownloadCourse": { - "option": [ - "SmartCourse" - ], - "type": "Reference" - }, - "Error": { - "option": [ - "Error" - ], - "type": "Reference" - }, - "EasyIron": { - "default": "0", - "label": "@WM_OPTION_EASY_IRON_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "InitialBit": { - "default": false, - "type": "Boolean" - }, - "TimeDry": { - "default": "0", - "label": "@WM_DRY27_BUTTON_TIME_DRY_W", - "type": "Enum", - "option": { - "0": "-", - "2": "30", - "3": "40", - "5": "60", - "4": "50", - "1": "20" - } - }, - "Remain_Time_M": { - "default": 0, - "option": { - "min": 0, - "max": 60 - }, - "type": "Range" - }, - "WrinkleCare": { - "default": "0", - "label": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "Remain_Time_H": { - "default": 0, - "option": { - "min": 0, - "max": 24 - }, - "type": "Range" - }, - "MoreLessTime": { - "default": 0, - "label": "@WM_OPTION_MORE_LESS_W", - "type": "Range", - "option": { - "min": 10, - "max": 100 - } - }, - "LoadItem": { - "default": "0", - "label": "@WM_DRY27_BUTTON_LOAD_ITEM_W", - "changeTable": [ - { - "option": { - "0": "0", - "2": "@WM_OPTION_LOAD_ITEM_3_W", - "4": "@WM_OPTION_LOAD_ITEM_BIG_W", - "3": "@WM_OPTION_LOAD_ITEM_5_W", - "1": "1" - }, - "condition": { - "default": 1 - } - }, - { - "option": { - "0": "0", - "2": "2", - "3": "3", - "5": "5", - "4": "4", - "1": "1" - }, - "condition": { - "EasyIron": 1 - } - }, - { - "option": { - "0": "0", - "2": "@WM_OPTION_LOAD_ITEM_3_W", - "4": "@WM_OPTION_LOAD_ITEM_BIG_W", - "3": "@WM_OPTION_LOAD_ITEM_5_W", - "1": "1" - }, - "condition": { - "TurboSteam": 1 - } - }, - { - "option": { - "0": "0", - "2": "9", - "3": "11", - "6": "18", - "5": "16", - "D": "16", - "4": "14", - "1": "7" - }, - "condition": { - "ReduceStatic": 1 - } - } - ], - "type": "Enum", - "option": { - "0": "0", - "2": "@WM_OPTION_LOAD_ITEM_3_W", - "3": "@WM_OPTION_LOAD_ITEM_5_W", - "6": "18", - "5": "16", - "D": "16", - "4": "@WM_OPTION_LOAD_ITEM_BIG_W", - "1": "1" - } - }, - "EnergySaver": { - "default": "0", - "label": "@WM_DRY27_BUTTON_ENERGY_SAVER_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "ReduceStatic": { - "default": "0", - "label": "@WM_OPTION_REDUCE_STATIC_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "TempControl": { - "default": "0", - "label": "@WM_DRY27_BUTTON_TEMP_W", - "type": "Enum", - "option": { - "0": "-", - "2": "@WM_DRY27_TEMP_LOW_W", - "3": "@WM_DRY27_TEMP_MEDIUM_W", - "5": "@WM_DRY27_TEMP_HIGH_W", - "4": "@WM_DRY27_TEMP_MID_HIGH_W", - "1": "@WM_DRY27_TEMP_ULTRA_LOW_W" - } - }, - "TurboSteam": { - "default": "0", - "label": "@WM_DRY27_BUTTON_TURBO_STEAM_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "AntiBacterial": { - "default": "0", - "label": "@WM_DRY27_BUTTON_ANTI_BACTERIAL_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "PreState": { - "default": "0", - "option": { - "0": "@WM_STATE_POWER_OFF_W", - "2": "@WM_STATE_RUNNING_W", - "3": "@WM_STATE_PAUSE_W", - "50": "@WM_STATE_DRYING_W", - "56": "@WM_STATE_WRINKLECARE_W", - "5": "@WM_STATE_ERROR_W", - "4": "@WM_STATE_END_W", - "8": "@WM_STATE_SMART_DIAGNOSIS_W", - "51": "@WM_STATE_COOLING_W", - "1": "@WM_STATE_INITIAL_W" - }, - "type": "Enum" - }, - "Option1": { - "default": "0", - "option": [ - { - "default": "0", - "value": "ChildLock", - "startbit": 0, - "length": 1 - }, - { - "default": "0", - "value": "ReduceStatic", - "startbit": 1, - "length": 1 - }, - { - "default": "0", - "value": "EasyIron", - "startbit": 2, - "length": 1 - }, - { - "default": "0", - "value": "DampDrySingal", - "startbit": 3, - "length": 1 - }, - { - "default": "0", - "value": "WrinkleCare", - "startbit": 4, - "length": 1 - }, - { - "default": "0", - "value": "AntiBacterial", - "startbit": 7, - "length": 1 - } - ], - "type": "Bit" - }, - "State": { - "default": "0", - "option": { - "0": "@WM_STATE_POWER_OFF_W", - "2": "@WM_STATE_RUNNING_W", - "3": "@WM_STATE_PAUSE_W", - "50": "@WM_STATE_DRYING_W", - "56": "@WM_STATE_WRINKLECARE_W", - "5": "@WM_STATE_ERROR_W", - "4": "@WM_STATE_END_W", - "8": "@WM_STATE_SMART_DIAGNOSIS_W", - "51": "@WM_STATE_COOLING_W", - "1": "@WM_STATE_INITIAL_W" - }, - "type": "Enum" - }, - "RemoteStart": { - "default": "0", - "label": "@WM_OPTION_REMORT_START_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "Initial_Time_M": { - "default": 0, - "option": { - "min": 0, - "max": 60 - }, - "type": "Range" - }, - "SmartCourse": { - "option": [ - "SmartCourse" - ], - "type": "Reference" - }, - "DryLevel": { - "default": "0", - "label": "@WM_DRY27_BUTTON_DRY_LEVEL_W", - "type": "Enum", - "option": { - "0": "-", - "2": "@WM_DRY27_DRY_LEVEL_LESS_W", - "3": "@WM_DRY27_DRY_LEVEL_NORMAL_W", - "5": "@WM_DRY27_DRY_LEVEL_VERY_W", - "4": "@WM_DRY27_DRY_LEVEL_MORE_W", - "1": "@WM_DRY27_DRY_LEVEL_DAMP_W" - } - }, - "ChildLock": { - "default": "0", - "label": "@WM_DRY27_BUTTON_CHILD_LOCK_W", - "type": "Enum", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ] - }, - "Option2": { - "default": "0", - "option": [ - { - "default": "0", - "value": "RemoteStart", - "startbit": 0, - "length": 1 - }, - { - "default": "0", - "value": "EnergySaver", - "startbit": 1, - "length": 1 - }, - { - "default": "0", - "value": "TurboSteam", - "startbit": 2, - "length": 1 - }, - { - "default": "0", - "value": "InitialBit", - "startbit": 6, - "length": 1 - } - ], - "type": "Bit" - }, - "Initial_Time_H": { - "default": 0, - "option": { - "min": 0, - "max": 24 - }, - "type": "Range" - }, - "Course": { - "option": [ - "Course" - ], - "type": "Reference" - } - }, - "Error": { - "0": { - "content": "ERROR_NOERROR_CONTENT", - "label": "ERROR_NOERROR", - "title": "ERROR_NOERROR_TITLE", - "_comment": "No Error" - }, - "2": { - "content": "@WM_US_DRYER_ERROR_CONTENT_TE2_S", - "label": "@WM_US_DRYER_ERROR_TE2_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE2_W", - "_comment": "TE2" - }, - "6": { - "content": "@WM_US_DRYER_ERROR_CONTENT_TE6_S", - "label": "@WM_US_DRYER_ERROR_TE6_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE6_W", - "_comment": "TE6" - }, - "5": { - "content": "@WM_US_DRYER_ERROR_CONTENT_TE5_S", - "label": "@WM_US_DRYER_ERROR_TE5_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE5_W", - "_comment": "TE5" - }, - "19": { - "content": "@WM_US_DRYER_ERROR_CONTENT_NP_GAS_W", - "label": "@WM_US_DRYER_ERROR_NP_GAS_W", - "title": "@WM_US_DRYER_ERROR_TITLE_NP_GAS_W", - "_comment": "nP" - }, - "1": { - "content": "@WM_US_DRYER_ERROR_CONTENT_TE1_S", - "label": "@WM_US_DRYER_ERROR_TE1_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE1_W", - "_comment": "TE1" - }, - "13": { - "content": "@WM_US_DRYER_ERROR_CONTENT_PS_S", - "label": "@WM_US_DRYER_ERROR_PS_W", - "title": "@WM_US_DRYER_ERROR_TITLE_PS_W", - "_comment": "HIGHPOWER" - } - }, - "Push": [ - { - "label": "@CP_ALARM_PRODUCT_STATE_W", - "pushList": [ - { - "0000": "PUSH_WM_COMPLETE" - }, - { - "0001": "PUSH_WM_REMOTE_ANOTHER_ID" - }, - { - "0100": "PUSH_WM_ERROR" - }, - { - "0200": "PUSH_WM_REMOTE_START_OFF" - }, - { - "0201": "PUSH_WM_REMOTE_START_ON" - } - ], - "groupCode": "20201", - "category": "PUSH_WM_STATE" - } - ], - "Course": { - "2": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_TOWELS_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "id": 2, - "_comment": "Towels", - "imgIndex": 42, - "courseType": "Course" - }, - "5": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_DELICATES_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "default": "2", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "id": 5, - "_comment": "Delicates", - "imgIndex": 41, - "courseType": "Course" - }, - "3": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_NORMAL_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "1", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "id": 3, - "_comment": "Normal", - "imgIndex": 61, - "courseType": "Course" - }, - "9": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_SMALL_LOAD_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "selectable": [ - 3, - 4, - 5 - ] - }, - { - "default": "5", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "id": 9, - "_comment": "Small Load", - "imgIndex": 46, - "courseType": "Course" - }, - "16": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_SPEED_DRY_W", - "function": [ - { - "default": "0", - "value": "DryLevel" - }, - { - "default": "5", - "value": "TempControl", - "selectable": [ - 2, - 3, - 5 - ] - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": 0, - "display": "25", - "value": "MoreLessTime" - } - ], - "id": 16, - "_comment": "Speed Dry", - "imgIndex": 72, - "courseType": "Course" - }, - "4": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_PERM_PRESS_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": 0, - "value": "WrinkleCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "id": 4, - "_comment": "PermPress", - "imgIndex": 40, - "courseType": "Course" - }, - "7": { - "script": "", - "controlEnable": true, - "freshcareEnable": false, - "name": "@WM_DRY27_COURSE_BEDDING_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "selectable": [ - 3, - 4, - 5 - ] - }, - { - "default": "3", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare" - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "id": 7, - "_comment": "Bedding \/ Bulky Large", - "imgIndex": 12, - "courseType": "Course" - }, - "1": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_HEAVY_DUTY_W", - "function": [ - { - "default": "3", - "value": "DryLevel", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "default": "5", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": 0, - "value": "MoreLessTime", - "visibility": "gone" - } - ], - "id": 1, - "_comment": "Heavy Duty", - "imgIndex": 33, - "courseType": "Course" - }, - "17": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_DRY27_COURSE_AIR_DRY_W", - "function": [ - { - "default": "0", - "value": "DryLevel" - }, - { - "default": "0", - "value": "TempControl" - }, - { - "default": "0", - "value": "TimeDry" - }, - { - "default": "0", - "value": "TurboSteam" - }, - { - "default": "0", - "value": "EnergySaver" - }, - { - "default": "0", - "value": "DampDrySingal" - }, - { - "default": "0", - "value": "LoadItem", - "visibility": "gone" - }, - { - "default": "0", - "value": "WrinkleCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": 0, - "display": "30", - "value": "MoreLessTime" - } - ], - "id": 17, - "_comment": "Air Dry", - "imgIndex": 73, - "courseType": "Course" - } - }, - "Config": { - "defaultCourseId": 3, - "defaultSmartCourseId": 100, - "fota": true, - "maxDownloadCourseNum": 1, - "freshCareLabel": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", - "powerOffDownload": true, - "SmartCourseCategory": [ - { - "label": "@WM_COURSE_CATEGORY_DRYNESS_W", - "courseIdList": [ - 100, - 202 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", - "courseIdList": [ - 101, - 102, - 107, - 108, - 113, - 115 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", - "courseIdList": [ - 105, - 110, - 114 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_SIZE_W", - "courseIdList": [ - 206 - ] - } - ], - "remoteStartLabel": "@WM_OPTION_REMOTE_START_W", - "downloadPanelLabel": "@WM_STATE_DOWNLOAD_COMPLETE_W" - } -} diff --git a/data/dryer-US-RV13B6ES_D_US_WIFI.json b/data/dryer-US-RV13B6ES_D_US_WIFI.json deleted file mode 100644 index 87e55d3..0000000 --- a/data/dryer-US-RV13B6ES_D_US_WIFI.json +++ /dev/null @@ -1,2287 +0,0 @@ -{ - "Info": { - "productType": "WM", - "country": "US", - "modelType": "Dryer", - "model": "Victor 2 Better(D) Wi-Fi", - "modelName": "RV13B6ES_D_US_WIFI", - "networkType": "WIFI", - "version": "3.5" - }, - "Module": { - "WPM": { - "GWM_CEN01_Main": "001", - "GWM_CRS01_Main": "001", - "GWM_CRS02_CourseList": "001", - "GWM_CRS03_CourseDetail": "001", - "GWM_WCH02_Main": "001", - "GWM_WCH01_UserGuide2": "001", - "GCM_SDS01_SdsMain": "001", - "GWM_SET01_Main": "001", - "GWM_SET02_PushList": "001", - "GWM_SET03_NickName": "001", - "GWM_FOT01_Main": "001" - }, - "Menu": [ - "GWM_CRS01_Main", - "GWM_WCH02_Main", - "GWM_ENM01_Main", - "GCM_SDS01_SdsMain", - "GWM_SET01_Main" - ] - }, - "Config": { - "remoteStartLabel": "@WM_OPTION_REMOTE_START_W", - "freshCareLabel": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", - "downloadPanelLabel": "@WM_STATE_DOWNLOAD_COMPLETE_W", - "maxDownloadCourseNum": 1, - "defaultCourseId": 3, - "defaultSmartCourseId": 100, - "fota": true, - "powerOffDownload": true, - "SmartCourseCategory": [ - { - "label": "@WM_COURSE_CATEGORY_DRYNESS_W", - "courseIdList": [ - 100, - 202, - 204 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", - "courseIdList": [ - 101, - 102, - 104, - 107, - 108, - 109, - 113, - 115 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", - "courseIdList": [ - 105, - 110, - 114 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_SIZE_W", - "courseIdList": [ - 103, - 205, - 206 - ] - } - ] - }, - "Value": { - "State": { - "type": "Enum", - "default": "0", - "option": { - "0": "@WM_STATE_POWER_OFF_W", - "1": "@WM_STATE_INITIAL_W", - "2": "@WM_STATE_RUNNING_W", - "3": "@WM_STATE_PAUSE_W", - "4": "@WM_STATE_END_W", - "5": "@WM_STATE_ERROR_W", - "8": "@WM_STATE_SMART_DIAGNOSIS_W", - "50": "@WM_STATE_DRYING_W", - "51": "@WM_STATE_COOLING_W", - "56": "@WM_STATE_WRINKLECARE_W" - } - }, - "PreState": { - "type": "Enum", - "default": "0", - "option": { - "0": "@WM_STATE_POWER_OFF_W", - "1": "@WM_STATE_INITIAL_W", - "2": "@WM_STATE_RUNNING_W", - "3": "@WM_STATE_PAUSE_W", - "4": "@WM_STATE_END_W", - "5": "@WM_STATE_ERROR_W", - "8": "@WM_STATE_SMART_DIAGNOSIS_W", - "50": "@WM_STATE_DRYING_W", - "51": "@WM_STATE_COOLING_W", - "56": "@WM_STATE_WRINKLECARE_W" - } - }, - "DryLevel": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_DRY_LEVEL_W", - "option": { - "0": "-", - "1": "@WM_DRY27_DRY_LEVEL_DAMP_W", - "2": "@WM_DRY27_DRY_LEVEL_LESS_W", - "3": "@WM_DRY27_DRY_LEVEL_NORMAL_W", - "4": "@WM_DRY27_DRY_LEVEL_MORE_W", - "5": "@WM_DRY27_DRY_LEVEL_VERY_W" - } - }, - "TempControl": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_TEMP_W", - "option": { - "0": "-", - "1": "@WM_DRY27_TEMP_ULTRA_LOW_W", - "2": "@WM_DRY27_TEMP_LOW_W", - "3": "@WM_DRY27_TEMP_MEDIUM_W", - "4": "@WM_DRY27_TEMP_MID_HIGH_W", - "5": "@WM_DRY27_TEMP_HIGH_W" - } - }, - "TimeDry": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_TIME_DRY_W", - "option": { - "0": "-", - "1": "20", - "2": "30", - "3": "40", - "4": "50", - "5": "60" - } - }, - "LoadItem": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_LOAD_ITEM_W", - "option": { - "0": "0", - "1": "1", - "2": "@WM_OPTION_LOAD_ITEM_3_W", - "3": "@WM_OPTION_LOAD_ITEM_5_W", - "4": "@WM_OPTION_LOAD_ITEM_BIG_W", - "5": "16", - "6": "18", - "D": "16" - }, - "changeTable": [ - { - "condition": { - "default": 1 - }, - "option": { - "0": "0", - "1": "1", - "2": "@WM_OPTION_LOAD_ITEM_3_W", - "3": "@WM_OPTION_LOAD_ITEM_5_W", - "4": "@WM_OPTION_LOAD_ITEM_BIG_W" - } - }, - { - "condition": { - "EasyIron": 1 - }, - "option": { - "0": "0", - "1": "1", - "2": "2", - "3": "3", - "4": "4", - "5": "5" - } - }, - { - "condition": { - "TurboSteam": 1 - }, - "option": { - "0": "0", - "1": "1", - "2": "@WM_OPTION_LOAD_ITEM_3_W", - "3": "@WM_OPTION_LOAD_ITEM_5_W", - "4": "@WM_OPTION_LOAD_ITEM_BIG_W" - } - }, - { - "condition": { - "ReduceStatic": 1 - }, - "option": { - "0": "0", - "1": "7", - "2": "9", - "3": "11", - "4": "14", - "5": "16", - "6": "18", - "D": "16" - } - } - ] - }, - "ChildLock": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_CHILD_LOCK_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "RemoteStart": { - "type": "Enum", - "default": "0", - "label": "@WM_OPTION_REMORT_START_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "WrinkleCare": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_WRINKLE_CARE_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "AntiBacterial": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_ANTI_BACTERIAL_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "DampDrySingal": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_DAMP_DRY_SIGNAL_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "TurboSteam": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_TURBO_STEAM_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "EnergySaver": { - "type": "Enum", - "default": "0", - "label": "@WM_DRY27_BUTTON_ENERGY_SAVER_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "EasyIron": { - "type": "Enum", - "default": "0", - "label": "@WM_OPTION_EASY_IRON_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "ReduceStatic": { - "type": "Enum", - "default": "0", - "label": "@WM_OPTION_REDUCE_STATIC_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "InitialBit": { - "type": "Boolean", - "default": false - }, - "MoreLessTime": { - "type": "Range", - "default": 0, - "label": "@WM_OPTION_MORE_LESS_W", - "option": { - "min": 10, - "max": 100 - } - }, - "Remain_Time_H": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 24 - } - }, - "Remain_Time_M": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 60 - } - }, - "Initial_Time_H": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 24 - } - }, - "Initial_Time_M": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 60 - } - }, - "Option1": { - "type": "Bit", - "default": "0", - "option": [ - { - "startbit": 0, - "length": 1, - "default": "0", - "value": "ChildLock" - }, - { - "startbit": 1, - "length": 1, - "default": "0", - "value": "ReduceStatic" - }, - { - "startbit": 2, - "length": 1, - "default": "0", - "value": "EasyIron" - }, - { - "startbit": 3, - "length": 1, - "default": "0", - "value": "DampDrySingal" - }, - { - "startbit": 4, - "length": 1, - "default": "0", - "value": "WrinkleCare" - }, - { - "startbit": 7, - "length": 1, - "default": "0", - "value": "AntiBacterial" - } - ] - }, - "Option2": { - "type": "Bit", - "default": "0", - "option": [ - { - "startbit": 0, - "length": 1, - "default": "0", - "value": "RemoteStart" - }, - { - "startbit": 1, - "length": 1, - "default": "0", - "value": "EnergySaver" - }, - { - "startbit": 2, - "length": 1, - "default": "0", - "value": "TurboSteam" - }, - { - "startbit": 6, - "length": 1, - "default": "0", - "value": "InitialBit" - } - ] - }, - "Course": { - "type": "Reference", - "option": [ - "Course" - ] - }, - "SmartCourse": { - "type": "Reference", - "option": [ - "SmartCourse" - ] - }, - "CurrentDownloadCourse": { - "type": "Reference", - "option": [ - "SmartCourse" - ] - }, - "Error": { - "type": "Reference", - "option": [ - "Error" - ] - } - }, - "Error": { - "0": { - "_comment": "No Error", - "label": "ERROR_NOERROR", - "title": "ERROR_NOERROR_TITLE", - "content": "ERROR_NOERROR_CONTENT" - }, - "1": { - "_comment": "TE1", - "label": "@WM_US_DRYER_ERROR_TE1_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE1_W", - "content": "@WM_US_DRYER_ERROR_CONTENT_TE1_S" - }, - "2": { - "_comment": "TE2", - "label": "@WM_US_DRYER_ERROR_TE2_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE2_W", - "content": "@WM_US_DRYER_ERROR_CONTENT_TE2_S" - }, - "5": { - "_comment": "TE5", - "label": "@WM_US_DRYER_ERROR_TE5_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE5_W", - "content": "@WM_US_DRYER_ERROR_CONTENT_TE5_S" - }, - "6": { - "_comment": "TE6", - "label": "@WM_US_DRYER_ERROR_TE6_W", - "title": "@WM_US_DRYER_ERROR_TITLE_TE6_W", - "content": "@WM_US_DRYER_ERROR_CONTENT_TE6_S" - }, - "13": { - "_comment": "HIGHPOWER", - "label": "@WM_US_DRYER_ERROR_PS_W", - "title": "@WM_US_DRYER_ERROR_TITLE_PS_W", - "content": "@WM_US_DRYER_ERROR_CONTENT_PS_S" - }, - "19": { - "_comment": "nP", - "label": "@WM_US_DRYER_ERROR_NP_GAS_W", - "title": "@WM_US_DRYER_ERROR_TITLE_NP_GAS_W", - "content": "@WM_US_DRYER_ERROR_CONTENT_NP_GAS_W" - } - }, - "Monitoring": { - "type": "BINARY(BYTE)", - "protocol": [ - { - "_comment": "State", - "startByte": 0, - "length": 1, - "value": "State" - }, - { - "_comment": "Remain Time H", - "startByte": 1, - "length": 1, - "value": "Remain_Time_H" - }, - { - "_comment": "Remain Time M", - "startByte": 2, - "length": 1, - "value": "Remain_Time_M" - }, - { - "_comment": "Initial Time H", - "startByte": 3, - "length": 1, - "value": "Initial_Time_H" - }, - { - "_comment": "Initial Time M", - "startByte": 4, - "length": 1, - "value": "Initial_Time_M" - }, - { - "_comment": "Course", - "startByte": 5, - "length": 1, - "value": "Course" - }, - { - "_comment": "Error", - "startByte": 6, - "length": 1, - "value": "Error" - }, - { - "_comment": "DryLevel", - "startByte": 7, - "length": 1, - "value": "DryLevel" - }, - { - "_comment": "TempControl", - "startByte": 8, - "length": 1, - "value": "TempControl" - }, - { - "_comment": "TimeDry", - "startByte": 9, - "length": 1, - "value": "TimeDry" - }, - { - "_comment": "MoreLessTime", - "startByte": 11, - "length": 1, - "value": "MoreLessTime" - }, - { - "_comment": "Option1", - "startByte": 14, - "length": 1, - "value": "Option1" - }, - { - "_comment": "Option2", - "startByte": 15, - "length": 1, - "value": "Option2" - }, - { - "_comment": "PreState", - "startByte": 19, - "length": 1, - "value": "PreState" - }, - { - "_comment": "SmartCourse", - "startByte": 20, - "length": 1, - "value": "SmartCourse" - }, - { - "_comment": "LoadItem", - "startByte": 22, - "length": 1, - "value": "LoadItem" - }, - { - "_comment": "Current DownloadCourse", - "startByte": 23, - "length": 1, - "value": "CurrentDownloadCourse" - } - ] - }, - "Push": [ - { - "category": "PUSH_WM_STATE", - "label": "@CP_ALARM_PRODUCT_STATE_W", - "groupCode": "20201", - "pushList": [ - { - "0000": "PUSH_WM_COMPLETE" - }, - { - "0001": "PUSH_WM_REMOTE_ANOTHER_ID" - }, - { - "0100": "PUSH_WM_ERROR" - }, - { - "0200": "PUSH_WM_REMOTE_START_OFF" - }, - { - "0201": "PUSH_WM_REMOTE_START_ON" - } - ] - } - ], - "ControlWifi": { - "type": "BINARY(BYTE)", - "action": { - "CourseDownload": { - "tag": [ - "COURSE", - "ID", - "DATA" - ], - "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" - }, - "OperationStart": { - "cmd": "Control", - "cmdOpt": "Operation", - "value": "Start", - "encode": true, - "data": "[{{Course}},0,0,{{TempControl}},0,0,{{TimeDry}},{{Option1}},{{Option2}},0,{{Course}},{{SmartCourse}},0,0,0,{{DryLevel}},{{LoadItem}},{{MoreLessTime}},0,0,0]" - }, - "OperationStop": { - "cmd": "Control", - "cmdOpt": "Operation", - "value": "Stop" - }, - "PowerOff": { - "cmd": "Control", - "cmdOpt": "Power", - "value": "Off" - }, - "MODE020Start": { - "cmd": "Control", - "cmdOpt": "Operation", - "value": "Start", - "encode": true, - "data": "[3,0,0,3,0,0,0,0,64,0,3,0,0,0,0,3,0,0,0,0,0]" - }, - "WrinkleCareOn": { - "cmd": "Control", - "cmdOpt": "WrinkleCare", - "value": "On" - } - } - }, - "Course": { - "1": { - "_comment": "Heavy Duty", - "courseType": "Course", - "id": 1, - "name": "@WM_DRY27_COURSE_HEAVY_DUTY_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 33, - "function": [ - { - "value": "DryLevel", - "default": "3", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "2": { - "_comment": "Towels", - "courseType": "Course", - "id": 2, - "name": "@WM_DRY27_COURSE_TOWELS_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 42, - "function": [ - { - "value": "DryLevel", - "default": "3", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TempControl", - "default": "4" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "3": { - "_comment": "Normal", - "courseType": "Course", - "id": 3, - "name": "@WM_DRY27_COURSE_NORMAL_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 61, - "function": [ - { - "value": "DryLevel", - "default": "3", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TempControl", - "default": "4" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "1" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "4": { - "_comment": "PermPress", - "courseType": "Course", - "id": 4, - "name": "@WM_DRY27_COURSE_PERM_PRESS_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 40, - "function": [ - { - "value": "DryLevel", - "default": "3", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "5": { - "_comment": "Delicates", - "courseType": "Course", - "id": 5, - "name": "@WM_DRY27_COURSE_DELICATES_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 41, - "function": [ - { - "value": "DryLevel", - "default": "3", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TempControl", - "default": "2" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "7": { - "_comment": "Bedding / Bulky Large", - "courseType": "Course", - "id": 7, - "name": "@WM_DRY27_COURSE_BEDDING_W", - "script": "", - "controlEnable": true, - "imgIndex": 12, - "freshcareEnable": false, - "function": [ - { - "value": "DryLevel", - "default": "3", - "selectable": [ - 3, - 4, - 5 - ] - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "8": { - "_comment": "Anti Bacterial", - "courseType": "Course", - "id": 8, - "name": "@WM_DRY27_COURSE_ANTI_BACTERIAL_W", - "script": "", - "controlEnable": true, - "imgIndex": 65, - "freshcareEnable": true, - "function": [ - { - "value": "DryLevel", - "default": "5" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "16": { - "_comment": "Speed Dry", - "courseType": "Course", - "id": 16, - "name": "@WM_DRY27_COURSE_SPEED_DRY_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 72, - "function": [ - { - "value": "DryLevel", - "default": "0" - }, - { - "value": "TempControl", - "default": "5", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "display": "25" - } - ] - }, - "17": { - "_comment": "Air Dry", - "courseType": "Course", - "id": 17, - "name": "@WM_DRY27_COURSE_AIR_DRY_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 73, - "function": [ - { - "value": "DryLevel", - "default": "0" - }, - { - "value": "TempControl", - "default": "0" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "display": "30" - } - ] - }, - "21": { - "_comment": "Steam Fresh", - "courseType": "Course", - "id": 21, - "name": "@WM_DRY27_COURSE_STEAM_FRESH_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 67, - "function": [ - { - "value": "DryLevel", - "default": "0" - }, - { - "value": "TempControl", - "default": "4", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "1", - "showing": "@CP_ON_EN_W" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "2", - "selectable": [ - 1, - 2, - 3, - 4 - ] - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "22": { - "_comment": "Steam Sanitary", - "courseType": "Course", - "id": 22, - "name": "@WM_DRY27_COURSE_STEAM_SANITARY_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 66, - "function": [ - { - "value": "DryLevel", - "default": "0" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "1", - "showing": "@CP_ON_EN_W" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "18": { - "_comment": "Time Dry", - "courseType": "Course", - "id": 18, - "name": "@WM_DRY27_BUTTON_TIME_DRY_W", - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "visibility": "gone", - "imgIndex": 15, - "function": [ - { - "value": "DryLevel", - "default": "0" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "4", - "selectable": [ - 1, - 2, - 3, - 4, - 5 - ] - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - } - }, - "SmartCourse": { - "100": { - "_comment": "Super Dry", - "courseType": "SmartCourse", - "id": 100, - "Course": 26, - "name": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_W", - "script": "@WM_US_DR_SMARTCOURSE_SUPER_DRY_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 75, - "function": [ - { - "value": "DryLevel", - "default": "5" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "101": { - "_comment": "Denim", - "courseType": "SmartCourse", - "id": 101, - "Course": 10, - "name": "@WM_US_DR_SMARTCOURSE_DENIM_W", - "script": "@WM_US_DR_SMARTCOURSE_DENIM_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 76, - "function": [ - { - "value": "DryLevel", - "default": "3", - "showing": "-" - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "102": { - "_comment": "Kids' Clothes", - "courseType": "SmartCourse", - "id": 102, - "Course": 12, - "name": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_W", - "script": "@WM_US_DR_SMARTCOURSE_KIDS_CLOTHES_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 77, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "103": { - "_comment": "Small Load", - "courseType": "SmartCourse", - "id": 103, - "Course": 9, - "name": "@WM_US_DR_SMARTCOURSE_SMALL_LOAD_W", - "script": "@WM_US_DR_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 46, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "104": { - "_comment": "Ultra Delicates", - "courseType": "SmartCourse", - "id": 104, - "Course": 6, - "name": "@WM_US_DR_SMARTCOURSE_ULTRA_DELICATES_W", - "script": "@WM_US_DR_SMARTCOURSE_ULTRA_DELICATES_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 78, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "1" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "105": { - "_comment": "Low Temp Dry", - "courseType": "SmartCourse", - "id": 105, - "Course": 13, - "name": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_W", - "script": "@WM_US_DR_SMARTCOURSE_LOW_TEMP_DRY_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 64, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "2" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "107": { - "_comment": "Gym Clothes", - "courseType": "SmartCourse", - "id": 107, - "Course": 11, - "name": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_W", - "script": "@WM_US_DR_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 81, - "function": [ - { - "value": "DryLevel", - "default": "3", - "showing": "-" - }, - { - "value": "TempControl", - "default": "5", - "showing": "-" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "108": { - "_comment": "Blankets", - "courseType": "SmartCourse", - "id": 108, - "Course": 14, - "name": "@WM_US_DR_SMARTCOURSE_BLANKETS_W", - "script": "@WM_US_DR_SMARTCOURSE_BLANKETS_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 82, - "function": [ - { - "value": "DryLevel", - "default": "5" - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "109": { - "_comment": "Blanket Refresh", - "courseType": "SmartCourse", - "id": 109, - "Course": 18, - "name": "@WM_US_DR_SMARTCOURSE_BLANKET_REFRESH_W", - "script": "@WM_US_DR_SMARTCOURSE_BLANKET_REFRESH_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 83, - "function": [ - { - "value": "DryLevel", - "default": "0" - }, - { - "value": "TempControl", - "default": "1" - }, - { - "value": "TimeDry", - "default": "1" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "display": "20" - } - ] - }, - "110": { - "_comment": "Rainy Day", - "courseType": "SmartCourse", - "id": 110, - "Course": 13, - "name": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_W", - "script": "@WM_US_DR_SMARTCOURSE_RAINY_DAY_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 84, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "2" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "113": { - "_comment": "Socks", - "courseType": "SmartCourse", - "id": 113, - "Course": 18, - "name": "@WM_US_DR_SMARTCOURSE_SOCKS_W", - "script": "@WM_US_DR_SMARTCOURSE_SOCKS_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 87, - "function": [ - { - "value": "DryLevel", - "default": "0" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "2", - "showing": "35" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 5, - "display": "35" - } - ] - }, - "114": { - "_comment": "Overnight Dry", - "courseType": "SmartCourse", - "id": 114, - "Course": 13, - "name": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_W", - "script": "@WM_US_DR_SMARTCOURSE_OVERNIGHT_DRY_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 88, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "2" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "1" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "115": { - "_comment": "Bedding / Curtains", - "courseType": "SmartCourse", - "id": 115, - "Course": 7, - "name": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_W", - "script": "@WM_US_DR_SMARTCOURSE_BEDDING_CURTAINS_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": false, - "imgIndex": 89, - "function": [ - { - "value": "DryLevel", - "default": "5" - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "202": { - "_comment": "Wrinkle Prevention", - "courseType": "SmartCourse", - "id": 202, - "Course": 3, - "name": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_W", - "script": "@WM_US_DR_SMARTCOURSE_WRINKLE_PREVENTION_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 80, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "1" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "204": { - "_comment": "Static Reduce", - "courseType": "SmartCourse", - "id": 204, - "Course": 3, - "name": "@WM_US_DR_SMARTCOURSE_STATIC_REDUCE_W", - "script": "@WM_US_DR_SMARTCOURSE_STATIC_REDUCE_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 23, - "function": [ - { - "value": "DryLevel", - "default": "3" - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "ReduceStatic", - "default": "1", - "visibility": "gone" - }, - { - "value": "LoadItem", - "default": "5", - "showing": "16" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "205": { - "_comment": "Half Load Dry", - "courseType": "SmartCourse", - "id": 205, - "Course": 3, - "name": "@WM_US_DR_SMARTCOURSE_HALF_LOAD_DRY_W", - "script": "@WM_US_DR_SMARTCOURSE_HALF_LOAD_DRY_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 176, - "function": [ - { - "value": "DryLevel", - "default": "4" - }, - { - "value": "TempControl", - "default": "3" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - }, - "206": { - "_comment": "Full Load Dry", - "courseType": "SmartCourse", - "id": 206, - "Course": 1, - "name": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_W", - "script": "@WM_US_DR_SMARTCOURSE_FULL_LOAD_DRY_SCRIPT_S", - "downloadEnable": true, - "controlEnable": true, - "freshcareEnable": true, - "imgIndex": 177, - "function": [ - { - "value": "DryLevel", - "default": "5" - }, - { - "value": "TempControl", - "default": "5" - }, - { - "value": "TimeDry", - "default": "0" - }, - { - "value": "TurboSteam", - "default": "0" - }, - { - "value": "EnergySaver", - "default": "0" - }, - { - "value": "DampDrySingal", - "default": "0" - }, - { - "value": "LoadItem", - "default": "0", - "visibility": "gone" - }, - { - "value": "WrinkleCare", - "default": "0" - }, - { - "value": "MoreLessTime", - "default": 0, - "visibility": "gone" - } - ] - } - }, - "EnergyMonitoring": { - "option": [ - "DryLevel", - "TempControl" - ], - "powertable": { - "1": 2600, - "2": 5200, - "3": 7800, - "4": 10400, - "5": 13000 - } - } -} -} diff --git a/data/washer-US-F3L2CNV4W_WIFI.json b/data/washer-US-F3L2CNV4W_WIFI.json deleted file mode 100644 index 927bc9e..0000000 --- a/data/washer-US-F3L2CNV4W_WIFI.json +++ /dev/null @@ -1,2618 +0,0 @@ -{ - "Module": { - "Menu": [ - "GWM_CRS01_Main", - "GWM_WCH01_Main", - "GWM_ENM01_Main", - "GCM_SDS01_SdsMain", - "GWM_SET01_Main" - ], - "WPM": { - "GWM_CRS01_Main": "001", - "GWM_CRS02_CourseList": "001", - "GWM_ENM01_Main": "001", - "GWM_SET01_Main": "001", - "GWM_WCH01_Main": "001", - "GWM_SET02_PushList": "001", - "GWM_SET03_NickName": "001", - "GWM_CEN01_Main": "001", - "GCM_SDS01_SdsMain": "001", - "GWM_WCH01_UserGuide2": "001", - "GWM_CRS03_CourseDetail": "001" - } - }, - "OPCourse": { - "3": { - "id": "3", - "_comment": "Allergiene" - }, - "20": { - "id": "20", - "_comment": "Drain+Spin" - }, - "18": { - "id": "18", - "_comment": "KidsWears" - }, - "0": { - "id": "0", - "_comment": "OPCourse" - }, - "14": { - "id": "14", - "_comment": "Towels" - }, - "13": { - "id": "13", - "_comment": "Tub Clean" - }, - "16": { - "id": "16", - "_comment": "Rinse+Spin" - }, - "11": { - "id": "11", - "_comment": "Hand Wash" - }, - "21": { - "id": "21", - "_comment": "Sportswear" - }, - "4": { - "id": "4", - "_comment": "Bedding" - }, - "17": { - "id": "17", - "_comment": "Rugged" - }, - "12": { - "id": "12", - "_comment": "Speed Wash" - }, - "2": { - "id": "2", - "_comment": "Sanitary" - }, - "5": { - "id": "5", - "_comment": "Perm.Press" - }, - "9": { - "id": "9", - "_comment": "Cold Care" - }, - "15": { - "id": "15", - "_comment": "Small Load" - }, - "7": { - "id": "7", - "_comment": "Heavy Duty" - }, - "1": { - "id": "1", - "_comment": "Refresh" - }, - "19": { - "id": "19", - "_comment": "WorkOut Wear" - }, - "6": { - "id": "6", - "_comment": "Normal" - }, - "22": { - "id": "22", - "_comment": "Jumbo Wash" - }, - "10": { - "id": "10", - "_comment": "Delicates" - }, - "8": { - "id": "8", - "_comment": "Bright Whites" - } - }, - "Error": { - "2": { - "content": "@WM_US_FL_ERROR_IE_CONTENT_S", - "label": "@WM_US_FL_ERROR_IE_W", - "title": "@WM_US_FL_ERROR_IE_TITLE_W", - "_comment": "IE Error - No Fill Error" - }, - "5": { - "content": "@WM_US_FL_ERROR_FE_CONTENT_S", - "label": "@WM_US_FL_ERROR_FE_W", - "title": "@WM_US_FL_ERROR_FE_TITLE_W", - "_comment": "FE Error - Overfill Error" - }, - "9": { - "content": "@WM_US_FL_ERROR_CE_CONTENT_S", - "label": "@WM_US_FL_ERROR_CE_W", - "title": "@WM_US_FL_ERROR_CE_TITLE_W", - "_comment": "CE Error" - }, - "15": { - "content": "@WM_US_FL_ERROR_EE_CONTENT_S", - "label": "@WM_US_FL_ERROR_EE_W", - "title": "@WM_US_FL_ERROR_EE_TITLE_W", - "_comment": "EE Error - EEPROM Error" - }, - "14": { - "content": "@WM_US_FL_ERROR_AE_CONTENT_S", - "label": "@WM_US_FL_ERROR_AE_W", - "title": "@WM_US_FL_ERROR_AE_TITLE_W", - "_comment": "AE Error" - }, - "7": { - "content": "@WM_US_FL_ERROR_TE_CONTENT_S", - "label": "@WM_US_FL_ERROR_TE_W", - "title": "@WM_US_FL_ERROR_TE_TITLE_W", - "_comment": "tE Error - Thermistor Error" - }, - "1": { - "content": "@WM_US_FL_ERROR_DE2_CONTENT_S", - "label": "@WM_US_FL_ERROR_DE2_W", - "title": "@WM_US_FL_ERROR_DE2_TITLE_W", - "_comment": "DE2 Error - Door Lock Error" - }, - "18": { - "content": "@WM_US_FL_WD_WIFI_ERROR_LOE_CONTENT", - "label": "@WM_US_FL_WD_WIFI_ERROR_LOE", - "title": "@WM_US_FL_WD_WIFI_ERROR_LOE_TITLE", - "_comment": "LOE Error - Sliding Lid Open Error" - }, - "0": { - "content": "ERROR_NOERROR_CONTENT", - "label": "ERROR_NOERROR", - "title": "ERROR_NOERROR_TITLE", - "_comment": "No Error" - }, - "19": { - "content": "@WM_WW_FL_ERROR_PS_CONTENT_S", - "label": "@WM_WW_FL_ERROR_PS_W", - "title": "@WM_WW_FL_ERROR_PS_TITLE_W", - "_comment": "PS Error " - }, - "3": { - "content": "@WM_US_FL_ERROR_OE_CONTENT_S", - "label": "@WM_US_FL_ERROR_OE_W", - "title": "@WM_US_FL_ERROR_OE_TITLE_W", - "_comment": "OE Error - Not Draining Error" - }, - "12": { - "content": "@WM_US_FL_ERROR_FF_CONTENT_S", - "label": "@WM_US_FL_ERROR_FF_W", - "title": "@WM_US_FL_ERROR_FF_TITLE_W", - "_comment": "FF Error - Freeze Error" - }, - "6": { - "content": "@WM_US_FL_ERROR_PE_CONTENT_S", - "label": "@WM_US_FL_ERROR_PE_W", - "title": "@WM_US_FL_ERROR_PE_TITLE_W", - "_comment": "PE Error - Water Sensor Error" - }, - "16": { - "content": "@WM_US_FL_ERROR_SUD_CONTENT_S", - "label": "@WM_US_FL_ERROR_SUD_W", - "title": "@WM_US_FL_ERROR_SUD_TITLE_W", - "_comment": "Sud Error - Suds Error" - }, - "4": { - "content": "@WM_US_FL_ERROR_UE_CONTENT_S", - "label": "@WM_US_FL_ERROR_UE_W", - "title": "@WM_US_FL_ERROR_UE_TITLE_W", - "_comment": "UE Error - Out of Balance Load" - }, - "10": { - "content": "@WM_US_FL_ERROR_DHE_CONTENT_S", - "label": "@WM_US_FL_ERROR_DHE_W", - "title": "@WM_US_FL_ERROR_DHE_TITLE_W", - "_comment": "dHE Error" - }, - "8": { - "content": "@WM_US_FL_ERROR_LE_CONTENT_S", - "label": "@WM_US_FL_ERROR_LE_W", - "title": "@WM_US_FL_ERROR_LE_TITLE_W", - "_comment": "LE Error - Locked Motor Error" - }, - "11": { - "content": "@WM_US_FL_ERROR_PF_CONTENT_S", - "label": "@WM_US_FL_ERROR_PF_W", - "title": "@WM_US_FL_ERROR_PF_TITLE_W", - "_comment": "PF Error - Power Failure Error" - }, - "17": { - "content": "@WM_US_FL_ERROR_DE1_CONTENT_S", - "label": "@WM_US_FL_ERROR_DE1_W", - "title": "@WM_US_FL_ERROR_DE1_TITLE_W", - "_comment": "DE1 Error - Door Open Error" - }, - "13": { - "content": "@WM_US_FL_ERROR_DCE_CONTENT_S", - "label": "@WM_US_FL_ERROR_DCE_W", - "title": "@WM_US_FL_ERROR_DCE_TITLE_W", - "_comment": "dCE Error" - } - }, - "Push": [ - { - "label": "@CP_ALARM_PRODUCT_STATE_W", - "pushList": [ - { - "0001": "PUSH_WM_COMPLETE" - }, - { - "0002": "PUSH_WM_ERROR" - }, - { - "0003": "PUSH_WM_REMOTE_START_ON" - }, - { - "0004": "PUSH_WM_REMOTE_START_OFF" - }, - { - "0005": "PUSH_WM_REMOTE_ANOTHER_ID" - } - ], - "groupCode": "20101", - "category": "PUSH_WM_STATE" - } - ], - "SmartMode": { - "MODE020": { - "modeCase": 0, - "_comment": "MODE_HOME_IN", - "control": [ - { - "command": "MODE020Start" - } - ], - "actionName": "@WM_MODE_COURSE_START_W" - }, - "MODE010": { - "modeCase": 0, - "_comment": "MODE_HOME_OUT", - "control": [ - { - "command": "OperationStart" - } - ], - "actionName": "@WM_MODE_FRESHCARE_ON_W" - } - }, - "ControlWifi": { - "action": { - "CourseDownload": { - "tag": [ - "COURSE", - "ID", - "DATA" - ], - "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]" - }, - "OperationStart": { - "encode": true, - "cmd": "Control", - "value": "Start", - "cmdOpt": "Operation", - "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]" - }, - "OperationStop": { - "cmd": "Control", - "value": "Stop", - "cmdOpt": "Operation" - }, - "MODE020Start": { - "encode": true, - "cmd": "Control", - "value": "Start", - "cmdOpt": "Operation", - "data": "[5,3,4,4,0,0,0,0,0,32,6,0,0,0,0,0,0,0,0,0,0]" - }, - "PowerOff": { - "cmd": "Control", - "value": "Off", - "cmdOpt": "Power" - } - }, - "type": "BINARY(BYTE)" - }, - "Value": { - "FreshCare": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_MX_OPTION_FRESH_CARE_F3L2CNV4W_WIFI_W" - }, - "Error": { - "option": [ - "Error" - ], - "type": "Reference" - }, - "Reserve_Time_H": { - "default": 0, - "option": { - "min": 1, - "max": 19 - }, - "type": "Range", - "label": "@WM_MX_OPTION_DELAY_WASH_F3L2CNV4W_WIFI_W" - }, - "InitialBit": { - "default": false, - "type": "Boolean" - }, - "PreWash": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_MX_OPTION_PRE_WASH_F3L2CNV4W_WIFI_W" - }, - "SpinSpeed": { - "default": "0", - "option": { - "0": "-", - "2": "@WM_MX_OPTION_SPIN_LOW_F3L2CNV4W_WIFI_W", - "3": "@WM_MX_OPTION_SPIN_MEDIUM_F3L2CNV4W_WIFI_W", - "5": "@WM_MX_OPTION_SPIN_EXTRA_HIGH_F3L2CNV4W_WIFI_W", - "4": "@WM_MX_OPTION_SPIN_HIGH_F3L2CNV4W_WIFI_W", - "1": "@WM_MX_OPTION_SPIN_NO_SPIN_F3L2CNV4W_WIFI_W" - }, - "type": "Enum", - "label": "@WM_MX_OPTION_SPIN_SPEED_F3L2CNV4W_WIFI_W" - }, - "RinseOption": { - "default": "0", - "option": [ - { - "default": "0", - "value": "RinseCount", - "startbit": 0, - "length": 4 - }, - { - "default": "0", - "value": "ExtraRinseCount", - "startbit": 4, - "length": 4 - } - ], - "type": "Bit" - }, - "WaterTemp": { - "default": "0", - "option": { - "0": "-", - "2": "@WM_MX_OPTION_TEMP_COLD_F3L2CNV4W_WIFI_W", - "3": "@WM_MX_OPTION_TEMP_SEMI_WARM_F3L2CNV4W_WIFI_W", - "6": "@WM_MX_OPTION_TEMP_HOT_F3L2CNV4W_WIFI_W", - "5": "@WM_MX_OPTION_TEMP_WARM_F3L2CNV4W_WIFI_W", - "4": "@WM_MX_OPTION_TEMP_WARM_F3L2CNV4W_WIFI_W", - "7": "@WM_MX_OPTION_TEMP_EXTRA_HOT_F3L2CNV4W_WIFI_W", - "1": "@WM_MX_OPTION_TEMP_TAP_COLD_F3L2CNV4W_WIFI_W" - }, - "type": "Enum", - "label": "@WM_MX_OPTION_WASH_TEMP_F3L2CNV4W_WIFI_W" - }, - "ExtraRinse": { - "default": "0", - "option": { - "0": "@WM_OPTION_EXTRA_RINSE_0_W", - "2": "@WM_OPTION_EXTRA_RINSE_2_W", - "3": "@WM_OPTION_EXTRA_RINSE_3_W", - "1": "@WM_OPTION_EXTRA_RINSE_1_W" - }, - "type": "Enum", - "label": "@WM_MX_OPTION_EXTRA_RINSE_F3L2CNV4W_WIFI_W" - }, - "Reserve_Time_M": { - "default": 0, - "option": { - "min": 0, - "max": 59 - }, - "type": "Range" - }, - "Remain_Time_M": { - "default": 0, - "option": { - "min": 0, - "max": 59 - }, - "type": "Range" - }, - "Remain_Time_H": { - "default": 0, - "option": { - "min": 0, - "max": 30 - }, - "type": "Range" - }, - "ChildLock": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_OPTION_CHILDLOCK_W" - }, - "ExtraRinseCount": { - "default": "0", - "option": { - "0": "-", - "2": "@WM_OPTION_EXTRA_RINSE_2_W", - "3": "@WM_OPTION_EXTRA_RINSE_3_W", - "1": "@WM_OPTION_EXTRA_RINSE_1_W" - }, - "type": "Enum", - "label": "@WM_MX_OPTION_EXTRA_RINSE_F3L2CNV4W_WIFI_W" - }, - "State": { - "default": "0", - "option": { - "5": "@WM_STATE_INITIAL_W", - "23": "@WM_STATE_RUNNING_W", - "30": "@WM_STATE_RINSING_W", - "79": "@WM_STATE_SMART_DIAG_W", - "6": "@WM_STATE_PAUSE_W", - "20": "@WM_STATE_DETECTING_W", - "81": "@WM_STATE_TUBCLEAN_COUNT_ALRAM_W", - "7": "@WM_STATE_ERROR_AUTO_OFF_W", - "60": "@WM_STATE_END_W", - "0": "@WM_STATE_POWER_OFF_W", - "40": "@WM_STATE_SPINNING_W", - "101": "@WM_STATE_SMART_DIAGDATA_W", - "22": "@WM_STATE_LOAD_DISPLAY_W", - "50": "@WM_STATE_DRYING_W", - "10": "@WM_STATE_RESERVE_W", - "21": "@WM_STATE_ADD_DRAIN_W", - "31": "@WM_STATE_RINSE_HOLD_W", - "61": "@WM_STATE_FRESHCARE_W" - }, - "type": "Enum" - }, - "TCLCount": { - "default": 0, - "option": { - "min": 0, - "max": 60 - }, - "type": "Range" - }, - "ColdWash": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_MX_OPTION_COLD_WASH_F3L2CNV4W_WIFI_W" - }, - "Initial_Time_M": { - "default": 0, - "option": { - "min": 0, - "max": 59 - }, - "type": "Range" - }, - "OPCourse": { - "option": [ - "OPCourse" - ], - "type": "Reference" - }, - "SmartCourse": { - "option": [ - "SmartCourse" - ], - "type": "Reference" - }, - "RinseCount": { - "default": "0", - "option": { - "0": "@WM_OPTION_RINSE_COUNT_0_TIME_W", - "2": "@WM_OPTION_RINSE_COUNT_2_TIME_W", - "3": "@WM_OPTION_RINSE_COUNT_3_TIME_W", - "1": "@WM_OPTION_RINSE_COUNT_1_TIME_W" - }, - "type": "Enum", - "label": "@WM_OPTION_RINSE_COUNT_W" - }, - "PreState": { - "default": "0", - "option": { - "5": "@WM_STATE_INITIAL_W", - "23": "@WM_STATE_RUNNING_W", - "30": "@WM_STATE_RINSING_W", - "79": "@WM_STATE_SMART_DIAG_W", - "6": "@WM_STATE_PAUSE_W", - "20": "@WM_STATE_DETECTING_W", - "81": "@WM_STATE_TUBCLEAN_COUNT_ALRAM_W", - "7": "@WM_STATE_ERROR_AUTO_OFF_W", - "60": "@WM_STATE_END_W", - "0": "@WM_STATE_POWER_OFF_W", - "40": "@WM_STATE_SPINNING_W", - "101": "@WM_STATE_SMART_DIAGDATA_W", - "22": "@WM_STATE_LOAD_DISPLAY_W", - "50": "@WM_STATE_DRYING_W", - "10": "@WM_STATE_RESERVE_W", - "21": "@WM_STATE_ADD_DRAIN_W", - "31": "@WM_STATE_RINSE_HOLD_W", - "61": "@WM_STATE_FRESHCARE_W" - }, - "type": "Enum" - }, - "Option1": { - "default": "0", - "option": [ - { - "default": "0", - "value": "ChildLock", - "startbit": 0, - "length": 1 - }, - { - "default": "0", - "value": "Steam", - "startbit": 2, - "length": 1 - }, - { - "default": "0", - "value": "PreWash", - "startbit": 3, - "length": 1 - }, - { - "default": "0", - "value": "ExtraRinse", - "startbit": 6, - "length": 1 - }, - { - "default": "0", - "value": "TurboWash", - "startbit": 7, - "length": 1 - } - ], - "type": "Bit" - }, - "Rinse_Spin": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_MX_OPTION_RINSE_SPIN_F3L2CNV4W_WIFI_W" - }, - "TurboWash": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_MX_OPTION_TURBO_WASH_F3L2CNV4W_WIFI_W" - }, - "RemoteStart": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_OPTION_REMOTE_START_W" - }, - "Option3": { - "default": "0", - "option": [ - { - "default": "0", - "value": "InitialBit", - "startbit": 5, - "length": 1 - } - ], - "type": "Bit" - }, - "Soil": { - "default": "0", - "option": { - "0": "-", - "2": "@WM_MX_OPTION_SOIL_LIGHT_NORMAL_F3L2CNV4W_WIFI_W", - "3": "@WM_MX_OPTION_SOIL_NORMAL_F3L2CNV4W_WIFI_W", - "5": "@WM_MX_OPTION_SOIL_HEAVY_F3L2CNV4W_WIFI_W", - "4": "@WM_MX_OPTION_SOIL_NORMAL_HEAVY_F3L2CNV4W_WIFI_W", - "1": "@WM_MX_OPTION_SOIL_LIGHT_F3L2CNV4W_WIFI_W" - }, - "type": "Enum", - "label": "@WM_MX_OPTION_SOIL_F3L2CNV4W_WIFI_W" - }, - "DryLevel": { - "default": "0", - "option": { - "0": "-", - "5": "@WM_MX_OPTION_DRY_TURBO_F3L2CNV4W_WIFI_W", - "9": "@WM_OPTION_DRY_TIME_90_W", - "6": "@WM_MX_OPTION_DRY_WIND_F3L2CNV4W_WIFI_W", - "7": "@WM_OPTION_DRY_TIME_30_W", - "10": "@WM_OPTION_DRY_TIME_120_W", - "8": "@WM_OPTION_DRY_TIME_60_W", - "11": "@WM_OPTION_DRY_TIME_150_W" - }, - "type": "Enum", - "label": "@WM_MX_OPTION_DRY_LEVEL_F3L2CNV4W_WIFI_W" - }, - "APCourse": { - "option": [ - "APCourse" - ], - "type": "Reference" - }, - "Option2": { - "default": "0", - "option": [ - { - "default": "0", - "value": "FreshCare", - "startbit": 0, - "length": 1 - }, - { - "default": "0", - "value": "ColdWash", - "startbit": 4, - "length": 1 - }, - { - "default": "0", - "value": "RemoteStart", - "startbit": 7, - "length": 1 - } - ], - "type": "Bit" - }, - "Initial_Time_H": { - "default": 0, - "option": { - "min": 0, - "max": 30 - }, - "type": "Range" - }, - "Steam": { - "default": "0", - "option": [ - "@CP_OFF_EN_W", - "@CP_ON_EN_W" - ], - "type": "Enum", - "label": "@WM_MX_OPTION_STEAM_F3L2CNV4W_WIFI_W" - } - }, - "Info": { - "networkType": "WIFI", - "modelType": "FL", - "version": "1.8", - "productType": "WM", - "model": "Victor 799", - "country": "US", - "modelName": "F3L2CNV4W_WIFI" - }, - "EnergyMonitoring": { - "option": [ - "WaterTemp", - "SpinSpeed", - "ExtraRinseCount" - ], - "powertable": { - "2": 1008, - "5": 1638, - "4": 1428, - "3": 1218, - "1": 798 - } - }, - "SmartCourse": { - "55": { - "script": "@WM_US_FL_SMARTCOURSE_DENIM_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_DENIM_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "3", - "value": "SpinSpeed" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 55, - "_comment": "Denim", - "imgIndex": 50, - "courseType": "SmartCourse" - }, - "109": { - "script": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_W", - "function": [ - { - "default": "5", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "1", - "value": "ExtraRinseCount" - }, - { - "default": "1", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 109, - "_comment": "FullLoadWash", - "imgIndex": 109, - "courseType": "SmartCourse" - }, - "105": { - "script": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "2", - "value": "SpinSpeed" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "1", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 105, - "_comment": "OvernightWash", - "imgIndex": 26, - "courseType": "SmartCourse" - }, - "107": { - "script": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 10, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "2", - "value": "SpinSpeed" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 107, - "_comment": "DelicateDresses", - "imgIndex": 113, - "courseType": "SmartCourse" - }, - "51": { - "script": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 15, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 51, - "_comment": "SmallLoad", - "imgIndex": 46, - "courseType": "SmartCourse" - }, - "60": { - "script": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 60, - "_comment": "RainyDay", - "imgIndex": 55, - "courseType": "SmartCourse" - }, - "100": { - "script": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "6", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "1", - "value": "ExtraRinseCount" - }, - { - "default": "1", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "1", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 100, - "_comment": "BabyClothes", - "imgIndex": 52, - "courseType": "SmartCourse" - }, - "53": { - "script": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 10, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "3", - "value": "SpinSpeed" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 53, - "_comment": "Beachwear", - "imgIndex": 48, - "courseType": "SmartCourse" - }, - "63": { - "script": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 63, - "_comment": "SweatStains", - "imgIndex": 58, - "courseType": "SmartCourse" - }, - "106": { - "script": "@WM_US_FL_SMARTCOURSE_ECONOWASH_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_ECONOWASH_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "1", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 106, - "_comment": "EconoWash", - "imgIndex": 112, - "courseType": "SmartCourse" - }, - "64": { - "script": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 12, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "6", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 64, - "_comment": "SingleGarments", - "imgIndex": 59, - "courseType": "SmartCourse" - }, - "108": { - "script": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 108, - "_comment": "HalfLoadWash", - "imgIndex": 15, - "courseType": "SmartCourse" - }, - "52": { - "script": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "3", - "value": "SpinSpeed" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 52, - "_comment": "ColorCare", - "imgIndex": 47, - "courseType": "SmartCourse" - }, - "54": { - "script": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 6, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "2", - "value": "SpinSpeed" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 54, - "_comment": "NewClothes", - "imgIndex": 49, - "courseType": "SmartCourse" - }, - "59": { - "script": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 10, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "2", - "value": "SpinSpeed" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 59, - "_comment": "Swimwear", - "imgIndex": 54, - "courseType": "SmartCourse" - }, - "61": { - "script": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", - "downloadEnable": true, - "OPCourse": 21, - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "3", - "value": "SpinSpeed" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "APCourse": 10, - "id": 61, - "_comment": "Gym Clothes", - "imgIndex": 56, - "courseType": "SmartCourse" - } - }, - "Monitoring": { - "type": "BINARY(BYTE)", - "protocol": [ - { - "value": "State", - "startByte": 0, - "_comment": "Status", - "length": 1 - }, - { - "value": "Remain_Time_H", - "startByte": 1, - "_comment": "RemainTime - Hour", - "length": 1 - }, - { - "value": "Remain_Time_M", - "startByte": 2, - "_comment": "RemainTime - Min", - "length": 1 - }, - { - "value": "Initial_Time_H", - "startByte": 3, - "_comment": "InitialTime - Hour", - "length": 1 - }, - { - "value": "Initial_Time_M", - "startByte": 4, - "_comment": "InitialTime - Min", - "length": 1 - }, - { - "value": "APCourse", - "startByte": 5, - "_comment": "AP Course", - "length": 1 - }, - { - "value": "Error", - "startByte": 6, - "_comment": "Error", - "length": 1 - }, - { - "value": "Soil", - "startByte": 7, - "_comment": "Wash Option", - "length": 1 - }, - { - "value": "SpinSpeed", - "startByte": 8, - "_comment": "Spin Option", - "length": 1 - }, - { - "value": "WaterTemp", - "startByte": 9, - "_comment": "Water Temp Option", - "length": 1 - }, - { - "value": "RinseOption", - "startByte": 10, - "_comment": "Rinse Option", - "length": 1 - }, - { - "value": "DryLevel", - "startByte": 11, - "_comment": "Dry Level Option", - "length": 1 - }, - { - "value": "Reserve_Time_H", - "startByte": 12, - "_comment": "ReserveTime - Hour", - "length": 1 - }, - { - "value": "Reserve_Time_M", - "startByte": 13, - "_comment": "ReserveTime - Min", - "length": 1 - }, - { - "value": "Option1", - "startByte": 14, - "_comment": "Option 1", - "length": 1 - }, - { - "value": "Option2", - "startByte": 15, - "_comment": "Option 2", - "length": 1 - }, - { - "value": "Option3", - "startByte": 16, - "_comment": "Option 3", - "length": 1 - }, - { - "value": "PreState", - "startByte": 19, - "_comment": "PreState", - "length": 1 - }, - { - "value": "SmartCourse", - "startByte": 20, - "_comment": "Download Course Index", - "length": 1 - }, - { - "value": "TCLCount", - "startByte": 21, - "_comment": "Tub Clean Count", - "length": 1 - }, - { - "value": "OPCourse", - "startByte": 22, - "_comment": "OP Course", - "length": 1 - }, - { - "value": "LoadLevel", - "startByte": 23, - "_comment": "Load Level", - "length": 1 - } - ] - }, - "APCourse": { - "2": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_BRIGHT_WHITES_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "6", - "value": "WaterTemp" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 8, - "id": 2, - "_comment": "Bright Whites", - "imgIndex": 37, - "courseType": "APCourse" - }, - "5": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_NORMAL_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 6, - "id": 5, - "_comment": "Normal", - "imgIndex": 32, - "courseType": "APCourse" - }, - "9": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_SPEED_WASH_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "1", - "value": "Soil" - }, - { - "default": "6", - "value": "WaterTemp" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 12, - "id": 9, - "_comment": "Speed Wash", - "imgIndex": 43, - "courseType": "APCourse" - }, - "6": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_PERMPRESS_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "3", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 5, - "id": 6, - "_comment": "Perm.Press", - "imgIndex": 40, - "courseType": "APCourse" - }, - "7": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_DELICATES_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "2", - "value": "WaterTemp" - }, - { - "default": "3", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 10, - "id": 7, - "_comment": "Delicates", - "imgIndex": 41, - "courseType": "APCourse" - }, - "4": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_HEAVY_DUTY_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "5", - "value": "Soil" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 7, - "id": 4, - "_comment": "Heavy Duty", - "imgIndex": 33, - "courseType": "APCourse" - }, - "10": { - "id": 10, - "_comment": "DownloadCourse", - "courseType": "APCourse" - }, - "8": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_TOWELS_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 14, - "id": 8, - "_comment": "Towels", - "imgIndex": 42, - "courseType": "APCourse" - }, - "3": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_BEDDING_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "3", - "value": "Soil" - }, - { - "default": "4", - "value": "WaterTemp" - }, - { - "default": "3", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 4, - "id": 3, - "_comment": "Bedding", - "imgIndex": 34, - "courseType": "APCourse" - }, - "11": { - "script": "", - "controlEnable": true, - "freshcareEnable": true, - "name": "@WM_MX_COURSE_NORMAL_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "0", - "value": "Soil" - }, - { - "default": "0", - "value": "WaterTemp" - }, - { - "default": "5", - "value": "SpinSpeed" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare", - "selectable": [ - 0, - 1 - ] - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 6, - "visibility": "gone", - "id": 11, - "_comment": "Spin Only", - "imgIndex": 184, - "courseType": "APCourse" - }, - "1": { - "script": "", - "controlEnable": true, - "freshcareEnable": false, - "name": "@WM_MX_COURSE_TUB_CLEAN_F3L2CNV4W_WIFI_W", - "function": [ - { - "default": "0", - "value": "Soil" - }, - { - "default": "0", - "value": "WaterTemp" - }, - { - "default": "3", - "value": "SpinSpeed", - "showing": "-" - }, - { - "default": "0", - "value": "RinseCount", - "visibility": "gone" - }, - { - "default": "0", - "value": "Rinse_Spin", - "visibility": "gone" - }, - { - "default": "0", - "value": "ExtraRinseCount" - }, - { - "default": "0", - "value": "PreWash" - }, - { - "default": "0", - "value": "ColdWash" - }, - { - "default": "0", - "value": "ExtraRinse", - "visibility": "gone" - }, - { - "default": "0", - "value": "FreshCare" - }, - { - "default": "0", - "value": "Reserve_Time_H" - } - ], - "OPCourse": 13, - "id": 1, - "_comment": "Tub Clean", - "imgIndex": 38, - "courseType": "APCourse" - } - }, - "Config": { - "expectedStartTime": true, - "defaultSmartCourseId": 51, - "maxDownloadCourseNum": 1, - "defaultCourseId": 5, - "SmartCourseCategory": [ - { - "label": "@WM_COURSE_CATEGORY_SIZE_W", - "courseIdList": [ - 51, - 64, - 108, - 109 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_STAIN_W", - "courseIdList": [ - 61, - 63, - 100 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", - "courseIdList": [ - 52, - 53, - 54, - 55, - 59, - 107 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", - "courseIdList": [ - 60, - 105, - 106 - ] - } - ], - "tubCleanCourseId": 1, - "downloadCourseAPId": 10, - "fota": true, - "freshCareCancelable": true, - "freshCareLabel": "@WM_MX_OPTION_FRESH_CARE_F3L2CNV4W_WIFI_W", - "remoteStartLabel": "@WM_MX_OPTION_REMOTE_START_F3L2CNV4W_WIFI_W", - "downloadPanelLabel": "@WM_MX_TERM_DOWNLOADED_F3L2CNV4W_WIFI_W" - } -} diff --git a/data/washer-US-F3L2CYV5W_WIFI.json b/data/washer-US-F3L2CYV5W_WIFI.json deleted file mode 100644 index 9d6b6cd..0000000 --- a/data/washer-US-F3L2CYV5W_WIFI.json +++ /dev/null @@ -1,2785 +0,0 @@ -{ - "Info": { - "productType": "WM", - "country": "US", - "modelType": "FL", - "model": "Victor 899", - "modelName": "F3L2CYV5W_WIFI", - "networkType": "WIFI", - "version": "3.3" - }, - "Module": { - "WPM": { - "GWM_CEN01_Main": "001", - "GWM_CRS01_Main": "001", - "GWM_CRS02_CourseList": "001", - "GWM_CRS03_CourseDetail": "001", - "GWM_WCH01_Main": "001", - "GWM_WCH01_UserGuide2": "001", - "GWM_ENM01_Main": "001", - "GCM_SDS01_SdsMain": "001", - "GWM_SET01_Main": "001", - "GWM_SET02_PushList": "001", - "GWM_SET03_NickName": "001" - }, - "Menu": [ - "GWM_CRS01_Main", - "GWM_WCH01_Main", - "GWM_ENM01_Main", - "GCM_SDS01_SdsMain", - "GWM_SET01_Main" - ] - }, - "Config": { - "powerOffDownload": true, - "expectedStartTime": true, - "fota": true, - "freshCareCancelable": true, - "freshCareLabel": "@WM_MX_OPTION_FRESH_CARE_W", - "downloadPanelLabel": "@WM_MX_TERM_DOWNLOADED_W", - "remoteStartLabel": "@WM_MX_OPTION_REMOTE_START_W", - "maxDownloadCourseNum": 1, - "defaultCourseId": 6, - "downloadCourseAPId": 12, - "defaultSmartCourseId": 51, - "tubCleanCourseId": 1, - "SmartCourseCategory": [ - { - "label": "@WM_COURSE_CATEGORY_SIZE_W", - "courseIdList": [ - 51, - 64, - 108, - 109 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_STAIN_W", - "courseIdList": [ - 61, - 63, - 100 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_FABRIC_CARE_W", - "courseIdList": [ - 52, - 53, - 54, - 55, - 59, - 107 - ] - }, - { - "label": "@WM_COURSE_CATEGORY_ENVIRONMENT_W", - "courseIdList": [ - 60, - 105, - 106 - ] - } - ] - }, - "Value": { - "State": { - "type": "Enum", - "default": "0", - "option": { - "0": "@WM_STATE_POWER_OFF_W", - "5": "@WM_STATE_INITIAL_W", - "6": "@WM_STATE_PAUSE_W", - "10": "@WM_STATE_RESERVE_W", - "20": "@WM_STATE_DETECTING_W", - "23": "@WM_STATE_RUNNING_W", - "24": "@WM_STATE_PREWASH_W", - "30": "@WM_STATE_RINSING_W", - "31": "@WM_STATE_RINSE_HOLD_W", - "40": "@WM_STATE_SPINNING_W", - "50": "@WM_STATE_DRYING_W", - "60": "@WM_STATE_END_W", - "61": "@WM_STATE_FRESHCARE_W" - } - }, - "PreState": { - "type": "Enum", - "default": "0", - "option": { - "0": "@WM_STATE_POWER_OFF_W", - "5": "@WM_STATE_INITIAL_W", - "6": "@WM_STATE_PAUSE_W", - "10": "@WM_STATE_RESERVE_W", - "20": "@WM_STATE_DETECTING_W", - "23": "@WM_STATE_RUNNING_W", - "24": "@WM_STATE_PREWASH_W", - "30": "@WM_STATE_RINSING_W", - "31": "@WM_STATE_RINSE_HOLD_W", - "40": "@WM_STATE_SPINNING_W", - "50": "@WM_STATE_DRYING_W", - "60": "@WM_STATE_END_W", - "61": "@WM_STATE_FRESHCARE_W" - } - }, - "RemoteStart": { - "type": "Enum", - "default": "0", - "label": "@WM_OPTION_REMOTE_START_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "InitialBit": { - "type": "Boolean", - "default": false - }, - "ChildLock": { - "type": "Enum", - "default": "0", - "label": "@WM_OPTION_CHILDLOCK_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "TCLCount": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 60 - } - }, - "Reserve_Time_H": { - "type": "Range", - "default": 0, - "label": "@WM_MX_OPTION_DELAY_WASH_W", - "option": { - "min": 1, - "max": 19 - } - }, - "Reserve_Time_M": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 59 - } - }, - "Remain_Time_H": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 30 - } - }, - "Remain_Time_M": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 59 - } - }, - "Initial_Time_H": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 30 - } - }, - "Initial_Time_M": { - "type": "Range", - "default": 0, - "option": { - "min": 0, - "max": 59 - } - }, - "Soil": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_SOIL_W", - "option": { - "0": "-", - "1": "@WM_MX_OPTION_SOIL_LIGHT_W", - "2": "@WM_MX_OPTION_SOIL_LIGHT_NORMAL_W", - "3": "@WM_MX_OPTION_SOIL_NORMAL_W", - "4": "@WM_MX_OPTION_SOIL_NORMAL_HEAVY_W", - "5": "@WM_MX_OPTION_SOIL_HEAVY_W" - } - }, - "SpinSpeed": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_SPIN_SPEED_W", - "option": { - "0": "-", - "1": "@WM_MX_OPTION_SPIN_NO_SPIN_W", - "2": "@WM_MX_OPTION_SPIN_LOW_W", - "3": "@WM_MX_OPTION_SPIN_MEDIUM_W", - "4": "@WM_MX_OPTION_SPIN_HIGH_W", - "5": "@WM_MX_OPTION_SPIN_EXTRA_HIGH_W" - } - }, - "WaterTemp": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_WASH_TEMP_W", - "option": { - "0": "-", - "1": "@WM_MX_OPTION_TEMP_TAP_COLD_W", - "2": "@WM_MX_OPTION_TEMP_COLD_W", - "3": "@WM_MX_OPTION_TEMP_ECO_WARM_W", - "4": "@WM_MX_OPTION_TEMP_WARM_W", - "5": "@WM_MX_OPTION_TEMP_WARM_W", - "6": "@WM_MX_OPTION_TEMP_HOT_W", - "7": "@WM_MX_OPTION_TEMP_EXTRA_HOT_W" - } - }, - "RinseOption": { - "type": "Bit", - "default": "0", - "option": [ - { - "startbit": 0, - "length": 4, - "default": "0", - "value": "RinseCount" - }, - { - "startbit": 4, - "length": 4, - "default": "0", - "value": "ExtraRinseCount" - } - ] - }, - "RinseCount": { - "type": "Enum", - "default": "0", - "label": "@WM_OPTION_RINSE_COUNT_W", - "option": { - "0": "@WM_OPTION_RINSE_COUNT_0_TIME_W", - "1": "@WM_OPTION_RINSE_COUNT_1_TIME_W", - "2": "@WM_OPTION_RINSE_COUNT_2_TIME_W", - "3": "@WM_OPTION_RINSE_COUNT_3_TIME_W" - } - }, - "ExtraRinseCount": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_EXTRA_RINSE_W", - "option": { - "0": "-", - "1": "@WM_OPTION_EXTRA_RINSE_1_W", - "2": "@WM_OPTION_EXTRA_RINSE_2_W", - "3": "@WM_OPTION_EXTRA_RINSE_3_W" - } - }, - "ExtraRinse": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_EXTRA_RINSE_W", - "option": { - "0": "@WM_OPTION_EXTRA_RINSE_0_W", - "1": "@WM_OPTION_EXTRA_RINSE_1_W", - "2": "@WM_OPTION_EXTRA_RINSE_2_W", - "3": "@WM_OPTION_EXTRA_RINSE_3_W" - } - }, - "ColdWash": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_COLD_WASH_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "DryLevel": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_DRY_LEVEL_W", - "option": { - "0": "-", - "5": "@WM_MX_OPTION_DRY_TURBO_W", - "6": "@WM_MX_OPTION_DRY_WIND_W", - "7": "@WM_OPTION_DRY_TIME_30_W", - "8": "@WM_OPTION_DRY_TIME_60_W", - "9": "@WM_OPTION_DRY_TIME_90_W", - "10": "@WM_OPTION_DRY_TIME_120_W", - "11": "@WM_OPTION_DRY_TIME_150_W" - } - }, - "TurboWash": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_TURBO_WASH_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "Steam": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_STEAM_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "PreWash": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_PRE_WASH_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "FreshCare": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_FRESH_CARE_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "Rinse_Spin": { - "type": "Enum", - "default": "0", - "label": "@WM_MX_OPTION_RINSE_SPIN_W", - "option": { - "0": "@CP_OFF_EN_W", - "1": "@CP_ON_EN_W" - } - }, - "Option1": { - "type": "Bit", - "default": "0", - "option": [ - { - "startbit": 0, - "length": 1, - "default": "0", - "value": "ChildLock" - }, - { - "startbit": 2, - "length": 1, - "default": "0", - "value": "Steam" - }, - { - "startbit": 3, - "length": 1, - "default": "0", - "value": "PreWash" - }, - { - "startbit": 6, - "length": 1, - "default": "0", - "value": "ExtraRinse" - }, - { - "startbit": 7, - "length": 1, - "default": "0", - "value": "TurboWash" - } - ] - }, - "Option2": { - "type": "Bit", - "default": "0", - "option": [ - { - "startbit": 0, - "length": 1, - "default": "0", - "value": "FreshCare" - }, - { - "startbit": 4, - "length": 1, - "default": "0", - "value": "ColdWash" - }, - { - "startbit": 7, - "length": 1, - "default": "0", - "value": "RemoteStart" - } - ] - }, - "Option3": { - "type": "Bit", - "default": "0", - "option": [ - { - "startbit": 5, - "length": 1, - "default": "0", - "value": "InitialBit" - } - ] - }, - "Error": { - "type": "Reference", - "option": [ - "Error" - ] - }, - "OPCourse": { - "type": "Reference", - "option": [ - "OPCourse" - ] - }, - "APCourse": { - "type": "Reference", - "option": [ - "APCourse" - ] - }, - "SmartCourse": { - "type": "Reference", - "option": [ - "SmartCourse" - ] - } - }, - "Error": { - "0": { - "_comment": "No Error", - "label": "ERROR_NOERROR", - "title": "ERROR_NOERROR_TITLE", - "content": "ERROR_NOERROR_CONTENT" - }, - "1": { - "_comment": "DE2 Error - Door Lock Error", - "label": "@WM_US_FL_ERROR_DE2_W", - "title": "@WM_US_FL_ERROR_DE2_TITLE_W", - "content": "@WM_US_FL_ERROR_DE2_CONTENT_S" - }, - "2": { - "_comment": "IE Error - No Fill Error", - "label": "@WM_US_FL_ERROR_IE_W", - "title": "@WM_US_FL_ERROR_IE_TITLE_W", - "content": "@WM_US_FL_ERROR_IE_CONTENT_S" - }, - "3": { - "_comment": "OE Error - Not Draining Error", - "label": "@WM_US_FL_ERROR_OE_W", - "title": "@WM_US_FL_ERROR_OE_TITLE_W", - "content": "@WM_US_FL_ERROR_OE_CONTENT_S" - }, - "4": { - "_comment": "UE Error - Out of Balance Load", - "label": "@WM_US_FL_ERROR_UE_W", - "title": "@WM_US_FL_ERROR_UE_TITLE_W", - "content": "@WM_US_FL_ERROR_UE_CONTENT_S" - }, - "5": { - "_comment": "FE Error - Overfill Error", - "label": "@WM_US_FL_ERROR_FE_W", - "title": "@WM_US_FL_ERROR_FE_TITLE_W", - "content": "@WM_US_FL_ERROR_FE_CONTENT_S" - }, - "6": { - "_comment": "PE Error - Water Sensor Error", - "label": "@WM_US_FL_ERROR_PE_W", - "title": "@WM_US_FL_ERROR_PE_TITLE_W", - "content": "@WM_US_FL_ERROR_PE_CONTENT_S" - }, - "7": { - "_comment": "tE Error - Thermistor Error", - "label": "@WM_US_FL_ERROR_TE_W", - "title": "@WM_US_FL_ERROR_TE_TITLE_W", - "content": "@WM_US_FL_ERROR_TE_CONTENT_S" - }, - "8": { - "_comment": "LE Error - Locked Motor Error", - "label": "@WM_US_FL_ERROR_LE_W", - "title": "@WM_US_FL_ERROR_LE_TITLE_W", - "content": "@WM_US_FL_ERROR_LE_CONTENT_S" - }, - "9": { - "_comment": "CE Error", - "label": "@WM_US_FL_ERROR_CE_W", - "title": "@WM_US_FL_ERROR_CE_TITLE_W", - "content": "@WM_US_FL_ERROR_CE_CONTENT_S" - }, - "10": { - "_comment": "dHE Error", - "label": "@WM_US_FL_ERROR_DHE_W", - "title": "@WM_US_FL_ERROR_DHE_TITLE_W", - "content": "@WM_US_FL_ERROR_DHE_CONTENT_S" - }, - "11": { - "_comment": "PF Error - Power Failure Error", - "label": "@WM_US_FL_ERROR_PF_W", - "title": "@WM_US_FL_ERROR_PF_TITLE_W", - "content": "@WM_US_FL_ERROR_PF_CONTENT_S" - }, - "12": { - "_comment": "FF Error - Freeze Error", - "label": "@WM_US_FL_ERROR_FF_W", - "title": "@WM_US_FL_ERROR_FF_TITLE_W", - "content": "@WM_US_FL_ERROR_FF_CONTENT_S" - }, - "13": { - "_comment": "dCE Error", - "label": "@WM_US_FL_ERROR_DCE_W", - "title": "@WM_US_FL_ERROR_DCE_TITLE_W", - "content": "@WM_US_FL_ERROR_DCE_CONTENT_S" - }, - "14": { - "_comment": "AE Error", - "label": "@WM_US_FL_ERROR_AE_W", - "title": "@WM_US_FL_ERROR_AE_TITLE_W", - "content": "@WM_US_FL_ERROR_AE_CONTENT_S" - }, - "15": { - "_comment": "EE Error - EEPROM Error", - "label": "@WM_US_FL_ERROR_EE_W", - "title": "@WM_US_FL_ERROR_EE_TITLE_W", - "content": "@WM_US_FL_ERROR_EE_CONTENT_S" - }, - "16": { - "_comment": "Sud Error - Suds Error", - "label": "@WM_US_FL_ERROR_SUD_W", - "title": "@WM_US_FL_ERROR_SUD_TITLE_W", - "content": "@WM_US_FL_ERROR_SUD_CONTENT_S" - }, - "17": { - "_comment": "DE1 Error - Door Open Error", - "label": "@WM_US_FL_ERROR_DE1_W", - "title": "@WM_US_FL_ERROR_DE1_TITLE_W", - "content": "@WM_US_FL_ERROR_DE1_CONTENT_S" - }, - "18": { - "_comment": "LOE Error - Sliding Lid Open Error", - "label": "@WM_US_FL_WD_WIFI_ERROR_LOE", - "title": "@WM_US_FL_WD_WIFI_ERROR_LOE_TITLE", - "content": "@WM_US_FL_WD_WIFI_ERROR_LOE_CONTENT" - }, - "19": { - "_comment": "PS Error ", - "label": "@WM_WW_FL_ERROR_PS_W", - "title": "@WM_WW_FL_ERROR_PS_TITLE_W", - "content": "@WM_WW_FL_ERROR_PS_CONTENT_S" - } - }, - "Monitoring": { - "type": "BINARY(BYTE)", - "protocol": [ - { - "_comment": "Status", - "startByte": 0, - "length": 1, - "value": "State" - }, - { - "_comment": "RemainTime - Hour", - "startByte": 1, - "length": 1, - "value": "Remain_Time_H" - }, - { - "_comment": "RemainTime - Min", - "startByte": 2, - "length": 1, - "value": "Remain_Time_M" - }, - { - "_comment": "InitialTime - Hour", - "startByte": 3, - "length": 1, - "value": "Initial_Time_H" - }, - { - "_comment": "InitialTime - Min", - "startByte": 4, - "length": 1, - "value": "Initial_Time_M" - }, - { - "_comment": "AP Course", - "startByte": 5, - "length": 1, - "value": "APCourse" - }, - { - "_comment": "Error", - "startByte": 6, - "length": 1, - "value": "Error" - }, - { - "_comment": "Wash Option", - "startByte": 7, - "length": 1, - "value": "Soil" - }, - { - "_comment": "Spin Option", - "startByte": 8, - "length": 1, - "value": "SpinSpeed" - }, - { - "_comment": "Water Temp Option", - "startByte": 9, - "length": 1, - "value": "WaterTemp" - }, - { - "_comment": "Rinse Option", - "startByte": 10, - "length": 1, - "value": "RinseOption" - }, - { - "_comment": "Dry Level Option", - "startByte": 11, - "length": 1, - "value": "DryLevel" - }, - { - "_comment": "ReserveTime - Hour", - "startByte": 12, - "length": 1, - "value": "Reserve_Time_H" - }, - { - "_comment": "ReserveTime - Min", - "startByte": 13, - "length": 1, - "value": "Reserve_Time_M" - }, - { - "_comment": "Option 1", - "startByte": 14, - "length": 1, - "value": "Option1" - }, - { - "_comment": "Option 2", - "startByte": 15, - "length": 1, - "value": "Option2" - }, - { - "_comment": "Option 3", - "startByte": 16, - "length": 1, - "value": "Option3" - }, - { - "_comment": "PreState", - "startByte": 19, - "length": 1, - "value": "PreState" - }, - { - "_comment": "Download Course Index", - "startByte": 20, - "length": 1, - "value": "SmartCourse" - }, - { - "_comment": "Tub Clean Count", - "startByte": 21, - "length": 1, - "value": "TCLCount" - }, - { - "_comment": "OP Course", - "startByte": 22, - "length": 1, - "value": "OPCourse" - }, - { - "_comment": "Load Level", - "startByte": 23, - "length": 1, - "value": "LoadLevel" - } - ] - }, - "Push": [ - { - "category": "PUSH_WM_STATE", - "label": "@CP_ALARM_PRODUCT_STATE_W", - "groupCode": "20101", - "pushList": [ - { - "0001": "PUSH_WM_COMPLETE" - }, - { - "0002": "PUSH_WM_ERROR" - }, - { - "0003": "PUSH_WM_REMOTE_START_ON" - }, - { - "0004": "PUSH_WM_REMOTE_START_OFF" - }, - { - "0005": "PUSH_WM_REMOTE_ANOTHER_ID" - } - ] - } - ], - "EnergyMonitoring": { - "option": [ - "WaterTemp", - "SpinSpeed", - "ExtraRinseCount" - ], - "powertable": { - "1": 798, - "2": 1008, - "3": 1218, - "4": 1428, - "5": 1638 - } - }, - "SmartMode": { - "MODE010": { - "_comment": "MODE_HOME_OUT", - "modeCase": 0, - "actionName": "@WM_MODE_FRESHCARE_ON_W", - "control": [ - { - "command": "OperationStart" - } - ] - }, - "MODE020": { - "_comment": "MODE_HOME_IN", - "modeCase": 0, - "actionName": "@WM_MODE_COURSE_START_W", - "control": [ - { - "command": "MODE020Start" - } - ] - } - }, - "ControlWifi": { - "type": "BINARY(BYTE)", - "action": { - "CourseDownload": { - "tag": [ - "COURSE", - "ID", - "DATA" - ], - "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]" - }, - "PowerOff": { - "cmd": "Control", - "cmdOpt": "Power", - "value": "Off" - }, - "OperationStart": { - "cmd": "Control", - "cmdOpt": "Operation", - "value": "Start", - "data": "[{{APCourse}},{{Soil}},{{SpinSpeed}},{{WaterTemp}},{{RinseOption}},{{Reserve_Time_H}},{{Reserve_Time_M}},{{Option1}},{{Option2}},{{Option3}},{{OPCourse}},{{SmartCourse}},0,0,0,0,0,0,0,0,0]", - "encode": true - }, - "OperationStop": { - "cmd": "Control", - "cmdOpt": "Operation", - "value": "Stop" - }, - "MODE020Start": { - "cmd": "Control", - "cmdOpt": "Operation", - "value": "Start", - "data": "[6,3,4,4,0,0,0,0,0,32,6,0,0,0,0,0,0,0,0,0,0]", - "encode": true - } - } - }, - "APCourse": { - "6": { - "_comment": "Normal", - "courseType": "APCourse", - "id": 6, - "OPCourse": 6, - "name": "@WM_MX_COURSE_NORMAL_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 32, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "5": { - "_comment": "Heavy Duty", - "courseType": "APCourse", - "id": 5, - "OPCourse": 7, - "name": "@WM_MX_COURSE_HEAVY_DUTY_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 33, - "function": [ - { - "value": "Soil", - "default": "5" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "SpinSpeed", - "default": "5" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "4": { - "_comment": "Bedding", - "courseType": "APCourse", - "id": 4, - "OPCourse": 4, - "name": "@WM_MX_COURSE_BEDDING_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 34, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "SpinSpeed", - "default": "3" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "8": { - "_comment": "Perm.Press", - "courseType": "APCourse", - "id": 8, - "OPCourse": 5, - "name": "@WM_MX_COURSE_PERMPRESS_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 40, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "SpinSpeed", - "default": "3" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "10": { - "_comment": "Towels", - "courseType": "APCourse", - "id": 10, - "OPCourse": 14, - "name": "@WM_MX_COURSE_TOWELS_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 42, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "SpinSpeed", - "default": "5" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "3": { - "_comment": "Sanitary", - "courseType": "APCourse", - "id": 3, - "OPCourse": 2, - "name": "@WM_MX_COURSE_SANITARY_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 35, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "7" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "2": { - "_comment": "Allergiene", - "courseType": "APCourse", - "id": 2, - "OPCourse": 3, - "name": "@WM_MX_COURSE_ALLERGIENE_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 36, - "function": [ - { - "value": "Soil", - "default": "0" - }, - { - "value": "WaterTemp", - "default": "0" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "1" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "7": { - "_comment": "Bright Whites", - "courseType": "APCourse", - "id": 7, - "OPCourse": 8, - "name": "@WM_MX_COURSE_BRIGHT_WHITES_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 37, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "6" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "1": { - "_comment": "Tub Clean", - "courseType": "APCourse", - "id": 1, - "OPCourse": 13, - "name": "@WM_MX_COURSE_TUB_CLEAN_W", - "script": "", - "freshcareEnable": false, - "controlEnable": true, - "imgIndex": 38, - "function": [ - { - "value": "Soil", - "default": "0" - }, - { - "value": "WaterTemp", - "default": "0" - }, - { - "value": "SpinSpeed", - "default": "3", - "showing": "-" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "1" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0" - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "9": { - "_comment": "Delicates", - "courseType": "APCourse", - "id": 9, - "OPCourse": 10, - "name": "@WM_MX_COURSE_DELICATES_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 41, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "SpinSpeed", - "default": "3" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "11": { - "_comment": "Speed Wash", - "courseType": "APCourse", - "id": 11, - "OPCourse": 12, - "name": "@WM_MX_COURSE_SPEED_WASH_W", - "script": "", - "freshcareEnable": true, - "controlEnable": true, - "imgIndex": 43, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "WaterTemp", - "default": "6" - }, - { - "value": "SpinSpeed", - "default": "5" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "12": { - "_comment": "DownloadCourse", - "courseType": "APCourse", - "id": 12 - } - }, - "OPCourse": { - "0": { - "_comment": "OPCourse", - "id": "0" - }, - "1": { - "_comment": "Refresh", - "id": "1" - }, - "2": { - "_comment": "Sanitary", - "id": "2" - }, - "3": { - "_comment": "Allergiene", - "id": "3" - }, - "4": { - "_comment": "Bedding", - "id": "4" - }, - "5": { - "_comment": "Perm.Press", - "id": "5" - }, - "6": { - "_comment": "Normal", - "id": "6" - }, - "7": { - "_comment": "Heavy Duty", - "id": "7" - }, - "8": { - "_comment": "Bright Whites", - "id": "8" - }, - "9": { - "_comment": "Cold Care", - "id": "9" - }, - "10": { - "_comment": "Delicates", - "id": "10" - }, - "11": { - "_comment": "Hand Wash", - "id": "11" - }, - "12": { - "_comment": "Speed Wash", - "id": "12" - }, - "13": { - "_comment": "Tub Clean", - "id": "13" - }, - "14": { - "_comment": "Towels", - "id": "14" - }, - "15": { - "_comment": "Small Load", - "id": "15" - }, - "16": { - "_comment": "Rinse+Spin", - "id": "16" - }, - "17": { - "_comment": "Rugged", - "id": "17" - }, - "18": { - "_comment": "KidsWears", - "id": "18" - }, - "19": { - "_comment": "WorkOut Wear", - "id": "19" - }, - "20": { - "_comment": "Drain+Spin", - "id": "20" - }, - "21": { - "_comment": "Sportswear", - "id": "21" - }, - "22": { - "_comment": "Jumbo Wash", - "id": "22" - } - }, - "SmartCourse": { - "51": { - "_comment": "SmallLoad", - "courseType": "SmartCourse", - "id": 51, - "OPCourse": 15, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_W", - "script": "@WM_US_FL_SMARTCOURSE_SMALL_LOAD_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 46, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "52": { - "_comment": "ColorCare", - "courseType": "SmartCourse", - "id": 52, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_W", - "script": "@WM_US_FL_SMARTCOURSE_COLOR_CARE_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 47, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "53": { - "_comment": "Beachwear", - "courseType": "SmartCourse", - "id": 53, - "OPCourse": 10, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_W", - "script": "@WM_US_FL_SMARTCOURSE_BEACHWEAR_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 48, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "SpinSpeed", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "54": { - "_comment": "NewClothes", - "courseType": "SmartCourse", - "id": 54, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_W", - "script": "@WM_US_FL_SMARTCOURSE_NEW_CLOTHES_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 49, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "SpinSpeed", - "default": "2" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "55": { - "_comment": "Denim", - "courseType": "SmartCourse", - "id": 55, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_DENIM_W", - "script": "@WM_US_FL_SMARTCOURSE_DENIM_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 50, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "59": { - "_comment": "Swimwear", - "courseType": "SmartCourse", - "id": 59, - "OPCourse": 10, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_W", - "script": "@WM_US_FL_SMARTCOURSE_SWIMWEAR_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 54, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "SpinSpeed", - "default": "2" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "60": { - "_comment": "RainyDay", - "courseType": "SmartCourse", - "id": 60, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_W", - "script": "@WM_US_FL_SMARTCOURSE_RAINY_DAY_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 55, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "5" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "61": { - "_comment": "Gym Clothes", - "courseType": "SmartCourse", - "id": 61, - "OPCourse": 21, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_W", - "script": "@WM_US_FL_SMARTCOURSE_GYM_CLOTHES_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 56, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "SpinSpeed", - "default": "3" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "63": { - "_comment": "SweatStains", - "courseType": "SmartCourse", - "id": 63, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_W", - "script": "@WM_US_FL_SMARTCOURSE_SWEAT_STAINS_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 58, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "64": { - "_comment": "SingleGarments", - "courseType": "SmartCourse", - "id": 64, - "OPCourse": 12, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_W", - "script": "@WM_US_FL_SMARTCOURSE_SINGLE_GARMENTS_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 59, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "WaterTemp", - "default": "6" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "100": { - "_comment": "BabyClothes", - "courseType": "SmartCourse", - "id": 100, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_W", - "script": "@WM_US_FL_SMARTCOURSE_BABY_CLOTHES_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 52, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "WaterTemp", - "default": "6" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "1" - }, - { - "value": "ExtraRinse", - "default": "1", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "1" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "105": { - "_comment": "OvernightWash", - "courseType": "SmartCourse", - "id": 105, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_W", - "script": "@WM_US_FL_SMARTCOURSE_OVERNIGHT_WASH_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 26, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "2" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "1", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "106": { - "_comment": "EconoWash", - "courseType": "SmartCourse", - "id": 106, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_ECONOWASH_W", - "script": "@WM_US_FL_SMARTCOURSE_ECONOWASH_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 112, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "1" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "107": { - "_comment": "DelicateDresses", - "courseType": "SmartCourse", - "id": 107, - "OPCourse": 10, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_W", - "script": "@WM_US_FL_SMARTCOURSE_DELICATE_DRESSES_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 113, - "function": [ - { - "value": "Soil", - "default": "1" - }, - { - "value": "SpinSpeed", - "default": "2" - }, - { - "value": "WaterTemp", - "default": "2" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "108": { - "_comment": "HalfLoadWash", - "courseType": "SmartCourse", - "id": 108, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_W", - "script": "@WM_US_FL_SMARTCOURSE_HALF_LOAD_WASH_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 15, - "function": [ - { - "value": "Soil", - "default": "3" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "0" - }, - { - "value": "ExtraRinse", - "default": "0", - "visibility": "gone" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - }, - "109": { - "_comment": "FullLoadWash", - "courseType": "SmartCourse", - "id": 109, - "OPCourse": 6, - "APCourse": 12, - "name": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_W", - "script": "@WM_US_FL_SMARTCOURSE_FULL_LOAD_WASH_SCRIPT_S", - "freshcareEnable": true, - "downloadEnable": true, - "controlEnable": true, - "imgIndex": 109, - "function": [ - { - "value": "Soil", - "default": "5" - }, - { - "value": "SpinSpeed", - "default": "4" - }, - { - "value": "WaterTemp", - "default": "4" - }, - { - "value": "RinseCount", - "default": "0", - "visibility": "gone" - }, - { - "value": "Rinse_Spin", - "default": "0", - "visibility": "gone" - }, - { - "value": "ExtraRinseCount", - "default": "1" - }, - { - "value": "ExtraRinse", - "default": "1", - "visibility": "gone" - }, - { - "value": "Steam", - "default": "0" - }, - { - "value": "PreWash", - "default": "0" - }, - { - "value": "ColdWash", - "default": "0" - }, - { - "value": "FreshCare", - "default": "0", - "selectable": [ - 0, - 1 - ] - }, - { - "value": "Reserve_Time_H", - "default": "0" - } - ] - } - } -} diff --git a/pyproject.toml b/pyproject.toml index d6a23b4..186242a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -12,7 +12,6 @@ requires = [ ] description-file = "README.md" requires-python = ">=3.5" -\be [tool.flit.metadata.requires-extra] test = [ "responses" From 17cb182140e9494709f38aa06beb2481e08b1e92 Mon Sep 17 00:00:00 2001 From: Aaron Godfrey Date: Sun, 7 Jul 2019 19:18:12 -0700 Subject: [PATCH 10/10] Return None if no reference name can be found. --- wideq/client.py | 7 +++---- wideq/dryer.py | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/wideq/client.py b/wideq/client.py index 0ff2e87..b211d9f 100644 --- a/wideq/client.py +++ b/wideq/client.py @@ -7,7 +7,7 @@ import logging import requests import base64 from collections import namedtuple -from typing import Any +from typing import Any, Optional from . import core @@ -360,19 +360,18 @@ class ModelInfo(object): return _UNKNOWN return options[value] - def reference_name(self, key: str, value: Any) -> str: + def reference_name(self, key: str, value: Any) -> Optional[str]: """Look up the friendly name for an encoded reference value. :param key: The referenced key. :param value: The value whose name we want to look up. :returns: The friendly name for the referenced value. If no name - can be found `-` will be returned. + can be found None will be returned. """ value = str(value) reference = self.value(key).reference if value in reference: return reference[value]['_comment'] - return '-' @property def binary_monitor_data(self): diff --git a/wideq/dryer.py b/wideq/dryer.py index 6e65e1e..7cb70b9 100644 --- a/wideq/dryer.py +++ b/wideq/dryer.py @@ -181,7 +181,7 @@ class DryerStatus(object): :returns: The looked up value. """ value = self.dryer.model.reference_name(attr, self.data[attr]) - if value == '-': + if value is None: return 'Off' return value