then I seem to be the lucky one for whom sungrow and Weishaupt work.
As I understand it, some changes have been made to the Modbus transmission in the new versions, as a result of which the Weishaupt integration no longer works! Does anyone have any idea how or where to contact the developers to find a solution? Thank you
thank you Andi1234, I tried the new Version, unfortunately the same problems
Thank you, may we ask how he solved the issue?
I have the same NWPM module with 502 port open, but no data out.
Thanks once more.
Nice ! well done -
@Adrewyew - this is exactly how I implemented my “SG ready” - with a home assistant automation I increase the WW temperature +C when there is excess sun capacity. Every two weeks I also do set it to 60 Celsius if I have extra energy to kill of legionella.
Works very nice - without any HW wiring needed
Has anyone installed the new version 2024.5.0 and checked whether it solves the problem?
I have tested version 2024.5.0. Unfortunately, as with the other versions, all data is displayed for approx. 5-10 seconds after the start, then it disappears.
currently i updated my Microsoft Hyper-V testsystem to 2024.5.1 modbus is still working.
Here´s the solution
copy your yaml to my MS Hyper-V 2024.5.1 testsystem, your yaml is not working.
your “climate:” is not working, remove it and try again - see below. I thinks it´s not allowed to use the same address for current temp and target temp.
I fixed the code - see below. The issue was that slave: 1 was missing at the climate
after a change you need to restart HA, only reload modbus is not working.
your welcome
- name: wpump
type: tcp
host: 192.168.1.232
port: 502
climates:
- name: "WP_Warmwasser"
slave: 1
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
- name: "WP_WarmwasserPush"
slave: 1
address: 42102
input_type: holding
scale: 1
offset: 0
precision: 0
data_type: int16
#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_Fehlercode
slave: 1
address: 30003
input_type: input
scale: 1
offset: 0
precision: 0
data_type: int16
- name: WP_warnungscode
slave: 1
address: 30004
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
#Waermepumpe
- 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_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
#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_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_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_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_Kuehlen_Tag
slave: 1
address: 36401
input_type: input
unit_of_measurement: kWh
state_class: measurement
device_class: energy
scale: 1
offset: 0
precision: 1
data_type: int16
- name: WPST_Kuehlen_Monat
slave: 1
address: 36403
input_type: input
unit_of_measurement: kWh
state_class: measurement
device_class: energy
scale: 1
offset: 0
precision: 1
data_type: int16
- name: WPST_Elektrisch_Tag
slave: 1
address: 36701
input_type: input
unit_of_measurement: kWh
state_class: measurement
device_class: energy
scale: 1
offset: 0
precision: 1
data_type: int16
- name: WPST_Elektrisch_Monat
slave: 1
address: 36703
input_type: input
unit_of_measurement: kWh
state_class: measurement
device_class: energy
scale: 1
offset: 0
precision: 1
data_type: int16
Unfortunately, it doesn’t work with the 2024.5.1 update either. The information is displayed for approx. 10 seconds, after which unavailable appears.
english below…
hat von euch schonmal jemand darüber nachgedacht, dass man bei SG ready die Wärmepumpe auf 2. WEZ (Heizstab) umschaltet?
Pro: Heizstab zu nutzen und nicht den Verdichter anzuschmeißen und somit die Taktungen zu reduzieren.
Contra: Der Strompreis von ~0,35 €/kWh im vergleich zur Einspeisevergütung 0,086€/kWh → Faktor 4: das kann aber die Wärmepumpe im besser Ist glaube ich der falsche Ansatz
Neuer Ansatz (Beispiel):
3500 kWh WW → 3500 kWh Strom bei 2. WEZ → ~640 kWh Strom bei Wärmepumpe
delta: 2860 kWh * 0,086 €/kWh = 246 € Einspeisevergütung, da mir durch die Lappen gehen, wenn ich in der autarken Zeit im Jahr nur mit 2. WEZ heize.
Ist der Ansatz korrekt?
Have any of you ever thought about switching the heat pump to the 2nd heat exchanger (heating element) with SG ready?
Pro: Using the heating element and not starting the compressor and thus reducing the compressor cycles.
Contra: The electricity price of ~0.35 €/kWh compared to the feed-in tariff of 0.086€/kWh → Factor 4: but the heat pump can do better I think this is the wrong approach
New approach (example):
3500 kWh WW → 3500 kWh electricity with 2nd WEZ–> ~640 kWh electricity with heat pump
delta: 2860 kWh * 0.086 €/kWh = 246 € feed-in tariff, as I will miss out if I only heat with 2. WEZ during the self-sufficient period of the year.
Is this approach correct?
Why would you do this ? the heat pump is 4 times more efficient - just to save 300 compressor starts in a year ? I think this is not a good tradeoff. If you want to save compressor starts increase your hot water temperature when there is enough sun.
With circulation switched off I can then have hot water for 3 days in a row from the heat pump. I also reduced my compressor starts but leveraged the efficiency of the heat pump.
Hi all, just to let you know - I installed Core 2024.5.3 a few days ago and it seem to be stable and all modbus parameters stay available. Wishing you happy updating.
Hi @MarkusLacht,
i also try to write register 35101
for activating SG Ready 1.
But i always get illegal data adress. As i unterstand 35101
is only a input register, no output. Therefore it won’t be usable for writing to it.
But what about register 45101
? I’ve tried it, writing works without error, but value didn’t change. Anyone suceeding enabling SG Ready over Modbus TCP?
I have exactly the same problem does anyone know if a problem report has been raised?
Hey!
I´ve got a little trouble with this integration via modbus… We´ve got a Biblock12 since a few weeks and I am not able to integrate it in my HomeAssistant. The heatpump is integrated in my network, I can access the Webinterface and it sends data to the WEM Portal. I´ve configured the Biblock for modbus and I´ve tried only the client IP of my HomeAssistant device, and also the hole network. It seems that the modbus access is enabled, but my HA don´t get data and only creates a error message:
Logger: homeassistant.components.modbus.modbus
Quelle: components/modbus/modbus.py:331
Integration: Modbus (Dokumentation, Probleme)
Erstmals aufgetreten: 1. Juni 2024 um 15:59:43 (19 Vorkommnisse)
Zuletzt protokolliert: 11:41:34
Pymodbus: wpump: Error: device: 0 address: 42103 → Modbus Error: [Input/Output] ERROR: No response received after 3 retries
When anyone got an idea I would be glad to hear!
Greetings,
Markus