Contribution - LG ThinQ Binding

That’s exactly how I did it. But as you have already written, you are still working on it. If you need someone to test, I’m happy to do that. At the moment, the refrigerator is not yet supported, even though it is in the LG app.

As mentioned above, after afdingen the bridge all devices should be loaded from the LG cloud and be added to the inbox. If the binding doesn’t support them they won’t be added but a json file will be created with the device specific settings and parameters.

This file is needed by the binding creator to add your specific device. So check if a file is created for you device and share it here. Otherwise be sure to check the logs after enabling the bridge to see if all is well. The bridge does go online?

The bridge is online and i have a Json from this fridge: lg-gsxv90bsde:

{
    "Info": {
        "productType": "REF",
        "country": "EU",
        "modelType": "SS",
        "model": "T20_VS6 X Craft Ice EUR",
        "modelName": "2RES1VE61PFC2",
        "networkType": "WIFI",
        "version": "1.04"
    },
    "Module": {
        "WPM": {
            "GRM_CEN01_Main": "201",
            "GRM_CEN02_UserSaving": "202",
            "GRM_CEN04_RefViewer": "202",
            "GRM_CEN05_ImgViewer": "202",
            "GRM_FOD01_Main": "201",
            "GRM_FOD02_EditFoodInfo": "201",
            "GRM_FOD03_EditFoodIcon": "201",
            "GRM_FOD04_AddFood": "201",
            "GRM_ENM01_Main": "201",
            "GRM_ENM02_DoorOpenings": "201",
            "GRM_ENM03_PowerConsume": "201",
            "GRM_ENM04_SetSaving": "202",
            "GRM_ECO01_Main": "202",
            "GRM_ECO02_Active": "202",
            "GRM_ECO03_SavingRatio": "202",
            "GRM_ECO04_SavingDetail": "202",
            "GRM_ECO05_ViewTip": "202",
            "GCM_SDS01_SdsMain": "201",
            "GRM_FOT01_Main": "201",
            "GRM_SET01_Main": "201",
            "GRM_SET02_PushList": "201",
            "GRM_SMC01_Main": "202",
            "GRM_SMC02_SafeStore": "201",
            "GRM_SMC03_ActiveCooling": "201",
            "GRM_SMC04_SmartFreshStorage": "201",
            "GRM_SMC05_ActiveIcePlus": "201",
            "GRM_PHO01_Main": "201",
            "GRM_SHO01_Main": "201",
            "GRM_SBS01_Main": "201",
            "GRM_SBS02_Local": "201",
            "GRM_SET04_WeatherLocation": "201"
        },
        "Menu": [
            "GRM_SMC01_Main",            
            "GCM_SDS01_SdsMain",
            "GRM_SET01_Main"
        ]
    },
    "Config": {
        "targetRoot": "refState",
        "ignoreValue": {
            "key": "IGNORE",
            "index": -99
        },
        "replaceStateValue": "@RE_STATE_REPLACE_FILTER_W",
        "wifiDiagnosis": "true",
        "hasInsideView": false,
        "fota": "true",
        "hasdoor": "Y",
        "blackBox": "N",
        "supportFoodManager": true,
        "supportDoorGraph": false,
        "supportDIDEnergyMonitoring": false,
        "sabbathDefaultSchedule": {
            "type": "location",
            "startDay": "FRI",
            "endDay": "SAT",
            "startTime": 0,
            "endTime": 0,
            "weekRepeatYn": "Y"
        },
        "sabbathDayListMap": {
            "FRI": "@RE_TERM_DAY_FRI_W",
            "SAT": "@RE_TERM_DAY_SAT_W"
        },
        "smartCareVersion": "V2",
        "smartCare": {
            "useSmartStorage": false,
            "useSmartFreshStorage": true,
            "useActiveIcePlus": false,
            "useActiveSavingsV2": true
        },
        "nightMode": {
            "functionEnable": true,
            "antiGlareMode": {
                "comment": "NightMode 눈부심방지",
                "available": true,
                "previewPeriodSec": "10",
                "modeSet": [{
                        "title": "@CP_OFF_EN_W",
                        "value": "OFF"
                    }, {
                        "title": "@RE_TERM_SUNSETRISE_W",
                        "value": "SUNSET_RISE"
                    }, {
                        "title": "@RE_TERM_CUSTOMTIME_W",
                        "value": "CUSTOM"
                    }
                ],
                "brightness": {
                    "default": "30",
                    "selectableSet": [{
                            "value": "10",
                            "label": "10%"
                        },{
                            "value": "30",
                            "label": "30%"
                        }, {
                            "value": "50",
                            "label": "50%"
                        }, {
                            "value": "70",
                            "label": "70%"
                        }
                    ]
                }
            },
            "nightQuietMode": {
                "comment": "NightMode 조용히",
                "available": false,
                "previewPeriodSec": "10",
                "modeSet": [{
                        "title": "@CP_TERM_USE_NOT_W",
                        "value": "OFF"
                    }, {
                        "title": "@RE_TERM_CUSTOMTIME_W",
                        "value": "CUSTOM"
                    }
                ],
                "brightness": {
                    "default": "30",
                    "selectableSet": []
                }
            }
        },
        "sideMenuInfo": {
            "GRM_FOD01_Main": {
                "title": "@RE_FOOD_MANAGEMENT_W",
                "image": "image/ref_sidemenu_btn_foodmanager.png"
            },
            "GRM_ENM01_Main": {
                "title": "@RE_ENM_TITLE_W",
                "image": "image/ref_sidemenu_btn_energymonitoring.png"
            },
            "GCM_SDS01_SdsMain": {
                "title": "@CP_NAME_SMART_DIAGNOSIS_W",
                "image": "image/ref_sidemenu_btn_smart_diagnosis.png"
            },
            "GRM_SET01_Main": {
                "title": "@CP_SETTING_W",
                "image": "image/ref_sidemenu_btn_setting.png"
            },
            "GRM_ECO01_Main": {
                "title": "@RE_ENM_TITLE_W",
                "image": "wpm/GRM/image/ref_sidemenu_btn_energymonitoring.png"
            },
            "GRM_SMC01_Main": {
                "title": "@RE_SMARTCARE_RUN_V2_W",
                "image": "wpm/GRM/image/ref_sidemenu_btn_smartcare.png"
            },
            "GRM_SHO01_Main": {
                "title": "@RE_GROCERY_LIST_W",
                "image": "wpm/GRM/image/ref_sidemenu_btn_shopping.png"
            }
        },
        "visibleItems": [{
                "feature": "fridgeTemp",
                "imageUrl": "",
                "monTitle": "@RE_TERM_FRIDGE_W",
                "controlTitle": "@RE_TERM_FRIDGE_W",
                "controlDisabledOption": [{
                        "optionValue": "@CP_OFF_EN_W",
                        "replaceOptionValue": "IGNORE"
                    }
                ]
            }, {
                "feature": "freezerTemp",
                "imageUrl": "",
                "monTitle": "@RE_TERM_FREEZER_W",
                "controlTitle": "@RE_TERM_FREEZER_W",
                "controlDisabledOption": [{
                        "optionValue": "@CP_OFF_EN_W",
                        "replaceOptionValue": "IGNORE"
                    }
                ]
            }, {
                "feature": "expressFridge",
                "imageUrl": "wpm/GRM/image/ref_home_ic_coldstorage.png",
                "monTitle": "@RE_TERM_EXPRESS_FRIDGE_W",
                "controlTitle": "@RE_TERM_EXPRESS_FRIDGE_W",
                "templateType": "typeSwitch.html"
            }, {
                "feature": "expressMode",
                "imageUrl": "image/icon_fridge_ice.png",
                "monTitle": "@RE_TERM_ICE_PLUS_W",
                "controlTitle": "@RE_TERM_ICE_PLUS_W",
                "templateType": "typeSwitch.html"
            }, {
                "feature": "smartCareV2",
                "imageUrl": "wpm/GRM/image/ref_home_ic_smartcare.png",
                "monTitle": "@RE_SMARTCARE_RUN_V2_W",
                "controlTitle": "@RE_SMARTCARE_RUN_V2_W",
                "templateType": "NONE"
            }, {
				"feature" : "waterFilter", 
				"imageUrl" : "image/ref_home_ic_waterfilter.png", 
				"monTitle" : "@RE_NEW_TERM_WATER_FILTER_W", 
				"controlTitle" : "@RE_NEW_TERM_WATER_FILTER_W", 
				"templateType" : "NONE" 
			},{
                "feature": "craftIceMode",
                "imageUrl": "image/dummy",
                "monTitle": "@RE_NEW_TERM_CRAFT_ICE_W",
                "controlTitle": "@RE_NEW_TERM_CRAFT_ICE_W",
                "templateType": "typeButton.html"
            }, {
                "feature": "antiGlareMode",
                "imageUrl": "image/icon_fridge_smart saving.png",
                "monTitle": "@RE_UX30_NIGHT_ANTIGLAREMODE_W",
                "controlTitle": "@RE_UX30_NIGHT_ANTIGLAREMODE_W",
                "templateType": "typeIndicatorSimple2Line.html"
            }
        ]
    },
    "MonitoringValue": {
        "monStatus": {
            "_comment": "Monitoring Status _ Not Shown Item",
            "dataType": "enum",
            "default": "NORMAL",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1,
                    2
                ],
                "controlIndex": [
                    0,
                    1,
                    2
                ]
            },
            "valueMapping": {
                "FAIL": {
                    "index": 0,
                    "label": "",
                    "_comment": "Fail"
                },
                "NOT_WORK": {
                    "index": 1,
                    "label": "",
                    "_comment": "Not working"
                },
                "NORMAL": {
                    "index": 2,
                    "label": "",
                    "_comment": "Normal"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "fridgeTemp": {
            "_comment": "Fridge Target Temperature",
            "dataType": "range",
            "default": 1,
            "visibleItem": {
                "monitoringIndex": [],
                "controlIndex": []
            },
            "targetKey": {
                "tempUnit": {
                    "CELSIUS": "fridgeTemp_C",
                    "FAHRENHEIT": "fridgeTemp_F"
                }
            },
            "valueMapping": {
                "min": 0,
                "max": 255,
                "step": 1
            }
        },
        "freezerTemp": {
            "_comment": "Freezer Target Temperature",
            "dataType": "range",
            "default": 1,
            "visibleItem": {
                "monitoringIndex": [],
                "controlIndex": []
            },
            "targetKey": {
                "tempUnit": {
                    "CELSIUS": "freezerTemp_C",
                    "FAHRENHEIT": "freezerTemp_F"
                }
            },
            "valueMapping": {
                "min": 0,
                "max": 255,
                "step": 1
            }
        },
        "convertibleTemp": {
            "_comment": "Convertible Target Temperature",
            "dataType": "range",
            "default": 1,
            "visibleItem": {
                "monitoringIndex": [],
                "controlIndex": []
            },
            "targetKey": {
                "tempUnit": {
                    "CELSIUS": "convertibleTemp_C",
                    "FAHRENHEIT": "convertibleTemp_F"
                }
            },
            "valueMapping": {
                "min": 0,
                "max": 255,
                "step": 1
            }
        },
        "expressMode": {
            "_comment": "Express Fridge, ExpressFreeze, Rapid Freeze",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": [
                    0,
                    1
                ]
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Express Mode OFF"
                },
                "EXPRESS_ON": {
                    "index": 1,
                    "label": "@CP_ON_EN_W",
                    "_comment": "Express Fridge or Express Freeze ON"
                },
                "RAPID_ON": {
                    "index": 2,
                    "label": "@RE_MAIN_SPEED_FREEZE_TERM_W",
                    "_comment": "Rapid Freeze ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "tempUnit": {
            "_comment": "Temperature Unit",
            "dataType": "enum",
            "default": "FAHRENHEIT",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "CELSIUS": {
                    "index": 0,
                    "label": "˚C",
                    "_comment": "Celsius Unit"
                },
                "FAHRENHEIT": {
                    "index": 1,
                    "label": "˚F",
                    "_comment": "Fahrenheit Unit"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "freshAirFilter": {
            "_comment": "Fresh Air Filter Status",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1,
                    2,
                    3
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@RE_FILTER_STATE_GOOD_W",
                    "_comment": "Fresh Air Filter OFF"
                },
                "AUTO": {
                    "index": 1,
                    "label": "@RE_FILTER_STATE_GOOD_W",
                    "_comment": "Fresh Air Filter AUTO"
                },
                "POWER": {
                    "index": 2,
                    "label": "@RE_FILTER_STATE_GOOD_W",
                    "_comment": "Fresh Air Filter POWER"
                },
                "REPLACE": {
                    "index": 3,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Fresh Air Filter REPLACE"
                },
                "SMART_STORAGE_POWER": {
                    "index": 4,
                    "label": "",
                    "_comment": "Fresh Air Filter Smart Storage POWER"
                },
                "SMART_STORAGE_OFF": {
                    "index": 5,
                    "label": "",
                    "_comment": "Fresh Air Filter Smart Storage OFF"
                },
                "SMART_STORAGE_ON": {
                    "index": 6,
                    "label": "",
                    "_comment": "Fresh Air Filter Smart Storage ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "waterFilter": {
            "_comment": "Water Filter Status",
            "dataType": "enum",
            "default": "0_MONTH",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1,
                    2,
                    3,
                    4,
                    5,
                    6
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "0_MONTH": {
                    "index": 0,
                    "label": "@RE_TERM_OK_W",
                    "_comment": "Water Filter 0 Month Passed"
                },
                "1_MONTH": {
                    "index": 1,
                    "label": "@RE_TERM_OK_W",
                    "_comment": "Water Filter 1 Month Passed"
                },
                "2_MONTH": {
                    "index": 2,
                    "label": "@RE_TERM_OK_W",
                    "_comment": "Water Filter 2 Month Passed"
                },
                "3_MONTH": {
                    "index": 3,
                    "label": "@RE_TERM_OK_W",
                    "_comment": "Water Filter 3 Month Passed"
                },
                "4_MONTH": {
                    "index": 4,
                    "label": "@RE_TERM_OK_W",
                    "_comment": "Water Filter 4 Month Passed"
                },
                "5_MONTH": {
                    "index": 5,
                    "label": "@RE_TERM_OK_W",
                    "_comment": "Water Filter 5 Month Passed"
                },
                "6_MONTH": {
                    "index": 6,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Water Filter 6 Month Passed"
                },
                "7_MONTH": {
                    "index": 7,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Water Filter 7 Month Passed"
                },
                "8_MONTH": {
                    "index": 8,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Water Filter 8 Month Passed"
                },
                "9_MONTH": {
                    "index": 9,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Water Filter 9 Month Passed"
                },
                "10_MONTH": {
                    "index": 10,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Water Filter 10 Month Passed"
                },
                "11_MONTH": {
                    "index": 11,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Water Filter 11 Month Passed"
                },
                "12_MONTH": {
                    "index": 12,
                    "label": "@RE_STATE_REPLACE_FILTER_W",
                    "_comment": "Water Filter 12 Month Passed"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "displayLock": {
            "_comment": "Display Lock Status(unlock, lock)",
            "dataType": "enum",
            "default": "UNLOCK",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "UNLOCK": {
                    "index": 0,
                    "label": "",
                    "_comment": "Display Panel Unlocked"
                },
                "LOCK": {
                    "index": 1,
                    "label": "",
                    "_comment": "Display Panel Locked"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "sabbathMode": {
            "_comment": "Sabbath Mode State (ON, OFF)",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": [
                    0,
                    1
                ]
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Sabbath Mode OFF"
                },
                "ON": {
                    "index": 1,
                    "label": "@CP_ON_EN_W",
                    "_comment": "Sabbath Mode ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "atLeastOneDoorOpen": {
            "_comment": "Door Open State(Close or Open) global",
            "dataType": "enum",
            "default": "CLOSE",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "CLOSE": {
                    "index": 0,
                    "label": "",
                    "_comment": "Door Closed"
                },
                "OPEN": {
                    "index": 1,
                    "label": "",
                    "_comment": "Door Open"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "smartSavingMode": {
            "_comment": "Smart Saving Setting Status",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    3,
                    4
                ],
                "controlIndex": [
                    0,
                    3,
                    4
                ]
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Smart Saving OFF"
                },
                "NIGHT_ON": {
                    "index": 1,
                    "label": "@RE_SMARTSAVING_MODE_NIGHT_W",
                    "_comment": "Smart Saving Night Mode ON"
                },
                "CUSTOM_ON": {
                    "index": 2,
                    "label": "@RE_SMARTSAVING_MODE_CUSTOM_W",
                    "_comment": "Smart Saving Custom Mode ON"
                },
                "SMARTGRID_DR_ON": {
                    "index": 3,
                    "label": "@RE_TERM_DEMAND_RESPONSE_FUNCTIONALITY_W",
                    "_comment": "Smart Grid Demand Response Mode ON"
                },
                "SMARTGRID_DD_ON": {
                    "index": 4,
                    "label": "@RE_TERM_DELAY_DEFROST_CAPABILITY_W",
                    "_comment": "Smart Grid Delay Defrost Mode ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "smartSavingRun": {
            "_comment": "Smart Saving Running Status",
            "dataType": "enum",
            "default": "STOP",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "STOP": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Smart Saving Stop (Smart Grid)"
                },
                "RUN": {
                    "index": 1,
                    "label": "@CP_ON_EN_W",
                    "_comment": "Smart Saving Running (Smart Grid)"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "activeSaving": {
            "_comment": "Active Saving Status",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Active Saving OFF"
                },
                "ON": {
                    "index": 1,
                    "label": "@CP_ON_EN_W",
                    "_comment": "Active Saving ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "ecoFriendly": {
            "_comment": "Eco Friendly Status",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Eco Friendly OFF"
                },
                "ON": {
                    "index": 1,
                    "label": "@CP_ON_EN_W",
                    "_comment": "Eco Friendly ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "fridgeTemp_C": {
            "dataType": "enum",
            "default": "1",
            "_comment": "Temperature Unit :℉ or ℃ ",
            "visibleItem": {
                "monitoringIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7
                ],
                "controlIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7
                ]
            },
            "valueMapping": {
                "1": {
                    "index": 1,
                    "label": "7",
                    "_comment": ""
                },
                "2": {
                    "index": 2,
                    "label": "6",
                    "_comment": ""
                },
                "3": {
                    "index": 3,
                    "label": "5",
                    "_comment": ""
                },
                "4": {
                    "index": 4,
                    "label": "4",
                    "_comment": ""
                },
                "5": {
                    "index": 5,
                    "label": "3",
                    "_comment": ""
                },
                "6": {
                    "index": 6,
                    "label": "2",
                    "_comment": ""
                },
                "7": {
                    "index": 7,
                    "label": "1",
                    "_comment": ""
                },
                "255": {
                    "index": 255,
                    "label": "IGNORE",
                    "_comment": ""
                }
            }
        },
        "fridgeTemp_F": {
            "dataType": "enum",
            "default": "1",
            "_comment": "Temperature Unit :℉ or ℃ ",
            "visibleItem": {
                "monitoringIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11
                ],
                "controlIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11
                ]
            },
            "valueMapping": {
                "1": {
                    "index": 1,
                    "label": "43",
                    "_comment": ""
                },
                "2": {
                    "index": 2,
                    "label": "42",
                    "_comment": ""
                },
                "3": {
                    "index": 3,
                    "label": "41",
                    "_comment": ""
                },
                "4": {
                    "index": 4,
                    "label": "40",
                    "_comment": ""
                },
                "5": {
                    "index": 5,
                    "label": "39",
                    "_comment": ""
                },
                "6": {
                    "index": 6,
                    "label": "38",
                    "_comment": ""
                },
                "7": {
                    "index": 7,
                    "label": "37",
                    "_comment": ""
                },
                "8": {
                    "index": 8,
                    "label": "36",
                    "_comment": ""
                },
                "9": {
                    "index": 9,
                    "label": "35",
                    "_comment": ""
                },
                "10": {
                    "index": 10,
                    "label": "34",
                    "_comment": ""
                },
                "11": {
                    "index": 11,
                    "label": "33",
                    "_comment": ""
                },
                "255": {
                    "index": 255,
                    "label": "IGNORE",
                    "_comment": ""
                }
            }
        },
        "freezerTemp_C": {
            "dataType": "enum",
            "default": "1",
            "_comment": "Temperature Unit :℉ or ℃ ",
            "visibleItem": {
                "monitoringIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9
                ],
                "controlIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9
                ]
            },
            "valueMapping": {
                "1": {
                    "index": 1,
                    "label": "-15",
                    "_comment": ""
                },
                "2": {
                    "index": 2,
                    "label": "-16",
                    "_comment": ""
                },
                "3": {
                    "index": 3,
                    "label": "-17",
                    "_comment": ""
                },
                "4": {
                    "index": 4,
                    "label": "-18",
                    "_comment": ""
                },
                "5": {
                    "index": 5,
                    "label": "-19",
                    "_comment": ""
                },
                "6": {
                    "index": 6,
                    "label": "-20",
                    "_comment": ""
                },
                "7": {
                    "index": 7,
                    "label": "-21",
                    "_comment": ""
                },
                "8": {
                    "index": 8,
                    "label": "-22",
                    "_comment": ""
                },
                "9": {
                    "index": 9,
                    "label": "-23",
                    "_comment": ""
                },
                "255": {
                    "index": 255,
                    "label": "IGNORE",
                    "_comment": ""
                }
            }
        },
        "freezerTemp_F": {
            "dataType": "enum",
            "default": "1",
            "_comment": "Temperature Unit :℉ or ℃ ",
            "visibleItem": {
                "monitoringIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13
                ],
                "controlIndex": [
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13
                ]
            },
            "valueMapping": {
                "1": {
                    "index": 1,
                    "label": "5",
                    "_comment": ""
                },
                "2": {
                    "index": 2,
                    "label": "4",
                    "_comment": ""
                },
                "3": {
                    "index": 3,
                    "label": "3",
                    "_comment": ""
                },
                "4": {
                    "index": 4,
                    "label": "2",
                    "_comment": ""
                },
                "5": {
                    "index": 5,
                    "label": "1",
                    "_comment": ""
                },
                "6": {
                    "index": 6,
                    "label": "0",
                    "_comment": ""
                },
                "7": {
                    "index": 7,
                    "label": "-1",
                    "_comment": ""
                },
                "8": {
                    "index": 8,
                    "label": "-2",
                    "_comment": ""
                },
                "9": {
                    "index": 9,
                    "label": "-3",
                    "_comment": ""
                },
                "10": {
                    "index": 10,
                    "label": "-4",
                    "_comment": ""
                },
                "11": {
                    "index": 11,
                    "label": "-5",
                    "_comment": ""
                },
                "12": {
                    "index": 12,
                    "label": "-6",
                    "_comment": ""
                },
                "13": {
                    "index": 13,
                    "label": "-7",
                    "_comment": ""
                },
                "255": {
                    "index": 255,
                    "label": "IGNORE",
                    "_comment": ""
                }
            }
        },
        "convertibleTemp_C": {
            "dataType": "enum",
            "default": "1",
            "_comment": "Temperature Unit :℉ or ℃ ",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1,
                    2,
                    3,
                    5,
                    7,
                    9,
                    11,
                    12,
                    13
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "0": {
                    "index": 0,
                    "label": "-13",
                    "_comment": ""
                },
                "1": {
                    "index": 1,
                    "label": "-13",
                    "_comment": ""
                },
                "2": {
                    "index": 2,
                    "label": "-14",
                    "_comment": ""
                },
                "3": {
                    "index": 3,
                    "label": "-15",
                    "_comment": ""
                },
                "5": {
                    "index": 5,
                    "label": "-16",
                    "_comment": ""
                },
                "7": {
                    "index": 7,
                    "label": "-17",
                    "_comment": ""
                },
                "9": {
                    "index": 9,
                    "label": "-18",
                    "_comment": ""
                },
                "11": {
                    "index": 11,
                    "label": "-19",
                    "_comment": ""
                },
                "12": {
                    "index": 12,
                    "label": "-20",
                    "_comment": ""
                },
                "13": {
                    "index": 13,
                    "label": "-21",
                    "_comment": ""
                },
                "255": {
                    "index": 255,
                    "label": "IGNORE",
                    "_comment": ""
                }
            }
        },
        "convertibleTemp_F": {
            "dataType": "enum",
            "default": "1",
            "_comment": "Temperature Unit :℉ or ℃ ",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1,
                    2,
                    3,
                    4,
                    5,
                    6,
                    7,
                    8,
                    9,
                    10,
                    11,
                    12,
                    13
                ],
                "controlIndex": []
            },
            "valueMapping": {
                "0": {
                    "index": 0,
                    "label": "8",
                    "_comment": ""
                },
                "1": {
                    "index": 1,
                    "label": "8",
                    "_comment": ""
                },
                "2": {
                    "index": 2,
                    "label": "6",
                    "_comment": ""
                },
                "3": {
                    "index": 3,
                    "label": "5",
                    "_comment": ""
                },
                "4": {
                    "index": 4,
                    "label": "4",
                    "_comment": ""
                },
                "5": {
                    "index": 5,
                    "label": "3",
                    "_comment": ""
                },
                "6": {
                    "index": 6,
                    "label": "2",
                    "_comment": ""
                },
                "7": {
                    "index": 7,
                    "label": "1",
                    "_comment": ""
                },
                "8": {
                    "index": 8,
                    "label": "0",
                    "_comment": ""
                },
                "9": {
                    "index": 9,
                    "label": "-1",
                    "_comment": ""
                },
                "10": {
                    "index": 10,
                    "label": "-2",
                    "_comment": ""
                },
                "11": {
                    "index": 11,
                    "label": "-3",
                    "_comment": ""
                },
                "12": {
                    "index": 12,
                    "label": "-4",
                    "_comment": ""
                },
                "13": {
                    "index": 13,
                    "label": "-6",
                    "_comment": ""
                },
                "255": {
                    "index": 255,
                    "label": "IGNORE",
                    "_comment": ""
                }
            }
        },
        "smartSavingModeCustomOpt": {
            "dataType": "string"
        },
        "expressFridge": {
            "_comment": "Express Fridge Status",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": [
                    0,
                    1
                ]
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Express Fridge OFF"
                },
                "ON": {
                    "index": 1,
                    "label": "@CP_ON_EN_W",
                    "_comment": "Express Fridge ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "smartCareV2": {
            "_comment": "Smart CareV2 State (ON, OFF)",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [
                    0,
                    1
                ],
                "controlIndex": [
                    0,
                    1
                ]
            },
            "valueMapping": {
                "OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "Smart CareV2 OFF"
                },
                "ON": {
                    "index": 1,
                    "label": "@CP_ON_EN_W",
                    "_comment": "Smart CareV2 ON"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "craftIceMode": {
            "_comment": "craftIceMode (3Balls, 6Balls)",
            "dataType": "enum",
            "default": "OFF",
            "visibleItem": {
                "monitoringIndex": [ 0, 1, 2 ],
                "controlIndex": [ 0, 1, 2 ]
            },
            "valueMapping": {
				"OFF": {
                    "index": 0,
                    "label": "@CP_OFF_EN_W",
                    "_comment": "꺼짐(사용 안 함)"
                },
                "3_ICE": {
                    "index": 1,
                    "label": "@RE_TERM_CRAFT_3B_W",
                    "_comment": "3 balls"
                },
                "6_ICE": {
                    "index": 2,
                    "label": "@RE_TERM_CRAFT_6B_W",
                    "_comment": "6 balls"
                },
                "IGNORE": {
                    "index": 255,
                    "label": "",
                    "_comment": "Please ignore me"
                }
            }
        },
        "monDataNumber": {
            "_comment": "Monitoring data number",
            "dataType": "number"
        }
    },
    "ControlWifi": {
        "basicCtrl": {
            "command": "Set",
            "data": {
                "refState": {
                    "fridgeTemp": "{{fridgeTemp}}",
                    "fridgeDoorOpen": "{{fridgeDoorOpen}}",
                    "freezerTemp": "{{freezerTemp}}",
                    "freezerDoorOpen": "{{freezerDoorOpen}}",
                    "convertibleTemp": "{{convertibleTemp}}",
                    "convertibleDoorOpen": "{{convertibleDoorOpen}}",
                    "didDoorOpen": "{{didDoorOpen}}",
                    "smartSavingMode": "{{smartSavingMode}}",
                    "smartSavingRun": "{{smartSavingRun}}",
                    "activeSaving": "{{activeSaving}}",
                    "ecoFriendly": "{{ecoFriendly}}",
                    "expressMode": "{{expressMode}}",
                    "tempUnit": "{{tempUnit}}",
                    "freshAirFilter": "{{freshAirFilter}}",
                    "waterFilter": "{{waterFilter}}",
                    "displayLock": "{{displayLock}}",
                    "sabbathMode": "{{sabbathMode}}",
                    "atLeastOneDoorOpen": "{{atLeastOneDoorOpen}}",
                    "expressFridge": "{{expressFridge}}"
                }
            }
        },
        "getActiveSavingScheduleCtrl": {
            "command": "Get",
            "data": {}
        },
        "getSmartFreshStorageScheduleCtrl": {
            "command": "Get",
            "data": {}
        },
        "getActiveIcePlusScheduleCtrl": {
            "command": "Get",
            "data": {}
        }
    },
    "Push": [{
            "category": "PUSH_REF_FOOD_EXPIRED",
            "label": "@RE_SETTING_PUSH_STORED_PERIOD_W",
            "groupCode": "10102"
        }, {
            "category": "PUSH_REF_STATE",
            "label": "@RE_SETTING_PUSH_PRODUCT_STATE_W",
            "groupCode": "10101"
        }
    ],
    "SmartMode": {}
}

