Weishaupt Heatpump integration via modbus

Schick mal ein Foto deiner Modbus Einstellung der Wärmepumpe und poste hier deine yaml.

Hey!

Hier die Einstellungen an der Wärmepumpe:

Aktuell habe ich das komplette Netz freigegeben, hatte aber auch schon die 192.168.100.20 (= HomeAssistant) eingetragen, ohne ein anderes Ergebnis.

Und hier die modbus.yaml:

- name: wpump
  type: tcp
  host: 192.168.100.230
  port: 502
  climates:
      - name: "WP_Warmwasser"
        address: 42103
        input_type: holding
        data_type: int16
        max_temp: 50
        min_temp: 15
        offset: 0
        precision: 1
        scale: 0.1
        target_temp_register: 42103
        temp_step: 1
        temperature_unit: C
  sensors:
#Warmwasser
    - name: WP_Warmwassersolltemperatur
      slave: 1
      address: 32101
      input_type: input
      unit_of_measurement: °C
      state_class: measurement
      scale: 0.1
      offset: 0
      precision: 1
      data_type: int16
      unique_id: wpump.wwsolltemp
    - name: WP_Warmwassertemperatur
      slave: 1
      address: 32102
      input_type: input
      unit_of_measurement: °C
      state_class: measurement
      scale: 0.1
      offset: 0
      precision: 1
      data_type: int16
      unique_id: wpump.wwtemp
#System
    - name: WP_Betrieb
      slave: 1
      address: 30006
      input_type: input
      scale: 1
      offset: 0
      precision: 0
      data_type: int16
      unique_id: wpump.betrieb
    - name: WP_Stoerungsfrei
      slave: 1
      address: 30005
      input_type: input
      scale: 1
      offset: 0
      precision: 0
      data_type: int16
    - name: WP_Außentemperatur
      slave: 1
      address: 30001
      input_type: input
      unit_of_measurement: °C
      state_class: measurement
      scale: 0.1
      offset: 0
      precision: 1
      data_type: int16
#Heizkreis
    - name: WP_Raumsolltemperatur
      slave: 1
      address: 31101
      input_type: input
      unit_of_measurement: °C
      state_class: measurement
      scale: 0.1
      offset: 0
      precision: 1
      data_type: int16
    - name: WP_Vorlaufsolltemperatur
      slave: 1
      address: 31104
      input_type: input
      unit_of_measurement: °C
      state_class: measurement
      scale: 0.1
      offset: 0
      precision: 1
      data_type: int16
    - name: WP_Vorlauftemperatur
      slave: 1
      address: 33104
      input_type: input
      unit_of_measurement: °C
      state_class: measurement
      scale: 0.1
      offset: 0
      precision: 1
      data_type: int16
    - name: WP_Rücklauftemperatur
      slave: 1
      address: 33105
      input_type: input
      unit_of_measurement: °C
      state_class: measurement
      scale: 0.1
      offset: 0
      precision: 1
      data_type: int16
    - name: WP_Leistungsanforderung
      slave: 1
      address: 33103
      input_type: input
      unit_of_measurement: '%'
      state_class: measurement
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WP_Heizkurve
      slave: 1
      address: 41108
      input_type: holding
      state_class: measurement
      scale: 0.01
      offset: 0
      precision: 2
      data_type: int16
# 2. WEZ
    - name: WP_E1_Status
      slave: 1
      address: 34104
      input_type: input
      scale: 1
      offset: 0
      precision: 0
      data_type: int16
    - name: WP_E2_Status
      slave: 1
      address: 34105
      input_type: input
      scale: 1
      offset: 0
      precision: 0
      data_type: int16
    - name: WP_E1_Stunden
      slave: 1
      address: 34106
      input_type: input
      unit_of_measurement: h
      state_class: measurement
      scale: 1
      offset: 0
      precision: 0
      data_type: int16
    - name: WP_E2_Stunden
      slave: 1
      address: 34107
      input_type: input
      unit_of_measurement: h
      state_class: measurement
      scale: 1
      offset: 0
      precision: 0
      data_type: int16
#Stats
    - name: WPST_Gesamt_Tag
      slave: 1
      address: 36101
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_Gesamt_Monat
      slave: 1
      address: 36103
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_Gesamt_Jahr
      slave: 1
      address: 36104
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_Heizen_Tag
      slave: 1
      address: 36201
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_Heizen_Monat
      slave: 1
      address: 36203
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_Heizen_Jahr
      slave: 1
      address: 36204
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_WW_Tag
      slave: 1
      address: 36301
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_WW_Monat
      slave: 1
      address: 36303
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16
    - name: WPST_WW_Jahr
      slave: 1
      address: 36304
      input_type: input
      unit_of_measurement: kWh
      state_class: measurement
      device_class: energy
      scale: 1
      offset: 0
      precision: 1
      data_type: int16

Die Sensoren wurden auch alle angelegt, sind aber alle nicht verfügbar.

Bis denn…

Bye, Markus

Die Modbus Einstellung der Wärmepumpe ist nicht das Netz.
Stelle dort Netzwerk 192.168.100.230 Maske 255.255.255.0

Ergänze bei climate noch Slave: 1, wie bei #Warmwasser
Die Muster Konfiguration am Anfang dieses Threads ist nicht korrekt. Das mit slave: 1 habe ich ein paar Beiträge weiter oben schonmal geschrieben.

