rg-engineering / ioBroker.ebus

reads data from ebusd
MIT License
14 stars 7 forks source link

How can i receive active write messages from ebusd in ioBroker? #383

Open SwissFanboy opened 1 day ago

SwissFanboy commented 1 day ago

Hi ebusd provides by default master-slave read messages on http://192.168.nnn.nn:8889/data. You have to use the query parameter write if you want to include write messages in addition to read (http://192.168.nnn.nn:8889/data/?write) How can I map this in the ioBroker ebus adapter?

Background: I have the Vaillant VR71 main extension module and use therefore the 26.vr_71.csv from John30. Now I receive without any problems data from the flow temperature sensor (S2) as well as from the allSTOR buffer cylinder system sensors (S5-S8) because these are master-slave read messages. In addition, 26.vr_71.csv also decodes master-master command message with which the heating pump and the 3-way mixer are controlled. Very interesting information that I would like to evaluate too.

Kind regards, Daniel

rg-engineering commented 17 hours ago

The adapter offers the possibility to actively query certain data points: grafik Doesn't that help?

From my point of view, the ebus works in such a way that a bus participant has to query a data point. The ebusd simply listens to which data is displayed on the bus and incorporates this into the data structure. So if there are data points that are not requested by any other bus participant, they do not appear on the bus. This is why you can have the adapter query values ​​via the ebusd.

As soon as the value appears on the bus, it is also displayed with the read command and transferred to the adapter data structure.

SwissFanboy commented 3 hours ago

Good morning,

Thank you very much for your support.

Yes - I know this TCP client command option. It is very useful because it is the only way to send commands (and receive “passive” information from the ebus). With the help of this query technology, I can read data from the hydraulic station (HMU) that I could otherwise only get if I call up options such as sensor/actuator test directly on the HMU user interface.

But I have another problem. It is only indirectly related to read/write TCP client commands.

By default, ebusd only provides Master-Slave and Broadcast messages in form of JSON on http path 192.168.nnn.nn:8889/data. If you now also want to receive the shorter Master-Master messages (write messages), you have to expand the path with the "?write" parameter (https://github.com/john30/ebusd/wiki/3.2.-HTTP-client). But in the ebusd ioBroker adapter there is no possibility to extend this path (http://192.168.nnn.nn:8889/data/?write). image

It would probably be easiest if I could insert the path by myself in the adapter: image What do you think about that?

Background: I use a Vaillant VR 71. You can connect units to this module that do not have eBUS access. In my case the temperature sensors of the allSTOR buffer tank as well as the circulation pump and the warm water mixer. The HMU now continually asks VR71 about the temperatures (Master-Slave read messages) and, if necessary, gives the command (Master-Master write message) to start the circulation pump at a certain speed and to open the hot water mixer to a certain degree. In order to get to this data, I now have to be able to receive this special write message.

Thank you for your patience and help. Regards, Daniel