Fehlermeldung:
Discovered unsupported LG device of type ‘UNKNOWN’(101) and model ‘2RES1VE61PFC2’ with id ************************************

Hi!

Longly awaited binding. Really thank you for this. I have 5 ACs (3 v2, 2 is v1). All of them is recognized correctly.

I have a fridge (LG GSX961MCCZ) which got a JSON created. I attach it here if support can be added.
thinq-058cfc00-1db0-11b8-a576-1c3929041324-cap.json (21.5 KB)

Thank you,
Zsolt.

Edit:
I have only 3 OpModes (Cool, Dry, Fan) listed in the AC’s mode but json has 5:

"SupportOpMode": {
  "_comment": "FuncSync_운전모드",
  "type": "Enum",
  "option": {
    "0": "@NON",
    "1": "@AC_MAIN_OPERATION_MODE_COOL_W",
    "2": "@AC_MAIN_OPERATION_MODE_DRY_W",
    "3": "@AC_MAIN_OPERATION_MODE_FAN_W",
    "5": "@AC_MAIN_OPERATION_MODE_HEAT_W",
    "7": "@AC_MAIN_OPERATION_MODE_ACO_W"
  }
}

Can you implement at least Heat mode or ACO (guessing automatic controll?).
Here is the JSON:
thinq-d27bb3f0-7149-11d3-80af-a06faae627a8-cap.json (78.3 KB)