Ps: wie kommt man auf die Weboberfläche der Wärmepumpe?

Hey!

Super! Das hat funktioniert! :slight_smile: Vielen lieben Dank. :wink: Hatte das mit der IP - Adresse in den Modbus - Einstellungen so verstanden, daß da die Adresse oder das Netz eingetragen wird, mit der auf die Wärmepumpe zugegriffen wird.

Das mit dem Webinterface kann man in den Einstellungen konfigurieren:

  • Anmelden am Technikermenü mit “21”
  • Einstellungen
  • Webserver
  • Zugriff → Ein

Aber wirklich viel machen oder auslesen kann man da nicht. Und sehr stabil scheint das ganze auch nicht zu sein: nach ein paar Minuten Klicken ging gar nichts mehr und die Wärmepumpe muss kurz stromlos gemacht werden.

Bis denn…

Bye, Markus

Seit zwei Tagen läuft bei mir eine BiBlock WBB20, welche ich dank der Informationen aus dem Thread per Modbus in HA einbinden konnte. Konfiguration der Wärmepumpe bei mir ist hierbei HK3 = Fußbodenheizung, HK4 = Heizkörper. Zudem ist in der Anlage eine Solartherme von Paradigma mit Wärmspeicher (AquaSolar) integriert.

Im Heizbetrieb meldet mir die Wärmepumpe im Register 30006 (WP_Betrieb) den Wert 36, welcher in der weiter oben verlinkten Modbustabelle noch nicht mir Namen versehen wurde bzw, fehlt. In dieser Betriebsart werden von der WBB20 nur die Pumpen eingeschaltet, die Heizenergie wird aus dem Wärmespeicher genommen (also ohne Aktivierung der Außeneinheit).

Kennt jemand die (Text-) Bezeichnung von diesem Betriebswert?

Update 2024-09-22:
Nach der Anzeige im WEM verbirgt sich hinter dem Wert “36” die Systembetriebsart “Vorlauf regenerativ”.

Hi friends, anyone could tell me how I can activate Modbus I only find the WEM Portal access :thinking:

Sorry hab meinen vorigen post gelöscht - daher noch einmal

Hallo maxrei,
Besteht die möglichkeit deinen code zu erhalten? Habe eine knv wp neu eingebaut und spiele mich gerade mit der steuerung via ha. Wäre sehr hilfreich - DANKE!!
Lg michi

Dear Tobian, I can’t get your integration working. I have the Modbus with static IP configured and included a modbus.yaml in the integration folder and included the template sensors in the configuration.yaml. But I receive the following error msg’s:


Any ideas? Thank you Rudi

Hello everyone,

does anyone know if the " Weishaupt Gateway WEM-Modbus" Module is required if I have no “Modbus TCP” option available in the option menu (only json)?

Thanks in advance! I couldn’t find any information regarding this topic.

Hi guys,

i tried to pack this into an integration.
Verry early state but wanted to share with you.
Im new to developing so please be nice to me ;).

Feel free to contribute, test, write bug reports or feature requests.


This is how it looks after entering the IP.

More values and features to come!

Greetings,

Markus

4 Likes

Is it possible, that the following “Register” is read only?
Can someone confirm that?

Anforderung Typ
0 = AUS
1 = Witterungsgeführt
2 = Konstant
41 102
Holding R/W

Hello schrefu,
I have the same problem. Do you have a solution?
Thank you Sebastian

Remove the “count: 1” lines

1 Like

Thanks for your integration.
Today I installed you integration via HACS and it’s working, but I am missing “Systembetriebsart” under Wärmepumpe System. I cannot switch between the different Betriebsarten. Any idea how to solve this?

image

1 Like

Hi,
ich habe vor einiger Zeit mal die Störliste in ein template intergiert, dies kannst du ja übernehmen. Kann man in die Intergration auch direkt eine Benachrichtigung bei Störung implementieren?

Development of weishaupt_modbus integration is stopped but the the release date for the successor integration is unknown.

OStrama/weishaupt_modbus: This integration allows you to monitor and control your weishaupt heatpump via modbus. (github.com)

I have no idea how to contact the OStrama owner and ask for a first release date. Who knows OStrama?

That‘s me :slightly_smiling_face: Inspired from madOne‘s Weishaupt Modbus integration I tried to enhance it a bit and adapted it to my WBB12 heatpump. (And I’m suprised that he directs to my integration, so now I’ve the duty to drive it forward :wink:) And wrote my first Home Assistant integration and my first Python project…

Please feel free to test the integration. It‘s working in general. If there‘s something to correct or to enhance, please contact me

Next steps would be a config file to setup the modbus configuration and an entity that shows the current heat power.

Thank you for your response. I will install the integration tomorrow and check it with a Weishaupt WSB 8-A device.
Are you going to enable issues for the git project? This my preferred feedback workflow.

Yes, I enabled issues. Feel free to add bug reports ad feature requests.

(Please keep in mind: I do this as a hobby in my spare time, so please be patient if changes may take a little bit longer…)

Habs in die Integration eingebaut, teste es und werde es mit der nächsten Release freigeben…

Betrifft das eigentlich nur die Fehlermeldungen oder auch die Warnungen?