[RELEASE] ThinQ Connect Integration (Official API) for Hubitat

Devices currently there are from the old integration app. We added a dryer 6 months after the others were setup and only that was "new' to this code. None of the devices in the new (this thread) app show up in Alexa after selecting them in the Echo Skill. I just removed the old devices and renamed the existing LG skill devices and they still don't show up from hubitat.

ETA: Ok, on this one, I'm an idiot. I migrated hubs and needed to disable/enable the skill in Alexa.

I added "Get Device Profile". Can you click that and "Refresh", and paste the debug logs for both. I wonder that data does the new API sends for your Oven.

Get Device Profile
app:17272025-10-13 05:44:16.863 PM

debug

ThinQ Connect Integration apiGet(/devices/98ad7844a938019fea54be19f56666ddc30ce898520a4b9969afee08d4c841cb/profile, [extensionProperty:[info:[type:SINGLE]], notification:[push:[ERROR_HAS_OCCURRED, PREHEATING_IS_COMPLETE, TIME_TO_CLEAN, COOKING_IS_COMPLETE]], property:[[cook:[cookMode:[mode:[r, w], type:enum, value:[r:[BAKE, ROAST, CONVECTION_BAKE, CONVECTION_ROAST, CRISP_CONVECTION, OTHERS], w:[BAKE, CONVECTION_BAKE, CONVECTION_ROAST]]]], location:[locationName:UPPER], operation:[ovenOperationMode:[mode:[w], type:enum, value:[w:[PREHEATING, START, STOP]]]], remoteControlEnable:[remoteControlEnabled:[mode:[r], type:boolean, value:[r:[false, true]]]], runState:[currentState:[mode:[r], type:enum, value:[r:[PREHEATING, CLEANING, INITIAL, DONE, COOLING, COOKING_IN_PROGRESS, CLEANING_IS_DONE, PAUSED, PREHEATING_IS_DONE]]]], temperature:[[targetTemperature:[mode:[r, w], type:range, value:[r:[max:285, min:80, step:1], w:[max:285, min:80, step:1]]], unit:C], [targetTemperature:[mode:[r, w], type:range, value:[r:[max:550, min:170, step:5], w:[max:550, min:170, step:5]]], unit:F]], timer:[remainHour:[mode:[r], type:number], remainMinute:[mode:[r], type:number], remainSecond:[mode:[r], type:number], targetHour:[mode:[w], type:number], targetMinute:[mode:[w], type:number], timerHour:[mode:[w], type:number], timerMinute:[mode:[w], type:number]]]]])

Refresh
dev:15932025-10-13 05:46:24.638 PM

info

Oven CurrentState: INITIAL, Switch: on

dev:15932025-10-13 05:46:24.636 PM

debug

Oven processStateData([[cook:[cookMode:OTHERS], location:[locationName:UPPER], remoteControlEnable:[remoteControlEnabled:false], runState:[currentState:INITIAL], temperature:[targetTemperature:0, unit:F], timer:[remainHour:0, remainMinute:0, remainSecond:0]]])

app:17272025-10-13 05:46:24.632 PM

debug

ThinQ Connect Integration apiGet(/devices/98ad7844a938019fea54be19f56666ddc30ce898520a4b9969afee08d4c841cb/state, [[cook:[cookMode:OTHERS], location:[locationName:UPPER], remoteControlEnable:[remoteControlEnabled:false], runState:[currentState:INITIAL], temperature:[targetTemperature:0, unit:F], timer:[remainHour:0, remainMinute:0, remainSecond:0]]])

app:17272025-10-13 05:46:24.128 PM

debug

ThinQ Connect Integration apiGet(/devices/98ad7844a938019fea54be19f56666ddc30ce898520a4b9969afee08d4c841cb/state)

dev:15932025-10-13 05:46:24.124 PM

debug

Oven refresh()