Thank you.

Hi!

Without installing any new version today I’ve got all 5 options in OpMode. Something of a new discovery magic? Anyway it is working as expected so far. I’ll report back if any issues found.

Thank you,
Zsolt.

Hi, @djal.

I 've just released a new version with support to V1 of Washer. Please, can you update your binding and try to see if works ? Since I don’t have this device, I had to implement a API Mock to simulate the suposed response from the LG API for the Washer V1 device.

Regasdeless working or not, please, put your OH3 in debug mode, and then collect for me the *-datatrace.json produced in the OH_USERDATE/thinq directory. Some post above you have some instructions explaining how to put OH3 in debug mode with some detail.

Cheers.

Ohhh my… you are working in a very old version. Please, access my personal repository and download the latest binary snapshot (openhab-thinq-stuff/org.openhab.binding.lgthinq-3.3.0-SNAPSHOT.jar at main · nemerdaud/openhab-thinq-stuff · GitHub).

It’s good to cleanup OH_USERDATA/thinq directory and redo your binding configuration/connection to certify that there are no trash of older versions in the thinq binding work directory

Regards,

Nemer

No… actually, The first thing the binding do when activating some thinq, It load dinamically the capability file (first from LG repository, then after from the local working/cache directory). This file contains all the features and combination of options of each feature, as soon as your OpMod 5. I don’t know what could be happened in your case. If you have some kind of this again, please let me know.

