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