I think their new API just doesn't properly include the information for the rangetop or is incorrectly identifying the model. Looking at the d.meglio device driver, none of the attributes are in the debug output, but I'm uncertain if this is just because they are not in your driver? FWIW, only the "frontRightState" is now the only thing being reported for any burner that is on (old driver/app) since they dumbed it down. Shame that it used to show every single burner FL/RL/Center/FR/RR.

Granted, I understand 5% of what I'm looking at here, but I am wondering if this section is something that should be included?

I DO appreciate your looking into this.

extensionProperty object
info object

Information
type string

Enum: "SINGLE" "COMBI" "DOUBLE_UL" "DOUBLE_LR"

Value Description


SINGLE Single Oven
COMBI Combination Ovens
DOUBLE_UL Double Ovens(Upper/Lower)
DOUBLE_LR Double Ovens(Left/Right)|

Sorry I have been MIA. I have been working pretty much everyday and just did not have the time to look at this. Finally did today. I reloaded the driver. Here is what is not working:

Setting the Temperature is working but I need to enter it in Celsius. Then I found on the Preferences page a toggle to use Fahrenheit. It was enabled but I went ahead and toggled it of then on again and now I can set temp in Fahrenheit. The Current Stats though still report temperatures in Celsius.

Delay Start and Delay Stop. These are the errors when doing that:
dev:2722025-11-05 15:47:44.107

error

java.lang.UnsupportedOperationException: Cannot use intdiv() on this number type: java.math.BigDecimal with value: 1 on line 608 (method setDelayStart)

dev:2722025-11-05 15:51:04.835

error

java.lang.UnsupportedOperationException: Cannot use intdiv() on this number type: java.math.BigDecimal with value: 60 on line 621 (method setDelayStop)

Here is the App log:
app:6902025-11-05 17:21:47.302

debug

ThinQ Connect Integration API POST success: 200 - [messageId:ed94d32890ad4d2ab38c24, response:[:], timestamp:2025-11-06T01:21:47.016689]

app:6902025-11-05 17:21:46.879

debug

ThinQ Connect Integration apiPost(/event/59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa/subscribe, [expire:[unit:HOUR, timer:4464]])

app:6902025-11-05 17:21:46.876

debug

ThinQ Connect Integration API POST success: 200 - [messageId:1fd07619a82d4f99821808, response:[:], timestamp:2025-11-06T01:21:46.551254]

app:6902025-11-05 17:21:46.446

debug

ThinQ Connect Integration apiPost(/event/e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097/subscribe, [expire:[unit:HOUR, timer:4464]])

app:6902025-11-05 17:21:46.440

debug

ThinQ Connect Integration registerPushNotifications()

app:6902025-11-05 17:21:46.355

debug

ThinQ Connect Integration apiGet(/devices/59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa/state, [airConJobMode:[currentJobMode:ENERGY_SAVING], airFlow:[windStrength:HIGH], filterInfo:[filterLifetime:0, usedTime:250], operation:[airConOperationMode:POWER_OFF], runState:[currentState:NORMAL], temperature:[currentTemperature:19, targetTemperature:22, unit:C], temperatureInUnits:[[currentTemperature:19, targetTemperature:22, unit:C], [currentTemperature:66, targetTemperature:72, unit:F]], timer:[relativeStartTimer:UNSET, relativeStopTimer:UNSET]])

app:6902025-11-05 17:21:45.996

debug

ThinQ Connect Integration apiGet(/devices/59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa/state)

app:6902025-11-05 17:21:45.994

debug

ThinQ Connect Integration getDeviceStatus(59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa)

app:6902025-11-05 17:21:45.949

debug