OK, Thanks for the file. I appreciate it !
Since the V1 of Washer are almost release, I can start the Fridge development.

1 Like

Hi @nemer
thank you very much for your new release.
I’ve tried it immediatelly and there are still some problems. I added WM thing from the inbox and it appeared online for a while, but then some communication errors occured. After I turned the WM on (it is not connected to LG could when turned off) then the error messages changed.
I’m attaching the datatrace, cap and debug log files.

Best Regards
Dusan

2022-05-03-djal-washer-thinq-debug.log (69.3 KB)
thinq-d62951d0-48cb-11ec-a3bd-7440be1b160a-datatrace.json (226 Bytes)
thinq-d62951d0-48cb-11ec-a3bd-7440be1b160a-cap.json (79.3 KB)

Indeed, when the washer is switched off, it gets disconnectd from the cloud and openHAB should show it as OFFLINE - Disconnected.

Yes, I aggree that this should be the required behaviour of binding.

I just wanted to mention it as my second LG device (Dryer apiv2) remains connected to cloud even when in poweroff state so the openhab thing for it remains ONLINE.

It depends on what the device reports back to the cloud. My washer reports disconnected to the cloud, therefore openHAB shows according state. Maybe the dryer does not report disconnected to the cloud and hence openHAB dos not show it as OFFLINE. You can check the different states in LG app.

