FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: Shadow3561 am 14 Januar 2026, 19:43:26

Titel: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 14 Januar 2026, 19:43:26
Moin,
angeregt durch diesen thread (https://forum.fhem.de/index.php?topic=142849.msg1350317#msg1350317) habe ich mich die letzte beiden Abende mit ChatGPT an ein Modul gewagt was Geräte aus der ThinQ App in FHEM abbilden und steuern kann. Dazu wird die offizielle LG-ThinQ-API-v2 benutzt.


Als erstes müssen wir auf diese Seite gehen
HIER (https://connect-pat.lgthinq.com/login)
Hier ändern wir oben die Sprache auf deutsch und melden uns mit unserem LG-Account an.

Dann erstellen wir einen PAT (Personal Access Token). Diesen kopieren.

Als nächstes die Beiden Module im Anhang in euren Modulordner (fhem/FHEM) packen.
fhem Neustarten

Das Connect-Device anlegen mit
defmod <NAME> LGThinQ_Connect <PAT>wenn ihr wollt, dass eure LG_devices automatisch angelegt werden müsst ihr noch das
autocreateDevices Attribut auf 1 setzen (funktioniert natürlich nur wenn das autocreate in fhem aktiv ist). Dies wird nach dem holen der Deviceliste von LG wieder auf 0 gesetzt.

Jetzt einmal
set <NAME> connect ausführen.
Nun sollten eure LG Geräte automatisch angelegt werden.

Im Device Modul ist mapping eingebaut, aber nur für Klimaanlage und Kühlschrank. Weitere Mappings könnt ihr selbst im Modul ab Zeile 404 hinzufügen. Alle benötigten Infos über die, von LG gelieferten, readings bekommt ihr im Device-reading "apiStateRaw".

Die Set-Befehle werden automatisch angelegt, dazu wird das reading "apiProfileRaw" benötigt.

Probiert es einfach mal aus.
Mit freundlichen Grüßen
Daniel
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 15 Januar 2026, 19:59:26
Neue Version ist Oben angehängt.
stateformat wurde hinzugefügt.
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: ixsus300 am 20 Januar 2026, 17:26:42
Hi,

konnte es soweit mit meiner WP LG ThermaV verbinden. Kannst du mir einen Tipp geben wie ich nun genau weitere Readings ab Zeile 404 hinzufügen kann?
Folgende Infos im apiStateRaw Reading:

{"timestamp":"2026-01-20T16:22:19.217518","messageId":"o0KwmLctidQ7MtnpZkQ4fw","response":{"roomTemperatureInUnits":[{"waterCoolMinTemperature":5,"airHeatMinTemperature":16,"waterHeatMaxTemperature":65,"unit":"C","inWaterCurrentTemperature":46,"airCoolMinTemperature":16,"airCurrentTemperature":26,"airCoolMaxTemperature":30,"currentTemperature":48,"waterHeatMinTemperature":15,"outWaterCurrentTemperature":48,"waterCoolMaxTemperature":27,"targetTemperature":17,"airHeatMaxTemperature":30},{"waterCoolMaxTemperature":80,"targetTemperature":62,"airHeatMaxTemperature":86,"waterHeatMinTemperature":58,"outWaterCurrentTemperature":118,"currentTemperature":118,"airCoolMaxTemperature":86,"airCurrentTemperature":78,"unit":"F","airCoolMinTemperature":60,"inWaterCurrentTemperature":114,"airHeatMinTemperature":60,"waterHeatMaxTemperature":148,"waterCoolMinTemperature":40}],"temperature":{"targetTemperature":0,"unit":"C","heatMaxTemperature":65,"coolMaxTemperature":27,"currentTemperature":48,"heatMinTemperature":15,"coolMinTemperature":5},"boilerJobMode":{"currentJobMode":"AUTO"},"operation":{"boilerOperationMode":"POWER_ON","roomTempMode":"WATER","hotWaterMode":"ON","roomWaterMode":"OUT_WATER"},"hotWaterTemperatureInUnits":[{"unit":"C","minTemperature":30,"targetTemperature":52,"maxTemperature":80,"currentTemperature":52},{"maxTemperature":176,"currentTemperature":126,"targetTemperature":126,"minTemperature":86,"unit":"F"}]}}
Danke !
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 20 Januar 2026, 17:54:11
Moin,

so in etwa
Zitat(

    # -------- Raum / Wasser Temperaturen --------
    'temperature.currentTemperature' => {
        name => 'currentTemp',
    },
    'temperature.targetTemperature' => {
        name => 'targetTemp',
    },
    'temperature.coolMinTemperature' => {
        name => 'coolMinTemp',
    },
    'temperature.coolMaxTemperature' => {
        name => 'coolMaxTemp',
    },
    'temperature.heatMinTemperature' => {
        name => 'heatMinTemp',
    },
    'temperature.heatMaxTemperature' => {
        name => 'heatMaxTemp',
    },

    # -------- Raumtemperatur (Celsius) --------
    'roomTemperatureInUnits.0.airCurrentTemperature' => {
        name => 'roomAirTemp',
    },
    'roomTemperatureInUnits.0.currentTemperature' => {
        name => 'roomCurrentTemp',
    },
    'roomTemperatureInUnits.0.targetTemperature' => {
        name => 'roomTargetTemp',
    },

    # -------- Wasser Temperaturen --------
    'roomTemperatureInUnits.0.inWaterCurrentTemperature' => {
        name => 'waterInTemp',
    },
    'roomTemperatureInUnits.0.outWaterCurrentTemperature' => {
        name => 'waterOutTemp',
    },

    # -------- Boiler Job Mode --------
    'boilerJobMode.currentJobMode' => {
        name => 'boilerJobMode',
    },

    # -------- Operation Modes --------
    'operation.boilerOperationMode' => {
        name => 'boilerPower',
    },
    'operation.hotWaterMode' => {
        name => 'hotWaterMode',
    },
    'operation.roomTempMode' => {
        name => 'roomTempMode',
    },
    'operation.roomWaterMode' => {
        name => 'roomWaterMode',
    },

    # -------- Hot Water --------
    'hotWaterTemperatureInUnits.0.currentTemperature' => {
        name => 'hotWaterCurrentTemp',
    },
    'hotWaterTemperatureInUnits.0.targetTemperature' => {
        name => 'hotWaterTargetTemp',
    },
    'hotWaterTemperatureInUnits.0.minTemperature' => {
        name => 'hotWaterMinTemp',
    },
    'hotWaterTemperatureInUnits.0.maxTemperature' => {
        name => 'hotWaterMaxTemp',
    },
Hast du Set-Befehle bekommen um die WP zu steuern?

Mit freundlichen Grüßen

EDIT:
Neue Version mit readings für LG Wärmepumpe oben angehängt.
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: ixsus300 am 20 Januar 2026, 18:23:04
Hi,

TOP !! Danke !

ja im apiProfileRaw Reading:
Habe allerdings ein Token ohne Set Befehle eingebaut. Möchte nur auslesen.

{"response":{"property":{"boilerJobMode":{"currentJobMode":{"mode":["r","w"],"value":{"r":["HEAT","AUTO","COOL"],"w":["HEAT","AUTO","COOL"]},"type":"enum"}},"hotWaterTemperatureInUnits":[{"minTemperature":{"type":"number","mode":["r"]},"currentTemperature":{"mode":["r"],"type":"number"},"unit":"C","targetTemperature":{"type":"range","value":{"w":{"min":30,"max":80,"step":1},"r":{"min":30,"max":80,"step":1}},"mode":["r","w"]},"maxTemperature":{"mode":["r"],"type":"number"}},{"currentTemperature":{"type":"number","mode":["r"]},"minTemperature":{"mode":["r"],"type":"number"},"maxTemperature":{"mode":["r"],"type":"number"},"unit":"F","targetTemperature":{"value":{"r":{"step":2,"max":176,"min":86},"w":{"step":2,"min":86,"max":176}},"type":"range","mode":["r","w"]}}],"roomTemperatureInUnits":[{"airCoolTargetTemperature":{"mode":["w"],"value":{"w":{"min":18,"max":30,"step":1}},"type":"range"},"airHeatMinTemperature":{"mode":["r"],"type":"number"},"inWaterCurrentTemperature":{"mode":["r"],"type":"number"},"outWaterCurrentTemperature":{"type":"number","mode":["r"]},"airHeatMaxTemperature":{"mode":["r"],"type":"number"},"waterCoolMinTemperature":{"type":"number","mode":["r"]},"waterCoolTargetTemperature":{"mode":["w"],"type":"range","value":{"w":{"max":24,"min":5,"step":1}}},"waterHeatMaxTemperature":{"type":"number","mode":["r"]},"airCoolMinTemperature":{"type":"number","mode":["r"]},"airCurrentTemperature":{"type":"number","mode":["r"]},"airCoolMaxTemperature":{"mode":["r"],"type":"number"},"waterCoolMaxTemperature":{"type":"number","mode":["r"]},"waterHeatTargetTemperature":{"value":{"w":{"max":57,"min":14,"step":1}},"type":"range","mode":["w"]},"currentTemperature":{"type":"number","mode":["r"]},"targetTemperature":{"mode":["r"],"type":"number"},"unit":"C","airHeatTargetTemperature":{"value":{"w":{"step":1,"max":30,"min":16}},"type":"range","mode":["w"]},"waterHeatMinTemperature":{"type":"number","mode":["r"]}},{"waterCoolTargetTemperature":{"mode":["w"],"value":{"w":{"min":40,"max":76,"step":2}},"type":"range"},"waterCoolMinTemperature":{"mode":["r"],"type":"number"},"waterHeatMaxTemperature":{"type":"number","mode":["r"]},"waterCoolMaxTemperature":{"mode":["r"],"type":"number"},"waterHeatTargetTemperature":{"mode":["w"],"type":"range","value":{"w":{"step":2,"max":134,"min":58}}},"currentTemperature":{"mode":["r"],"type":"number"},"waterHeatMinTemperature":{"type":"number","mode":["r"]},"unit":"F","airHeatTargetTemperature":{"mode":["w"],"type":"range","value":{"w":{"step":2,"max":86,"min":60}}},"targetTemperature":{"type":"number","mode":["r"]},"airCurrentTemperature":{"mode":["r"],"type":"number"},"airCoolMinTemperature":{"type":"number","mode":["r"]},"airCoolMaxTemperature":{"mode":["r"],"type":"number"},"inWaterCurrentTemperature":{"type":"number","mode":["r"]},"airHeatMinTemperature":{"type":"number","mode":["r"]},"airHeatMaxTemperature":{"type":"number","mode":["r"]},"outWaterCurrentTemperature":{"type":"number","mode":["r"]},"airCoolTargetTemperature":{"mode":["w"],"type":"range","value":{"w":{"min":64,"max":86,"step":2}}}}],"temperature":{"heatTargetTemperature":{"mode":["w"],"type":"number"},"coolTargetTemperature":{"type":"number","mode":["w"]},"currentTemperature":{"type":"number","mode":["r"]},"coolMinTemperature":{"mode":["r"],"type":"number"},"unit":{"mode":["r"],"value":{"r":["C"]},"type":"enum"},"targetTemperature":{"mode":["r"],"type":"number"},"heatMinTemperature":{"type":"number","mode":["r"]},"coolMaxTemperature":{"mode":["r"],"type":"number"},"heatMaxTemperature":{"type":"number","mode":["r"]}},"operation":{"boilerOperationMode":{"mode":["r","w"],"value":{"w":["POWER_ON","POWER_OFF"],"r":["POWER_ON","POWER_OFF"]},"type":"enum"},"hotWaterMode":{"mode":["r","w"],"value":{"w":["OFF","ON"],"r":["OFF","ON"]},"type":"enum"},"roomTempMode":{"mode":["r"],"value":{"r":["AIR","WATER"]},"type":"enum"},"roomWaterMode":{"mode":["r"],"type":"enum","value":{"r":["OUT_WATER","IN_WATER"]}}}}},"timestamp":"2026-01-20T17:13:01.043307","messageId":"QduesqWEVjr-zEppFOprww"}

mfg
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 20 Januar 2026, 18:55:54
Zitatja im apiProfileRaw Reading:
das ist klar, die Daten werden vom Mode abgerufen und als reading gespeichert um daraus mögliche Set-Befehle an zu legen.

Was ich meine ist, werden dir die Set-Befehle oben angeboten?

Mit freundlichen Grüßen
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: ixsus300 am 20 Januar 2026, 19:16:41
nein nur get
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 20 Januar 2026, 19:38:52
danke
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: JoWiemann am 21 Januar 2026, 15:30:17
Hallo,

der Connect zu Samsung ist erfolgreich. Allerdings wird meine Samsung "EHS Mono r290 Wärmepumpe" nicht in die deviceMap geladen. Leider hat Dein CoAutor keinerlei Log Informationen eingebaut.

Grüße Jörg
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 21 Januar 2026, 16:33:14
Moin,
Samsung???
Das Modul ist für LG ThinQ
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: JoWiemann am 21 Januar 2026, 17:09:26
Zitat von: Shadow3561 am 21 Januar 2026, 16:33:14Moin,
Samsung???
Das Modul ist für LG ThinQ
Puh, nicht mein Tag. Hatte parallel an Samsung gearbeitet.

Sorry und Grüße Jörg
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Rainerfrei am 27 März 2026, 15:29:26
Hallo,
ich habe "set <NAME> connect" ausgeführt und habe dann auch ein connect.
Aber es werden keine Readings angelegt.

Muss ich sonst noch was beachten.
In der App In der LG Thinq App habe ich  2 Klimas angelegt.
Danke!!!!
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 27 März 2026, 16:57:43
Moin, Hast du die Klimaanlage eingeschaltet und mal bedient?
Poste bitte einmal die readings apiStateRawund apiProfileRaw
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Rainerfrei am 28 März 2026, 09:56:10
Auch Moin,
die gibt es nicht
deviceMap {} 2026-03-27 14:53:41
state connected2026-03-27 14:53:41
Das ist alles

Die PAT habe ich auch generiert.
Fehlt da noch was? Verbindung PAT zu meinen Geräten?
Muss ich irgendwo noch was einstellen?
Der Bezug der PAT zu meinen Geräten kann ich nicht nachvollziehen
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 28 März 2026, 14:23:22
Zeig mal bitte ein list vom den devices
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Rainerfrei am 29 März 2026, 13:07:50
Internals:
   COUNTRY    DE
   DEF        patnummer
   FUUID      69c5232f-f33f-b274-c3ce-021274353ba4b396
   NAME       Klima_Wohnzimmer
   NR         1612
   PAT        <patnummer>
   REGION     EIC
   STATE      defined
   TYPE       LGThinQ_Connect
   READINGS:
     2026-03-28 12:01:27   deviceMap       {}
     2026-03-28 13:33:01   state           defined
Attributes:
   autocreateDevices 1
   country    DE
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 29 März 2026, 14:49:55
2026-03-28 12:01:27   deviceMap       {}Hier sollten eigentlich die empfangenen Geräte drin stehen mit device-id usw.

autocreateDevices 1
Und welches device wurde erstellt?
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Rainerfrei am 29 März 2026, 15:47:49
Das ist ja mein Problem. KEINE.
Mit "set Klima_Wohnzimmer connect"
erscheint
"device list updated" oben links in der Ecke

"autocreateDevices 1" wird nicht auf 0 gesetzt !!!!!

Das war es dann auch.
Unter opt/fhem/FHEM
sind die beiden Programme kopiert.

Der "state" steht jetzt auf connected



Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 29 März 2026, 16:16:15
mach doch noch einmal ein
list Klima_Wohnzimmerund lasse die ersten und letzten Zeichen vom PAT drin. In der Mitte bitte unkenntlich machen.
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Rainerfrei am 30 März 2026, 10:25:25
so ok ?
Internals:
   COUNTRY    DE
   DEF        thinqpat_40d53e7xxxxxxxxxxxxxxxxxxxx60c65454bdd6c724ed53aa692
   FUUID      69c5232f-f33f-b274-c3ce-021274353ba4b396
   NAME       Klima_Wohnzimmer
   NR         1629
   PAT        thinqpat_40d53e7xxxxxxxxxxxxxxxxxxxx60c65454bdd6c724ed53aa692
   REGION     EIC
   STATE      connected
   TYPE       LGThinQ_Connect
   eventCount 4
   READINGS:
     2026-03-29 15:54:48   deviceMap       {}
     2026-03-29 15:54:48   state           connected
   helper:
     devices:
Attributes:
   autocreateDevices 1
   country    DE
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 30 März 2026, 12:55:59
Sollte so passen. Hast du dich bei der Seite wo du den PAT bekommst mit dem Nutzernamen und Passwort von deinem LG Account angemeldet? Es müssen die selben sein wie von deiner ThinQ App
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Rainerfrei am 30 März 2026, 14:08:08
So, ich habe jetzt alles neu definiert und jetzt bekomme ich tatsächlich auch meine 2 Klimas.
Ich bin begeistert.

Sorry für die Umstände. Leider weiß ich jetzt nicht was die Ursache war.

Nochmal sorry und schöne Woche
Rainer
Titel: Aw: Neues Modul LG-ThinQ
Beitrag von: Shadow3561 am 30 März 2026, 17:10:40
ZitatNochmal sorry und schöne Woche
Kein Problem. Ebenfalls eine schöne Wiche und viel Spaß beim regeln der Klimageräte. Freut mich, dass es geklappt hat.
Gruss