This commit is contained in:
Daniel Schubert 2024-12-17 11:36:24 +01:00
parent c133bd5044
commit 9de8319db8
7 changed files with 359 additions and 0 deletions

View File

@ -0,0 +1,5 @@
Setup um eine Weishautp wärmepumpe per ModBus in Homeassistant einzubinden
Ein Thread dazu:
https://community.home-assistant.io/t/weishaupt-heatpump-integration-via-modbus/436823

BIN
WBB_WP_ModbusTCP.xlsx.ods Normal file

Binary file not shown.

View File

@ -0,0 +1,57 @@
# Loads default set of integrations. Do not remove.
default_config:
# Load frontend themes from the themes folder
frontend:
themes: !include_dir_merge_named themes
automation: !include automations.yaml
script: !include scripts.yaml
scene: !include scenes.yaml
modbus: !include weishaupt.yaml
template:
select:
- name: Systembetriebsart
unique_id: wpump_mode
state: "{{ states('sensor.wp_systembetriebsart_text') }}"
options: "{{ ['Automatik', 'Heizen', 'Kühlen', 'Sommer', 'Standby', '2. WEZ']}}"
select_option:
service: modbus.write_register
data:
hub: wpump
slave: 1
address: 40001
value: >
{% if option == "Automatik" %} 0
{% elif option == "Heizen" %} 1
{% elif option == "Kühlen" %} 2
{% elif option == "Sommer" %} 3
{% elif option == "Standby" %} 4
{% elif option == "2. WEZ" %} 5
{% endif %}
- name: Heizkreis Betriebsart
unique_id: wpump_hk_mode
state: "{{ states('sensor.wp_heizkreis_betriebsart_text') }}"
options: "{{ ['Automatik', 'Komfort', 'Normal', 'Absenk', 'Standby']}}"
select_option:
service: modbus.write_register
data:
hub: wpump
slave: 1
address: 41103
value: >
{% if option == "Automatik" %}
0
{% elif option == "Komfort" %}
1
{% elif option == "Normal" %}
2
{% elif option == "Absenk" %}
3
{% elif option == "Standby" %}
4
{% endif %}

View File

@ -0,0 +1,15 @@
- id: '1731416586384'
name: Neue Szene
entities:
select.heizkreis_betriebsart:
options:
- Automatik
- Komfort
- Normal
- Absenk
- Standby
friendly_name: Heizkreis Betriebsart
state: unknown
metadata:
select.heizkreis_betriebsart:
entity_only: true

View File

@ -0,0 +1,248 @@
#WW
- 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: total_increasing
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: total_increasing
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: total_increasing
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: total_increasing
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: total_increasing
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: total_increasing
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: total_increasing
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: total_increasing
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: total_increasing
device_class: energy
scale: 1
offset: 0
precision: 1
data_type: int16

View File

@ -0,0 +1,20 @@
- name: wpump
type: tcp
host: 192.168.1.7
port: 502
climates:
- name: "WP_Warmwasser"
#address: 42103
address: 32102
slave: 1
input_type: input
max_temp: 50
min_temp: 15
offset: 0
precision: 1
scale: 0.1
target_temp_register: 42103
temp_step: 1
temperature_unit: C
unique_id: 123-456-abc
sensors: !include sensors.yaml

View File

@ -0,0 +1,14 @@
version: "3"
services:
homeassisstant:
container_name: homeassistant
image: "ghcr.io/home-assistant/home-assistant:stable"
ports:
- 8123:8123
volumes:
- ./config:/config
- /etc/localtime:/etc/localtime:ro
- /run/dbus:/run/dbus:ro
restart: unless-stopped
privileged: true
network_mode: host