ThinQ Connect Integration apiGet(/devices/e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097/state, [airConJobMode:[currentJobMode:ENERGY_SAVING], airFlow:[windStrength:HIGH], filterInfo:[filterLifetime:153, usedTime:97], operation:[airConOperationMode:POWER_OFF], runState:[currentState:NORMAL], temperature:[currentTemperature:20, targetTemperature:22, unit:C], temperatureInUnits:[[currentTemperature:20, targetTemperature:22, unit:C], [currentTemperature:68, targetTemperature:72, unit:F]], timer:[relativeStartTimer:UNSET, relativeStopTimer:UNSET]])

app:6902025-11-05 17:21:45.601

debug

ThinQ Connect Integration apiGet(/devices/e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097/state)

app:6902025-11-05 17:21:45.599

debug

ThinQ Connect Integration getDeviceStatus(e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097)

app:6902025-11-05 17:21:45.567

debug

ThinQ Connect Integration cleanupChildDevices()

app:6902025-11-05 17:21:45.565

debug

ThinQ Connect Integration initialize()

app:6902025-11-05 17:21:45.529

debug

ThinQ Connect Integration updated()

app:6902025-11-05 17:21:43.308

debug

ThinQ Connect Integration [deviceId:59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa, deviceInfo:[alias:Livingroom Air Conditioner, deviceType:DEVICE_AIR_CONDITIONER, modelName:WIN_056905_WW, reportable:true]]

app:6902025-11-05 17:21:43.304

debug