Yes it seems to be device hardware dependent.

Btw I see difference also in the original LG app (both devices are in poweroff state):

LG V2 change considerably in the monitoring states and energy consumption collector. The behavior changed as well, then we can’t handle devices in different Thinq versions in the same way.
In the binding, I did some handles to get the behavior closer, but some thing is still different.

About your files, first of all thanks for the log and datatrace. Your scenario is very strange (for me at least), because LG API accept starting monitoring a device that is offline/disconnected and return back a trash monitoring result. See:

{"deviceId":"d62951d0-48cb-11ec-a3bd-7440be1b160a","deviceState":"E","format":"B64","returnCode":"0000","returnData":"AQAAAAAAAAAAAAAAAAAAAAAAAAAAOQBkAAAAAA==","stateCode":"S","workId":"n-d62951d0-48cb-11ec-a3bd-7440be1b160a"}

The important part here is the resturnData that is suppose to be and json in base64 encoding

# echo -n "AQAAAAAAAAAAAAAAAAAAAAAAAAAAOQBkAAAAAA==" |base64 -d
9d

That’s why in the log the binding is complaining unmasrshalling “9d” as a JSON. What is 9d ? I don’t know. Maybe an error code. I will try to find through reverse engineering, but for me… if it’s not a json data, then it’s an error code. In the sequence, the binding try to stop the monitorning and wait for a while to a next try. And when it do it, then the error appears from LG API:

09:40:01.323 [ERROR] [vices.LGThinQAbstractApiClientService] - LG API report error processing the request -> resultCode=[0106], message=[Device Not Response]

Then yes, as @hmerk mentioned, to the LG API your device is irresponsible at this time. I will change the Binding to handle better this situation.

About the channels, do you have time to start and “connect” the WM to LG and see if the channels got populated correctly ?

Regards.

I just installed the binding and I have some issues with connecting my washing machine…
It throws an error on parsing json, some illegal characters I have no idea where they can be from…

org.openhab.binding.lgthinq.internal.errors.LGThinqApiException: Error getting monitor data for the device:9022e280-c5aa-11e7-90e0-b4e62a7907f6
at org.openhab.binding.lgthinq.internal.handler.LGThinQAbstractDeviceHandler.getSnapshotDeviceAdapter(LGThinQAbstractDeviceHandler.java:363) ~[?:?]
at org.openhab.binding.lgthinq.internal.handler.LGThinQAbstractDeviceHandler.updateThingStateFromLG(LGThinQAbstractDeviceHandler.java:246) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) [?:?]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) [?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]

Caused by: org.openhab.binding.lgthinq.internal.errors.LGThinqApiException: Unexpected Error unmarshalling json to map
at org.openhab.binding.lgthinq.lgservices.model.SnapshotFactory.create(SnapshotFactory.java:66) ~[?:?]
at org.openhab.binding.lgthinq.lgservices.LGThinQAbstractApiClientService.getMonitorData(LGThinQAbstractApiClientService.java:343) ~[?:?]
at org.openhab.binding.lgthinq.internal.handler.LGThinQAbstractDeviceHandler.getSnapshotDeviceAdapter(LGThinQAbstractDeviceHandler.java:346) ~[?:?]
... 7 more

