nigl / homeassistant_eta_integration

Integration of ETA (Heating) sensors to home assistant
MIT License
24 stars 8 forks source link

A few user questions #10

Open Hummelchen01 opened 10 months ago

Hummelchen01 commented 10 months ago

Hello,

I recently received an ETA wood boiler and integrated it into the Home Assistant. In general, I'm completely thrilled with this. Unfortunately I don't have the results I wanted

1.) I have imported interface entities into the HA (361 pieces) I have temperatures, valve positions, should. actual values and can read them. (All analog values). But I don't see any pump on/off switches, buttons, etc. so no digital values. What am I doing wrong? I am currently reading these values using Modbus, but this is not satisfactory either.

2.) Can the update time be set lower?

3.) If the digital values would work, how can I describe them? Example: heating group on off, reduced, normal, time program...

Thank you for your time.

Attached a log-file and a picture from the integration.

home-assistant_eta_2023-10-17T15-46-43.200Z.log Screenshot 2023-10-17 173104

N1Dy commented 10 months ago

Hello @Hummelchen01 ,

I started to use this great custom integration two days ago. I'm not a professional programmer but I look into you questions:

  1. I looked in the sensor.py and it looks like there is only code to get data from the eta heater. The post logic is missing in the code.

  2. I guess you search for the scan interval in. default with one minute is fine I guess. What did you need to know so fast from the machine?

    /config/custom_components/eta/sensor.py

image

    • due to 1.

Do you really want to track all entities? I test around which one are useful and so far I miss an status entity for the different groups like "Kessel" is in operation or something...

Have a nice weekend!

Hummelchen01 commented 10 months ago

Hello @Hummelchen01 ,

I started to use this great custom integration two days ago. I'm not a professional programmer but I look into you questions:

1. I looked in the sensor.py and it looks like there is only code to get data from the eta heater. The post logic is missing in the code.

2. I guess you search for the scan interval in. default with one minute is fine I guess. What did you need to know so fast from the machine?

/config/custom_components/eta/sensor.py

image

3. * due to 1.

Do you really want to track all entities? I test around which one are useful and so far I miss an status entity for the different groups like "Kessel" is in operation or something...

Have a nice weekend!

Thank you for your execution.

I've had the ETA heating for a month and I'm looking for the best solution to integrate ETA data points into the Home Assistant. I already have a very large HA system with lights, video, electric window, blinds, photovoltaics and much more.

You're right, I don't need all the data points, but I have integrated them all so that I can then implement my ideas.

I currently have all digital data points (pumps, states, etc.) integrated via Modbus w/r, but I'm not happy about it yet. The update time is 1 minute for valve positions and temperatures. sufficient. I I currently have pumps and states via Modbus with 15 seconds and this is OK.

You can see the heating part via https://arzberger.work/

username: eta password: eta

I also wish you a nice weekend

Hummelchen01 commented 10 months ago

Thank you for your execution.

I've had the ETA heating for a month and I'm looking for the best solution to integrate ETA data points into the Home Assistant. I already have a very large HA system with lights, video, electric window, blinds, photovoltaics and much more.

You're right, I don't need all the data points, but I have integrated them all so that I can then implement my ideas.

I currently have all digital data points (pumps, states, etc.) integrated via Modbus w/r, but I'm not happy about it yet. The update time is 1 minute for valve positions and temperatures. sufficient. I I currently have pumps and states via Modbus with 15 seconds and this is OK.

You can see the heating part via https://arzberger.work/

username: eta password: eta

I also wish you a nice weekend

Tidone commented 10 months ago

Hi,

I'm also currently working on integrating the ETA heating into Home Assistant, and I'm currently working on expanding this integration to suppport reading and writing the switches (central on/off, water on/off, etc.).

I'll also try to implement the missing sensors (status of the boiler, etc.) and the alarm states, but I will have to look into the HA sensor entities a bit more to check which sensor types support displaying texts.

It is theoretically also possible to set the setpoints for the boiler and heating via a HA component, but I won't implement that because I don't need it. (Why would you want to set the boiler temperature regularly anyway?)

I will either open a pull request for this repository, or fork my changes into my own one. I will inform you here when my changes are ready.

Hummelchen01 commented 10 months ago

Hello Tidone,

Please look in the attached file how I have solved the problem with the status-texts. Iread from Modbus a number and the i convert in a readable text.

ETA Statetexts.txt

I would be grateful for any information about the expansion of this ingenious integration....

Tidone commented 10 months ago

Hi,

I think the ETA terminal already converts the Modbus states to readable texts, because when I read the status of the boiler (Kessel) I get "Bereit" or "Heizen", and not just the state number (I also get the state number, but it is different from yours. "Bereit" is 2012 for example, and not 4001).

I already have most of the features implemented, including friendly names for the entities ;-). Now I just want to check how I can display the potential error messages in a nice way. Maybe I will just add an error sensor which displays if there is any error, instead of displaying all errors in a list of text.

