RalfWinter / lambda-heatpump-modbus-tcp-HA

Home Assistant configuration.yaml additions to integrate Lambda heatpump
Apache License 2.0
30 stars 6 forks source link

New ModBus version from Lambda #15

Open bs0001 opened 2 weeks ago

bs0001 commented 2 weeks ago

Lambda has now a updated document of ModBus from 18.09.2024 (link)

Probably now some more features are available for remote functions of EUxxL and read of heatpump data. If possible it would be nice if you'd integrate them in the future.

bs0001 commented 1 week ago

Hi,

I did some checks about nomenklatures and values. I write it in German. Based on above ModBus infos some changes might be senseful:

HA = Home Assistant WP = Wärmepumpe

eu08l_Hp1_Energy_source_inlet_temperature (aktueller Wert in HA: 100,1°C) eine Dezimalstelle zu viel. Korrekt lt. wäre lt. WP 10,0°C --> Korrektur bei der Übertragung

eu08l_Hp1_Energy_source_outlet_temperature (aktueller Wert in HA: -3.276,8°C) Da kann ich aktuell nichts dazu sagen, da mir in der WP der Wert nicht angezeigt wird. Evtl. ist aber auch hier eine Dezimalstelle zu viel. Ggf. checken.

eu08l_hp1_request-type (aktueller Wert HA: 0) eu08l_hp1_request-type_txt (aktuell Wert HA: Nicht Verfügbar) unsere WP läuft gerade, "domestic hot water" müsste hier angezeigt werden. "domestic hot water" steht aber in Entität eu08l_hp1_operating_state_txt --> Korrektur der ModBus Zuordnung

eu08l_Hp1_Operating_State (aktueller Wert HA: 2) WP zeigt im WP-Modul folgendes an: Automatik / Brauchwasser / Regelbetrieb / Laufzeit

eu08l_hp1_operating_state_txt (aktueller Wert HA: domestic hot water) WP zeigt im WP-Modul folgendes an: Automatik / Brauchwasser / Regelbetrieb / Laufzeit --> Demnach müsste hier vermutlich "DHW" bzw. dessen deutsche Bezeichnung drinnen stehen

eu08l_boil1_operating_state_txt (aktueller Wert HA: prompt-dhw) --> Wäre evtl. schön, wenn die adäquaten deutschen Begriffe hier angezeigt werden

eu08l_Boil1_Error_Number (aktueller Wert HA: 0) --> Wäre evtl. im Zuge gleicher Nomenklatur sinnvoll, die Entität so zu benennen: eu08l_Boil1_Error_State

eu08l_Boil1_error_state_txt --> Ist aktuell nicht verfügbar. Wäre evtl. sinnvoll, sie aufzunehmen. Lt. WP müsste als Text "No Error" drinnen stehen. Evtl. generell Bezeichnungen in deutsch machen.

eu08l_Buff1_Error_Number (aktueller Wert HA: 0) --> Wäre evtl. im Zuge gleicher Nomenklatur sinnvoll, die Entität so zu benennen: eu08l_Buff1_Error_State

eu08l_Buff1_error_state_txt --> Ist aktuell nicht verfügbar. Wäre evtl. sinnvoll, sie aufzunehmen. Lt. WP müsste als Text "No Error" drinnen stehen. Evtl. generell Bezeichnungen in deutsch machen.

eu08l_Sol1_Error_Number (aktueller Wert HA: 0) --> Wäre evtl. im Zuge gleicher Nomenklatur sinnvoll, die Entität so zu benennen: eu08l_Sol1_Error_State

eu08l_Sol1_error_state_txt --> Ist aktuell nicht verfügbar. Wäre evtl. sinnvoll, sie aufzunehmen. Lt. WP müsste als Text "No Error" drinnen stehen. Evtl. generell Bezeichnungen in deutsch machen.

eu08l_Hc1_Error_Number (aktueller Wert HA: 0) --> Wäre evtl. im Zuge gleicher Nomenklatur sinnvoll, die Entität so zu benennen: eu08l_Hc1_Error_State

eu08l_Hc1_error_state_txt --> Ist aktuell nicht verfügbar. Wäre evtl. sinnvoll, sie aufzunehmen. Lt. WP müsste als Text "No Error" drinnen stehen. Evtl. generell Bezeichnungen in deutsch machen.

