LG ThinkQ in Home Assistant
Leider hat unsere alte Waschmaschine immer mehr Probleme gemacht. Daher musste eine neue her. Natürlich war das Budget gering, aber Smart sollte sie schon sein. Nach einigem Suchen sind uns die LG-Geräte mit ThinkQ ins Auge gefallen. So habe ich sie in HA integriert.
Anzeige: Dieser Beitrag bzw. dessen Bewertung wurde nicht finanziert oder gesponsert! Die Sachen wurden selbst gekauft und getestet. Dieser Beitrag enthält Amazon & Ebay Affiliate Links, wodurch ich eine Provision erhalte.
Die ThinQ Geräte bieten eine Integration und eine extra angepasste Card. Leider beides nicht direkt vom Hersteller und nicht lokal. Ich hoffe, dass viele Beiträge wie diese dazu beitragen, dass Hersteller in Zukunft eine offizielle lokale Integration anbieten. Für mich jedenfalls wäre das ein Kaufargument.
Letztendlich haben wir uns für dieses Model entscheiden: Link
Integration
Es gibt wohl mehrere Wege die Integration zu installieren. Ich habe den einfachsten Weg gewählt – vermute ich.
HACS hatte ich schon und dort kann man die Integration „SmartThingQ LGE Sensors“ herunterladen und installieren.
Dann unter Einstellungen / Geräte und Dienste => „Integration hinzufügen“. Da „Use URL redirection authentication method“ auswählen und bestätigen. Den Link den HA jetzt anzeigt in einen Browser eingeben und einloggen. Der Link der jetzt oben steht wieder kopieren und in das HA Fenster eintragen. FERTIG
Auf diese Weise funktionieren bei mir APP und HA gleichzeitig und bisher hatte ich noch keine Probleme.
Jetzt bietet das Gerät eine Unmenge an. Ein paar müssen vllt. erst aktiviert werden, aber dann sind es wirklich viele:
Card
Genau für diese Integration gibt es eine tolle Card. Ihr findet sie hier unter diesem Link:
https://github.com/phrz/lg-washer-dryer-card
Bisher funktioniert die Integration leider nur manuell. Also los:
Den Ordner herunterladen und alles via Samba direkt in den bekannten www-Ordner kopiert.
Danach auf ein beliebiges Dashboard gehen. Rechts oben auf bearbeiten und danach auf die 3 Punkte und auf „Ressoucen verwalten“. Im neuen Fenster unten rechts auf „Ressource hinzufügen“ klicken und „/local/7segment.css“
eingeben. Stylesheet hat sich bei mir sogar automatisch aktiviert.
Zuletzt muss die Config.yaml angepasst werden. Ich habe bereits Templates.yaml angelegt und konnte dort den Code aus dem heruntergeladenen Ordner aus der configuration.yaml einfach einfügen.
Code:
- sensors:
washer_door_lock:
friendly_name: "Washer Door Lock"
value_template: "{{ state_attr('sensor.waschtrockner','door_lock') }}"
# mini_washer_door_lock:
# friendly_name: "Mini Washer Door Lock"
# value_template: "{{ state_attr('sensor.mini_washer','door_lock') }}"
# dishwasher_door_open:
# friendly_name: "Dish Washer Door Lock"
# value_template: "{{ state_attr('sensor.dishwasher','door_open') }}"
washer_time_display:
friendly_name: "Washer Time Display"
value_template: >
{% if is_state('sensor.waschtrockner_run_state', '-') %}
{% elif is_state('sensor.waschtrockner_run_state', 'unavailable') %}
{% elif is_state('sensor.waschtrockner_run_state', 'Standby') %}
-:--
{% else %}
{{ state_attr("sensor.waschtrocknerr","remain_time").split(":")[:-1] | join(':') }}
{% endif %}
# mini_washer_time_display:
# friendly_name: "Mini Washer Time Display"
# value_template: >
# {% if is_state('sensor.mini_waschtrockner_run_state', '-') %}
# {% elif is_state('sensor.mini_waschtrockner_run_state', 'unavailable') %}
# {% elif is_state('sensor.mini_waschtrockner_run_state', 'Standby') %}
# -:--
# {% else %}
# {{ state_attr("sensor.mini_waschtrockner","remain_time").split(":")[:-1] | join(':') }}
# {% endif %}
dryer_time_display:
friendly_name: "Dryer Time Display"
value_template: >
{% if is_state('sensor.waschtrockner_run_state', '-') %}
{% elif is_state('sensor.waschtrockner_run_state', 'unavailable') %}
{% elif is_state('sensor.waschtrockner_run_state', 'Standby') %}
-:--
{% else %}
{{ state_attr("sensor.waschtrockner","remain_time").split(":")[:-1] | join(':') }}
{% endif %}
# dishwasher_time_display:
# friendly_name: "Dish Washer Time Display"
# value_template: >
# {% if is_state('sensor.waschtrockner_run_state', '-') %}
# {% elif is_state('sensor.waschtrockner_run_state', 'unavailable') %}
# {% elif is_state('sensor.waschtrockner_run_state', 'Standby') %}
# -:--
# {% else %}
# {{ state_attr("sensor.waschtrockner","remain_time").split(":")[:-1] | join(':') }}
# {% endif %}
blank:
friendly_name: "Blank Sensor"
value_template: ""
Alle „washer“ habe ich durch „washdryer“ (Name meines Geräts) ersetzt [UND SPEICHERN]. Anschließend war ein Neustart von HA notwendig.
Wieder in HA habe ich eine Karte hinzugefügt und den Beispielcode leicht verändert eingetragen. Ganz am Schluss noch eine Entity für eine kleine Zustandsabhängige Animation. Am Schluss kam das heraus:
type: vertical-stack
cards:
- type: picture-elements
elements:
- type: image
entity: sensor.waschtrockner_run_state
image: /local/lg-icons/sensing.png
state_image:
Ladungserkennung: /local/lg-icons/sensing-on.png
style:
top: 33%
left: 33%
width: 20%
image-rendering: crisp
- type: image
entity: sensor.waschtrockner_run_state
image: /local/lg-icons/wash.png
state_image:
Waschen: /local/lg-icons/wash-on.png
style:
top: 33%
left: 49%
width: 20%
image-rendering: crisp
- type: image
entity: sensor.waschtrockner_run_state
image: /local/lg-icons/rinse.png
state_image:
Spülen: /local/lg-icons/rinse-on.png
style:
top: 33%
left: 65%
width: 20%
image-rendering: crisp
- type: image
entity: sensor.waschtrockner_run_state
image: /local/lg-icons/spin.png
state_image:
Schleudern: /local/lg-icons/spin-on.png
style:
top: 33%
left: 79%
width: 20%
image-rendering: crisp
- type: image
entity: sensor.waschtrockner_run_state
image: /local/lg-icons/dry.png
state_image:
Trocknen: /local/lg-icons/dry-on.png
style:
top: 33%
left: 92%
width: 20%
image-rendering: crisp
- type: image
entity: sensor.waschtrockner
image: /local/lg-icons/wifi.png
state_image:
'on': /local/lg-icons/wifi-on.png
style:
top: 73%
left: 32%
width: 10%
image-rendering: crisp
- type: image
entity: binary_sensor.waschtrockner_door_lock
image: /local/lg-icons/lock.png
state_image:
'on': /local/lg-icons/lock-on.png
style:
top: 73%
left: 45%
width: 10%
image-rendering: crisp
- type: state-label
entity: sensor.blank
prefix: '18:88'
style:
color: '#555'
font-family: segment7
font-size: 50px
left: 95%
top: 74%
transform: translate(-100%,-50%)
- type: state-label
entity: sensor.waschtrockner_remaining_time
style:
color: '#8df427'
font-family: segment7
font-size: 50px
left: 95%
top: 74%
transform: translate(-100%,-50%)
- type: image
entity: sensor.waschtrockner_run_state
state_image:
Spülen: /local/WaMActive_HA.gif
Schleudern: /local/WaMActive_HA.gif
Trocknen: /local/TrocknerActive_HA.gif
'-': /local/finished2.gif
'@CP_UX30_CARD_DELAY_SET': /local/SandUhr_GIF_600.gif
style:
top: 44%
left: 13%
width: 17%
image-rendering: crisp
image: /local/hass-fl-dryer-steel-card-bg.png
- type: conditional
conditions:
- entity: sensor.waschtrockner_run_state
state_not: '-'
card:
type: entities
entities:
- entity: sensor.waschtrockner_run_state
- entity: sensor.waschtrockner_countdown_time
- entity: sensor.waschtrockner
type: attribute
attribute: current_course
name: Current Course
icon: mdi:tune-vertical-variant
- entity: sensor.waschtrockner
type: attribute
attribute: water_temp
name: Water Temperature
icon: mdi:coolant-temperature
- entity: sensor.waschtrockner
type: attribute
attribute: spin_speed
name: Spin Speed
icon: mdi:rotate-right
- entity: sensor.waschtrockner_current_course
- entity: sensor.waschtrockner_dry_level
- entity: switch.waschtrockner_power
- entity: binary_sensor.waschtrockner_remote_start
- entity: binary_sensor.waschtrockner_standby
- entity: sensor.waschtrockner_water_temp
state_color: false
Was jetzt noch aussteht sind die ganzen Automatisierungen in Node Red: Alexa-Nachricht wenn Fertig. Wenn niemand zu Hause ist dann eine Nachricht in der App, automatisiertes Starten…. Da gibt’s aber noch viel mehr zu tun.