Du kannst die ↗ Poolsana InverPEARL Inverter-Wärmepumpe in deinen HomeAssistant einbinden. Das klappt mit der Tuya-App ganz einfach.
In dem Beitrag verfolge ich zwei Ziele:
- möchte ich dir zeigen, wie einfach du mit der Tuya-App und HomeAssistant ein bedienbares Dashboard für die Kontroller der Wärmepumpe bekommst.
- Eine PV-Überschuss-Logik erstellen, damit die Wärmepumpe ein-, ausschaltet bei PV-Überschuss. Alles von dir einfach aktivierbar.
Dashboard im HomeAssistant
Als Vorgeschmack: So sieht das Dashboard am Ende aus. Du hast einen großen Schieberegler für die gewünschte Temperatur. Du siehst außerdem, welchen Zustand die Wärmepumpe hat.
Meine QCells / Solax Solaranlage ist hier auch eingebunden. Im Dashboard nur Kosmetik. Für die PV-Überschussregelung natürlich essenziell.
Hier gibt es 2 Optionen:
1. PV Logik aktivieren:
Die Wärmepumpe wird eingeschaltet, wenn:
- Die PV-Automatik manuell aktiviert ist (PV Logik aktivieren) Also dieser Schalter aktiv AN
- Kein manueller Betrieb erzwungen wird (Manuell einschalten ist AUS)
- Der PV-Überschuss seit mindestens 1 Minute stabil über 1500 W liegt
- Die Batterie vollständig geladen ist (über 99 %)
2. Manuell einschalten:
Die Wärmepumpe wird eingeschaltet, wenn:
- Dieser Schalter aktiv ist (Manuell einschalten ist AN)
Jegliche anderen Zustände werden praktisch überschrieben. Auch setze ich den Schalter von „PV Logik aktivieren“ auf AUS.
Schiebe ich den „Manuell einschalten“ wieder nach links, wird die Wärmepumpe ausgeschaltet.
Tuya-App
Die Poolsana InverPEARL wird von der Tuya-App verwaltet. Diese bietet eine HomeAssistant Integration. Damit ist diese Vorrausetzung um die folgende Automation zu realisieren. Die Tuya-App kannst du hier herunterladen:
Eigenschaften der Entität "climate.inverpearl"
Wenn die InverPEARL über die Tuya-App eingerichtet wurde und dann im HomeAssistant die Integration installiert ist, kannst du folgende Attribute auslesen. Die Liste ist mit Stand 05/2025. Schreib mir gerne in die Kommentare, wenn sich die Attribute verändern oder erweitern.
Attribut | Wert |
---|---|
hvac_modes | off, heat_cool |
min_temp | 5 |
max_temp | 43 |
target_temp_step | 1 |
current_temperature | 22 |
temperature | 28 |
friendly_name | InverPEARL |
supported_features | 385 |
Im Prinzip ist die Integration als „Climate“ konfiguriert. Damit hast du dann schon im Standard solch eine Ansichtskarte, die praktisch alles beinhaltet, was du für den Betrieb über HomeAssistant benötigst.
Das könnte dir hier schon reichen, um mit einem Tablet im Flur die Pool-Wärmepumpe komplett zu bedienen. Im Folgenden werde ich das aber mit einer PV-Überschuss-Funktion erweitern.
Dashboard YAML Beispiel
Wie versprochen kommt jetzt der YAML-Code für das hier gezeigte Dashboard:
YAML-Code einblenden
views:
- title: Wärmepumpe
path: waermepumpe
icon: mdi:heat-pump
type: masonry
cards:
- type: entity
entity: climate.inverpearl
icon: mdi:pool-thermometer
state_color: true
- type: thermostat
entity: climate.inverpearl
name: InverPEARL Steuerung
show_current_as_primary: true
features:
- type: climate-hvac-modes
- type: custom:power-flow-card-plus
entities:
battery:
entity: sensor.solax_battery_power_charge
state_of_charge: sensor.solax_battery_capacity
invert_state: true
color_value: true
use_metadata: false
show_state_of_charge: true
state_of_charge_unit_white_space: true
grid:
entity: switch.poweroptinet_access
production: sensor.solax_grid_export
consumption: sensor.solax_grid_import
invert_state: false
use_metadata: false
color_value: true
solar:
entity: sensor.solax_pv_power_total
display_zero_state: true
color_value: false
color_icon: true
invert_state: false
use_metadata: false
home:
entity: sensor.solax_house_load
override_state: true
subtract_individual: true
hide: false
use_metadata: false
clickable_entities: true
display_zero_lines:
mode: show
transparency: 50
grey_color:
- 189
- 189
- 189
use_new_flow_rate_model: false
w_decimals: 0
kw_decimals: 1
min_flow_rate: 0.75
max_flow_rate: 6
max_expected_power: 2000
min_expected_power: 0.01
watt_threshold: 1000
transparency_zero_lines: 0
sort_individual_devices: false
disable_dots: false
- type: entities
title: 🎛️ Wärmepumpenschalter
show_header_toggle: false
state_color: true
entities:
- entity: input_boolean.poolwp_pv_logik_aktivieren
name: PV Logik aktivieren
- entity: input_boolean.poolwp_manuell_ein
name: Manuell einschalten
Automationen ertellen
Im folgenden führe ich dich jetzt Schrittweise durch alle Prozesse, wie ich mit der InverPEARL meine PV-Überschuss Automation in HomeAssistant realisiert habe (Stand 05/2025)
Schritt 1: Helfer erstellen
Für die Automatisierung der PV-gesteuerten Pool-Wärmepumpe habe ich folgende Helfer manuell in der Home Assistant Oberfläche unter Einstellungen → Geräte & Dienste → Helfer erstellt.
HomeAssistant: InverPower Ultra Helfer
Entität | Typ | Funktion |
---|---|---|
input_boolean.poolwp_manuell_ein | Schalter | Manuelle Einschaltung der WP – überschreibt alle anderen Bedingungen |
input_boolean.poolwp_pv_logik_aktivieren | Schalter | Aktiviert oder deaktiviert die gesamte PV-Automatik |
Automation: PoolWP: PV-Überschuss An/Aus
Diese Automation hat das Ziel, die Wärmepumpe automatisch einzuschalten, sobald bestimmte Energiebedingungen erfüllt sind – und sie auszuschalten, wenn diese nicht mehr gelten.
Die Wärmepumpe wird aktiviert, wenn:
- Die PV-Automatik aktiv ist (
PV Logik aktivieren
) - Keine manuelle Aktivierung aktiv ist (
Manuell einschalten
= aus) - Der PV-Überschuss seit mindestens 1 Minute stabil über 1500 W liegt
- Die Batterie vollständig geladen ist (über 99 %)
Sind diese Bedingungen erfüllt, wird die Wärmepumpe auf heat_cool
gestellt. Nach dem Einschalten wird eine Zwangslaufzeit von 30 Minuten eingehalten – auch wenn neue Trigger auftreten.
Diese Sperre schützt die Technik und verhindert ein häufiges Ein-/Ausschalten.
Wenn eine der Bedingungen nicht erfüllt ist, wird die Wärmepumpe ausgeschaltet (hvac_mode: off
)
YAML: PV-Ueberschuss aufklappen
alias: "PoolWP: PV-Ueberschuss An/Aus"
description: >-
Setzt den Status 'input_boolean.poolwp_helfer_pv_ueberschuss' auf AN, wenn
alle Einschaltbedingungen erfüllt sind – sonst auf AUS.
triggers:
- entity_id:
- sensor.solax_grid_import
- sensor.solax_grid_export
trigger: state
conditions:
- condition: state
entity_id: input_boolean.poolwp_pv_logik_aktivieren
state: "on"
- condition: state
entity_id: input_boolean.poolwp_manuell_ein
state: "off"
actions:
- choose:
- conditions:
- condition: numeric_state
entity_id: sensor.solax_grid_export
above: 1500
- condition: numeric_state
entity_id: sensor.solax_battery_capacity
above: 99
sequence:
- if:
- condition: state
entity_id: climate.inverpearl
state: "off"
then:
- target:
entity_id: climate.inverpearl
data:
hvac_mode: heat_cool
action: climate.set_hvac_mode
- data:
message: WP eingeschaltet + 30 Minuten Wartezeit aktiv
action: notify.mobile_app_thomas_iphone_15_m
- delay:
minutes: 30
default:
- if:
- condition: state
entity_id: climate.inverpearl
state: heat_cool
then:
- target:
entity_id: climate.inverpearl
data:
hvac_mode: "off"
action: climate.set_hvac_mode
- data:
message: WP ausgeschaltet
action: notify.mobile_app_thomas_iphone_15_m
mode: single
Automation: Manuelle Steuerung EIN & AUS
Für die manuelle Steuerung der Wärmepumpe verwende ich zwei getrennte Automationen: eine für das Einschalten, eine für das Ausschalten.
Das macht die Logik in Home Assistant übersichtlich und eindeutig, besonders beim späteren Nachvollziehen im UI.
📥 So legst du beide Automationen an:
Einstellungen → Automatisierungen & Szenen → Automatisierungen
➕ „Automation erstellen“ → ⋮ „In YAML bearbeiten“
🔛 „PoolWP: Manuell Ein“
Diese Automation wird ausgelöst, wenn der Schalter Manuell einschalten aktiviert wird (on).
Sie:
- Deaktiviert automatisch die PV-Automatik (PV Logik aktivieren)
- Schaltet die Wärmepumpe ein (hvac_mode: heat_cool)
So wird sichergestellt, dass der manuelle Modus nicht gleichzeitig mit der Automatik läuft.
🔴 „PoolWP: Manuell Aus“
Wird der Schalter Manuell einschalten wieder deaktiviert (off),
dann:
- Wird die Wärmepumpe ausgeschaltet (hvac_mode: off)
Diese Trennung in zwei einfache Automationen vermeidet Konflikte, ist leicht nachvollziehbar und lässt sich bei Bedarf bequem erweitern.
YAML: PoolWP: Manuell EIN
alias: "PoolWP: Manuell Ein"
description: ""
triggers:
- trigger: state
entity_id:
- input_boolean.poolwp_manuell_ein
from: "off"
to: "on"
conditions: []
actions:
- action: input_boolean.turn_off
metadata: {}
data: {}
target:
entity_id: input_boolean.poolwp_pv_logik_aktivieren
- device_id: 8c9b752e47f2cbee984032b311654ba3
domain: climate
entity_id: c113f5c488e80a500d04a3ba6ec31462
type: set_hvac_mode
hvac_mode: heat_cool
mode: single
YAML: PoolWP: Manuell AUS
alias: "PoolWP: Manuell Aus"
description: ""
triggers:
- trigger: state
entity_id:
- input_boolean.poolwp_manuell_ein
from: "on"
to: "off"
conditions: []
actions:
- device_id: 8c9b752e47f2cbee984032b311654ba3
domain: climate
entity_id: c113f5c488e80a500d04a3ba6ec31462
type: set_hvac_mode
hvac_mode: "off"
mode: single
PV-Anlage
Natürlich wird meine PV-Prüfung für dich und deine PV-Anlage angepasst werden müssen. Solltest du über HACS auch die Modbus-Lösung deiner QCells oder Solax Wechselrichters integriert haben, wird es gleich funktionieren.
Vielleicht dient dir aber mein ganzer Beitrag auch als Inspiration. Oder sogar als Kaufentscheidung. Denn ich möchte meine HomeAssistant Integration nicht missen. Ich suche mir sogar Hardware genau danach aus 😉
Kleiner Lesetipp: ↗ https://einfachhartmann.de/q-cells-erfahrungsbericht-harte-reise/
Gib deinen Kommentar ab
Du bist dran! Was ist deine Meinung dazu? Schreib es mir in die Kommentare.