ThinQ Connect Integration [deviceId:e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097, deviceInfo:[alias:Jeremy's Air Conditioner, deviceType:DEVICE_AIR_CONDITIONER, modelName:WIN_056905_WW, reportable:true]]

app:6902025-11-05 17:21:43.292

debug

ThinQ Connect Integration apiGet(/devices, [[deviceId:e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097, deviceInfo:[alias:Jeremy's Air Conditioner, deviceType:DEVICE_AIR_CONDITIONER, modelName:WIN_056905_WW, reportable:true]], [deviceId:59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa, deviceInfo:[alias:Livingroom Air Conditioner, deviceType:DEVICE_AIR_CONDITIONER, modelName:WIN_056905_WW, reportable:true]]])

app:6902025-11-05 17:21:43.139

debug

ThinQ Connect Integration apiGet(/devices)

app:6902025-11-05 17:21:43.137

debug

ThinQ Connect Integration getDevices()

app:6902025-11-05 17:21:39.684

debug

ThinQ Connect Integration apiGet(/route, [apiServer:https://api-aic.lgthinq.com, mqttServer:mqtts://a3phael99lf879-ats.iot.us-west-2.amazonaws.com:8883, webSocketServer:wss://a3phael99lf879-ats.iot.us-west-2.amazonaws.com:443/mqtt])

app:6902025-11-05 17:21:39.578

debug

ThinQ Connect Integration apiGet(/route)

app:6902025-11-05 17:21:39.577

debug

ThinQ Connect Integration getMqttServerFromApi()

app:6902025-11-05 17:21:37.128

debug

ThinQ Connect Integration apiGet(/devices, [[deviceId:e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097, deviceInfo:[alias:Jeremy's Air Conditioner, deviceType:DEVICE_AIR_CONDITIONER, modelName:WIN_056905_WW, reportable:true]], [deviceId:59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa, deviceInfo:[alias:Livingroom Air Conditioner, deviceType:DEVICE_AIR_CONDITIONER, modelName:WIN_056905_WW, reportable:true]]])

app:6902025-11-05 17:21:36.629

debug

ThinQ Connect Integration apiGet(/devices)

app:6902025-11-05 17:21:36.622

debug

ThinQ Connect Integration testApiConnection()

app:6902025-11-05 17:15:06.882

debug

ThinQ Connect Integration processMqttMessage(Jeremy's Air Conditioner, [deviceId:e4021498e5c0aacbf4fcac803f75c2ca85f3177419bd074ca206ba2b7d74f097, deviceType:DEVICE_AIR_CONDITIONER, pushType:DEVICE_STATUS, report:[temperature:[currentTemperature:20, unit:C], temperatureInUnits:[[currentTemperature:20, unit:C], [currentTemperature:68, unit:F]]], serviceId:40de70e488a1891a475039f6, userList:[US2107190938841]])

app:6902025-11-05 17:06:10.339

debug

ThinQ Connect Integration processMqttMessage(Jeremy's Air Conditioner, [deviceId:59696a4f6fbcd1e91d57903995a5a258fec0ea37c71ef35008d7bd3fdbccc3aa, deviceType:DEVICE_AIR_CONDITIONER, pushType:DEVICE_STATUS, report:[temperature:[currentTemperature:19, unit:C], temperatureInUnits:[[currentTemperature:19, unit:C], [currentTemperature:66, unit:F]]], serviceId:40de70e488a1891a475039f6, userList:[US2107190938841]])

I’m having issue where the app is finding just washtower and not two separate devices so not showing on device list. Is it possible to fix this?


I opened a new issue for this : Add support for DEVICE_WASHTOWER · Issue #2 · jonozzz/hubitat-thinqconnect · GitHub

1 Like

I have a Washtower and the current app has been working for me. I even moved the integration from one of my hubs to the other and back again over the past few weeks and it found both devices every time. It does default to calling one of them "Washtower"... IIRC the washer gets named Washer and the dryer gets named Washtower when I first set it up.

I think different models work differently. In my case the api just returns one device with the data for both washer and dryer. The code needs DEVICE_WASHTOWER and needs to create two child devices. @jonozz I used Claude to create some adjustments but not sure fully working correctly. I’ll comment it GitHub issue when get a chance.

I wonder if yours is a newer model that's using the DEVICE_WASHTOWER type. I also have a tower that returns 2 types of devices like @Alan_F mentioned.

Thats a good start with Claude, I'd have to do the same, otherwise it's hard for me to test all actions/properties without having access to a real device.

Added a pull request in github. Seems to work ok for me now.

I'm still using the old app from Dman and I coded the drivers for heat pump. It still work. I saw you use AC but I guess that's not the same code for heat pump ?

I checked the code and it seems most of the commands are there but in comments. That's clean, I'll made some modifications and test it with my heat pump. Thank's for the nice job.

Hello, trying to install this one and replace the older app on my C8-Pro. Oddly enough I cannot seem to remove the older app (there is no remove button and HPM continually says that it is in use)...however, I have already removed the older devices that were created by that app as well. Anyone knows of any suggestions? I have still tried using this newer app but it doesn't appear to generate the devices, despite detecting them. I figured that the existence of the older app was interfering, hence why I am now trying to remove it.

In the apps list, can you click that (i) icon to the right of the old app and scroll all the way down and see if there are any child devices still there?

What type of devices does the new one detect?

Is there somebody who plan to uncomment the commands for AC (heat pump) like heating and stuff like that ?

Thank's

Do you need a volunteer for testing the LG fridge? I got one.
As for setting up the ThinQ app on Hubitat, I've stumbled along* up to this point and am now stumped as to what any of this means:

  • Using info from the HA forum, which pointed me to the LG PAT Token site. However, your Readme file is a far better starting point.
1 Like

Thinq Connect correctly detects both of my LG appliances (fridge and A/C unit) and added a child device for each. Both are online and shown in the LG app. But currently only the A/C device reports any states on Hubitat, not the fridge. Clicking the 'Refresh' and 'Initialize' paddles didn't seem to jog anything....

Any suggestions?

Hello! I recently stumbled onto this integration (THANK YOU!) and I have an LG Washer, Dryer and Refrigerator. The Washer and Dryer but showed up and function as expected however I am also having trouble getting the fridge to function. I know in the repo it says this is untested so if it helps, this is what I'm seeing in the device logs:


The fridge shows up but as a question mark as well (seen in the background.

1 Like

I'm also getting errors for the LG Refrigerator device in Logs:


Standing by to hear what needs to happen next.