Suche

HomeAssistant: Poolsana InverPEARL

Pool Wärmepumpe InverPEARL in HomeAssistant einbinden #TomTuT

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: 

  1. 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. 
  2. 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: 

↗ https://smartapp.tuya.com/tuyasmart

Werkseinstellungen

Die InverPEARL lässt sich am Display auf Werkseinstellungen zurücksetzen. Besteht dabei eine Internetverbindung, wird diese auch hier aus TUYA gelöscht und ein Hinweis in der App angezeigt. Auf dem Display selbst ist das nicht zu erkennen. Hier mehr Informationen dazu: InverPEARL Werksreset –>

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. 

AttributWert
hvac_modesoff, heat_cool
min_temp5
max_temp43
target_temp_step1
current_temperature22
temperature28
friendly_nameInverPEARL
supported_features385

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:

				
					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)

Vorausetzung: Tuya Developer Platform

Damit ich auch ohne Cloud alles im Netzwerk nutzen kann, habe ich die Local Tuya HACS Integration installiert. Das kann ich dir empfehlen. 

https://platform.tuya.com/cloud/basic ↗

Schritt 0: inverPEARL Berechtigung

Du musst das „Device“ unter <Cloud> <Project-Management> <Devices> berechtigen. 

In der Tabelle ist es die Spalte <Device Persmission>. Aktiviere hier mit <Change> die Erweiterten Rechte auf: Controllable.

Dann kann du danach auf <Debug Device> klicken.

Jetzt siehst du alle „Mode“ die du mit der InverPEARL steuern kannst. Nur so, kannst du später auch effektiv wirklich jeden Betriebsmodus konfigurieren. 

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: Pool-Wärmepumpe Helfer

EntitätTypFunktion
input_boolean.poolwp_manuell_einSchalterManuelle Einschaltung der WP – überschreibt alle anderen Bedingungen
input_boolean.poolwp_pv_logik_aktivierenSchalterAktiviert 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 2499 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)

				
					alias: "PoolWP: PV-Ueberschuss An/Aus"
description: >
  Schaltet die InverPEARL bei PV-Überschuss automatisch ein (Powerful Heat, 29
  °C) und aktiviert die Poolpumpe auf Vollgas (Shelly N3). Bei fehlendem
  PV-Überschuss wird auf Sparbetrieb (Shelly N2) umgeschaltet.
triggers:
  - entity_id:
      - sensor.solax_grid_import
      - sensor.solax_grid_export
      - sensor.solax_house_load
    trigger: state
  - trigger: time_pattern
    minutes: "1"
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: 2499
          - condition: numeric_state
            entity_id: sensor.solax_battery_capacity
            above: 99
        sequence:
          - action: localtuya.set_dp
            data:
              device_id: bf6aabe127bec3766b0muo
              dp: 1
              value: true
          - action: localtuya.set_dp
            data:
              device_id: bf6aabe127bec3766b0muo
              dp: 2
              value: 29
          - action: localtuya.set_dp
            data:
              device_id: bf6aabe127bec3766b0muo
              dp: 4
              value: powerful_h
          - action: switch.turn_on
            target:
              entity_id: switch.shelly_pumpe_n3
          - action: notify.mobile_app_thomas_iphone_15_m
            data:
              message: >-
                PV-Überschuss erkannt → WP EIN (Powerful Heat, 29°C) + Pumpe N3
                aktiv
          - delay:
              minutes: 30
    default:
      - condition: or
        conditions:
          - condition: state
            entity_id: sensor.solax_grid_export
            state: "0"
          - condition: numeric_state
            entity_id: sensor.solax_grid_export
            below: 1
      - action: localtuya.set_dp
        data:
          device_id: bf6aabe127bec3766b0muo
          dp: 1
          value: false
      - action: switch.turn_on
        target:
          entity_id: switch.shelly_pumpe_n2
      - action: notify.mobile_app_thomas_iphone_15_m
        data:
          message: Kein PV-Überschuss → WP AUS + Pumpe N2 aktiv
      - delay:
          minutes: 30
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.

				
					alias: "PoolWP: Manuell Ein"
description: >
  Aktiviert die Wärmepumpe manuell (Powerful Heat, 29 °C)  und schaltet die
  Poolpumpe N3 (Vollgas) ein. Deaktiviert gleichzeitig die PV-Automatik.
triggers:
  - entity_id: input_boolean.poolwp_manuell_ein
    from: "off"
    to: "on"
    trigger: state
conditions: []
actions:
  - action: input_boolean.turn_off
    target:
      entity_id: input_boolean.poolwp_pv_logik_aktivieren
    data: {}
  - action: localtuya.set_dp
    data:
      device_id: bf6aabe127bec3766b0muo
      dp: 1
      value: true
  - action: localtuya.set_dp
    data:
      device_id: bf6aabe127bec3766b0muo
      dp: 2
      value: 28
  - action: localtuya.set_dp
    data:
      device_id: bf6aabe127bec3766b0muo
      dp: 4
      value: powerful_h
  - action: switch.turn_on
    target:
      entity_id: switch.shelly_pumpe_n3
  - action: notify.mobile_app_thomas_iphone_15_m
    data:
      message: >-
        Manuellmodus aktiviert → WP EIN (Powerful Heat, 29 °C) + Pumpe N3
        Vollgas
mode: single

				
			
				
					alias: "PoolWP: Manuell Aus"
description: >
  Beendet den manuellen Betrieb: Wärmepumpe aus,  Poolpumpe N2 (Sparbetrieb) ein
  und PV-Automatik wieder aktivieren.
triggers:
  - entity_id: input_boolean.poolwp_manuell_ein
    from: "on"
    to: "off"
    trigger: state
conditions: []
actions:
  - action: localtuya.set_dp
    data:
      device_id: bf6aabe127bec3766b0muo
      dp: 1
      value: false
  - action: switch.turn_on
    target:
      entity_id: switch.shelly_pumpe_n2
  - action: notify.mobile_app_thomas_iphone_15_m
    data:
      message: Manuellmodus beendet → WP AUS + Pumpe N2 aktiv + PV-Logik reaktiviert
mode: single

				
			

BADUNetlink mit Shelly

In meinen Automationen ist auch die BADUNetLink Ablösung drin. Hier findest du wie ich das gemacht habe. 

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/ 

InverPEARL kaufen

Gib deinen Kommentar ab

Du bist dran! Was ist deine Meinung dazu? Schreib es mir in die Kommentare. 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Suche

Jetzt teilen auf:

Passende Beiträge: