evcc-io/templates/definition/charger/weishaupt-wpm.yaml
2026-04-06 08:13:48 +00:00

125 lines
3 KiB
YAML

template: weishaupt-wpm
deprecated: true
products:
- brand: Weishaupt
description:
generic: WPM (SG Ready)
group: heating
# requirements:
# evcc: ["sponsorship"]
params:
- name: modbus
choice: ["tcpip"]
- name: tempsource
type: choice
choice: ["warmwater", "buffer"]
render: |
type: sgready
getmode:
source: go
script: |
res := 2 // 0/0 Normal
switch {
case SG1 == 1 && SG2 == 0: res = 1 // 1/0 Frostschutz
case SG2 == 1: res = 3 // x/1 Forcierter Betrieb/Sofortige Ansteuerung
}
res
in:
- name: SG1
type: int
config:
source: modbus
{{- include "modbus" . | indent 6 }}
register:
address: 35101
type: input
encoding: uint16
- name: SG2
type: int
config:
source: modbus
{{- include "modbus" . | indent 6 }}
register:
address: 35102
type: input
encoding: uint16
setmode:
source: switch
switch:
- case: 2 # normal
set:
source: sequence
set:
- source: const
value: 0
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 45101 # 4001
type: writesingle
encoding: uint16
- source: const
value: 0
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 45102 # 4002
type: writesingle
encoding: uint16
- case: 3 # boost
set:
source: sequence
set:
- source: const
value: 1
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 45101
type: writesingle
encoding: uint16
- source: const
value: 0
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 45102
type: writesingle
encoding: uint16
- case: 1 # dimm
set:
source: sequence
set:
- source: const
value: 0
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 45101
type: writesingle
encoding: uint16
- source: const
value: 1
set:
source: modbus
{{- include "modbus" . | indent 10 }}
register:
address: 45102
type: writesingle
encoding: uint16
{{- if .tempsource }}
temp:
source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: {{ if eq .tempsource "warmwater" -}} 32102 {{ else }} 33104 {{- end }} # 32102 = WW; 33104 Vorlauf
type: input
encoding: int16
scale: 0.1
{{- end }}
{{ include "heatpumpswitch" . }}