Caused by: com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 6)): only regular white space (\r, \n, \t) is allowed between tokens
at [Source: (String)"4+
@0d"; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:2337) ~[?:?]
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:710) ~[?:?]
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:688) ~[?:?]
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:2408) ~[?:?]
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:677) ~[?:?]
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:4684) ~[?:?]
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4586) ~[?:?]
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3548) ~[?:?]
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3531) ~[?:?]
at org.openhab.binding.lgthinq.lgservices.model.SnapshotFactory.create(SnapshotFactory.java:59) ~[?:?]
at org.openhab.binding.lgthinq.lgservices.LGThinQAbstractApiClientService.getMonitorData(LGThinQAbstractApiClientService.java:343) ~[?:?]
at org.openhab.binding.lgthinq.internal.handler.LGThinQAbstractDeviceHandler.getSnapshotDeviceAdapter(LGThinQAbstractDeviceHandler.java:346) ~[?:?]
... 7 more

Feels like I configured something wrong, but can’t find anything…

In Notepad++ the error causing string looks like this:

I tried to link few channels to items in OH (Power, WasherState and RemainingTime) and tried to start some waching program.
The items were populated with initial values, but then they have never changed. Even if I tried to stop and start the washing machine.
Here is how Items and thing changed their values (from events.log):

2022-05-03 16:44:55.244 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from UNINITIALIZED (DISABLED) to INITIALIZING
2022-05-03 16:44:55.306 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from INITIALIZING to ONLINE
2022-05-03 16:45:06.037 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'LGPrackaPower' changed from NULL to OFF
2022-05-03 16:45:06.041 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'LGPrackaWasherState' changed from NULL to
2022-05-03 16:45:06.046 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'LGPrackaRemainingTime' changed from NULL to 00:00
2022-05-03 16:45:06.054 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from ONLINE to OFFLINE: Device is disconnected.
2022-05-03 16:45:06.058 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'LGPrackaWasherState' changed from  to POWEROFF
2022-05-03 16:46:01.138 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from OFFLINE: Device is disconnected. to OFFLINE (COMMUNICATION_ERROR): Error getting monitor data for the device:d62951d0-48cb-11ec-a3bd-7440be1b160a
2022-05-03 16:49:01.703 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from OFFLINE (COMMUNICATION_ERROR): Error getting monitor data for the device:d62951d0-48cb-11ec-a3bd-7440be1b160a to UNINITIALIZED
2022-05-03 16:49:01.730 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from UNINITIALIZED to UNINITIALIZED (DISABLED)
2022-05-03 16:49:05.860 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from UNINITIALIZED (DISABLED) to INITIALIZING
2022-05-03 16:49:05.901 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from INITIALIZING to ONLINE
2022-05-03 16:49:18.982 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from ONLINE to OFFLINE (COMMUNICATION_ERROR): Error getting monitor data for the device:d62951d0-48cb-11ec-a3bd-7440be1b160a
2022-05-03 16:49:50.100 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'lgthinq:201:lgthinqgatewaybridge:d62951d0-48cb-11ec-a3bd-7440be1b160a' changed from OFFLINE (COMMUNICATION_ERROR): Error getting monitor data for the device:d62951d0-48cb-11ec-a3bd-7440be1b160a to OFFLINE (COMMUNICATION_ERROR): Exhausted trying to get monitor data for the device:d62951d0-48cb-11ec-a3bd-7440be1b160a

Exceptions in log were still the same - complaining to problems unmarshalling json from string.
But the content of the string was changing as the WM state changed:

Source: (String)"++
9d";
Source: (String)"
                      @9d";
Source: (String)"
                      9d";
Source: (String)"
d9d";
Source: (String)"d9d"; 

So it seems like the response from the LG cloud wasn’t JSON but another (maybe binary) format.

Is there a way how the communication of original LG android app could be dumped?

Yes, you are correct. For WM v1, the returnedData is in a Binary Data, not JSon as AC’s.
I’m decoding the result based on my reverse eng.

I will release a version to you test today.

1 Like

Thanks for the reply. I will update to this latest version.

I also have a dishwasher. Will share cap file once i m able to configure new version.

Thanks!

1 Like

@djal , @Pogo

I think i had some progress here so far. Please, get the last version of the binding:

And try it out !

Regards