I think I will post a link to my changes early next week.

nigl commented 10 months ago

Sorry, I was busy the last two weeks. As @N1Dy stated correctly, so far only read logic is implemented.

@Tidone Thanky you for your work. A PR would be nice. I can support you, if you need help :-)

Tidone commented 10 months ago

Hi, I finished implementing my changes: repo Some general info:

@nigl I don't know if a PR is appropriate, because I had to rewrite/refactor a lot of your functions. You can look at the changes in my repo and if you still want me to open a PR, please let me know.

parkflyer commented 10 months ago

Hi tidone! Thank you very much for yor work, I was looking forward to finally get the status texts of my ETA unit! Alas, I have a BE-P1 touch unit which cannot be upgraded to a firmware which supports API v1.2. Is there any possibility to adapt your integration to not use the user/varinfo calls (and not detect and support writable sensors, which would be OK for me) if API version is <1.2? Cheers, Ewald

Tidone commented 10 months ago

Hi @parkflyer,

Yes, that is possible, but a bit complicated because I also use the user/varinfo calls to query which endpoints show status messages at all. If you don't mind that the sensor selection dialog will also show many useless entries (type of temperature sensor, etc.), I can implement that, I think it should be ready at the end of the week or early next week.

Tidone commented 10 months ago

@parkflyer,

Could you please call http://<host>:8080/user/menu (replace the host with the ip address of your eta terminal) and post the output in a new issue on my repo?

I noticed that the endpoint addresses of the on/off switches all end in the same number on my unit. If they end in the same number on your unit, I could add a workaround for API version v1.1 to at least show these switches.

parkflyer commented 10 months ago

@Tidone: First thank you very much for your support - first class! As requested I have opened an issue and posted the result of the /user/menu output on my V1 API. Looking forward to test your changes!

BTW, I can get the status text (e.g. "Bereit") of my Kessel by requesting /user/var/40/10021/0/0/12000, which delivers

<eta version="1.0">
<value uri="/user/var/40/10021/0/0/12000" strValue="Bereit" unit="" decPlaces="0" scaleFactor="1" advTextOffset="2000">2012</value>
</eta>

but this item is not selectable with nigl's integration. I think nigl's configuration is filtering on items of type float and this is text, so it's not showing up.

Thank you again, Ewald

Tidone commented 10 months ago

@parkflyer Thanks! I will see what I can do.

Yes, nigl's integration filters entities by known units (%, W, s, °C, m², bar, ...) (see here).

I changed this and put all entities without units, such as the status texts, in a seperate category. That way the user can add these too.

Btw, I also read the current values of all sensors and show them when you add/configure the integration. That way you can immediately see which sensors are important.

greentux commented 10 months ago

I am also interested in "writing" (switch) support. And unfortunately I am also on API 1.1. It will cost around 1800 Euros, to update the touchterminal. I had to changed the whole steel-burning-houding after 12 years. So I have no money left for the touch :) I wrote an implementation for smarthome-ng https://github.com/smarthomeNG/plugins/tree/master/eta_pu Perhaps useful, perhaps not.

Tidone commented 10 months ago

Hi @greentux,

I just updated my fork of the integration to also support API v1.1.

Some sensors/switches may have the wrong category, because I can't use the varinfo endpoint to determine the type of the entities and filter writable ones.

But still, most float sensors, status sensors and on/off switches should work without any problems.

parkflyer commented 9 months ago

Here my new dashboard based on nigl’s work and Tidone‘s extension. The graphics is based on herry‘s work in the ioBroker forum. F5BA4C95-4A01-4E82-8F78-AA86E1EC4F2F

threadstone83 commented 9 months ago

@Hummelchen01 this has nothing to do with your problem, but I would be very interested to know how you managed to have several entries in the "Integrationseinträge". I only have "ETA at 192.168.178.33".

Hummelchen01 commented 9 months ago

@Hummelchen01 this has nothing to do with your problem, but I would be very interested to know how you managed to have several entries in the "Integrationseinträge". I only have "ETA at 192.168.178.33".

Hummelchen01 commented 9 months ago

@threadstone what you are referring was the ETA integration of "nigl" (https://github.com/nigl/homeassistant_eta_integration) here it was possible to generate several integration entries.

Based on my post, “Tidone” has addressed these problems and taken over the integration and made improvements. (https://github.com/Tidone/homeassistant_eta_integration) I am now using this because a lot of new requirements are being implemented here and "Tidone" are continuing to work on it very diligently. This means that only one integration group is possible, but that's not very annoying for me.

Greetings from Carinthia/Austria

threadstone83 commented 9 months ago

@Hummelchen01 thank you for your fast feedback. I will have a look to the other integration. But I think I also will move to it. By the way: I use the integration of nigl and only have one integration entry.

Greetings from Franconia/Germany ;-)