eu08l_EMgr_Error_Number (aktueller Wert HA: 0) --> Wäre evtl. im Zuge gleicher Nomenklatur sinnvoll, die Entität so zu benennen: eu08l_EMgr1_Error_State

eu08l_EMgr_error_state_txt --> Ist aktuell nicht verfügbar. Wäre evtl. sinnvoll, sie aufzunehmen. Lt. WP müsste als Text "No Error" drinnen stehen. Evtl. generell Bezeichnungen in deutsch machen.

It would be great if you can do the adjustments in upcoming days/weeks.

BR Bernd

RalfWinter commented 1 week ago

Let me comment on your points:

EU13L_Hp1_Energy_source_inlet_temperature: corrected, scale: 0.01 EU13L_Hp1_Energy_source_outlet_temperature: corrected, scale: 0.01 EU13L_Hp1_Request-Type_txt: changed all text conversions from "int" to "int(0)" in order to specify the default value when no update for the derived value has been received yet. This will fix all *_txt entities. All _Error_Number" entities: "Error Number" is the definition in Lambda's Modbus document for this value - no change German value names: this is the international version of HA-integration. Lambda has started to market their heatpumps in other countries than Germany and Austria (e.g. Italy and Poland). Therefore I leave this in English to let our Italian and Polish friends make use of this. Feel free to change your local copy of this yaml-file according to your needs.

If anybody knows how to maintain multiple languages in the YAML file I am happy to look into this.

bs0001 commented 1 week ago

Hi Ralf,

perfect, thanks a lot!

Meanwhile I'd probably match the English expressions with suitable German one.

With EU13L_Hp1_Request-Type_txt I currently have an issue. By showing the entity I got the following message: Diese Entität („sensor.eu08l_hp1_request_type_txt“) hat keine eindeutige ID, daher können die Einstellungen nicht über die UI verwaltet werden. Schaue in der [Dokumentation](https://www.home-assistant.io/faq/unique_id) nach für mehr Details.

I will first update your corrections and will see if the issue has been solved then.

Quite nice to get more and more familiar with the heatpump.

BR Bernd

bs0001 commented 1 week ago

One hint: At the end of the configuration file there's a missing "]". Correction to: {{ ['Off', 'Manual', 'Automatik', 'Auto-Heating', 'Auto-Cooling', 'Frost', 'Summer', 'Floor-dry'][states('sensor.eu13l_hc2_operating_mode')|int(0)] }}

The topic with the Request-Type now also works 👌

RalfWinter commented 1 week ago

At the end of the configuration file there's a missing "]".

Yepp, saw it, corrected in the source.

RalfWinter commented 1 week ago

With EU13L_Hp1_Request-Type_txt I currently have an issue. By showing the entity I got the following message: Diese Entität („sensor.eu08l_hp1_request_type_txt“) hat keine eindeutige ID, daher können die Einstellungen nicht über die UI verwaltet werden. Schaue in der [Dokumentation](https://www.home-assistant.io/faq/unique_id) nach für mehr Details.

I will first update your corrections and will see if the issue has been solved then.

Yes, Bernd, please first apply the changes. In my HA I can display the entity without error: grafik

bs0001 commented 1 week ago

The following topics are currently not available via ModBus, isn't it?

I'll collect some ideas and approvements and send it from time to time to Lambda for hopeful future integration.

RalfWinter commented 1 week ago

Well, I also miss the 5x05 Modbus values: Setpoint flow line temp. RW INT16 [0.1°C] Setpoint temperature flow line (min = 15.0°C; max = 65.0°C)

They worked initially but after a SW update only -300 is displayed.

bs0001 commented 1 week ago

yes, correct. Value is -300 and not shown. I will also put this infos in my message to Lambda. My Lamdba is still running since 09/2024. Therefore I have no older values in charts where I can see when the value wasn't available.

bs0001 commented 1 week ago

In the configuration-file there's a small misstake in line 540: - name: eu08l_Hc2_Romm_device_temperature

Correct will be: - name: eu08l_Hc2_Room_device_temperature

I changed this on my local version already.

RalfWinter commented 1 week ago

Fixed typo.