add code
This commit is contained in:
parent
c133bd5044
commit
9de8319db8
@ -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
BIN
WBB_WP_ModbusTCP.xlsx.ods
Normal file
Binary file not shown.
57
homeassistant/config/configuration.yaml
Normal file
57
homeassistant/config/configuration.yaml
Normal 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 %}
|
15
homeassistant/config/scenes.yaml
Normal file
15
homeassistant/config/scenes.yaml
Normal 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
|
248
homeassistant/config/sensors.yaml
Normal file
248
homeassistant/config/sensors.yaml
Normal 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
|
20
homeassistant/config/weishaupt.yaml
Normal file
20
homeassistant/config/weishaupt.yaml
Normal 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
|
14
homeassistant/docker-compose.yaml
Normal file
14
homeassistant/docker-compose.yaml
Normal 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
|
Loading…
Reference in New Issue
Block a user