I’m currently just using a very simple python script that pulls data from ebusd and posts to emoncms. Not currently using Home Assistant (have Loxone). I should probably set it up with cron or as a service, but currently it just has a wait and i run using nohup. Have two scripts actually:
One pulls heat/energy meter data from pasivliving hub + outside-temp/target flow temp from ebusd (this is for heatpump app)
The other one pulls all the more details ebusd info (compressor, integral etc etc) from ebusd which I then graph in emoncms and have been using to look at the before/after behaviour of the arotherm energy integral bug.
Until recently I used the same setup as @Zarch via cron & Home Assistant. I moved away from that since the proper logging would depend on Home Assistant so now I have Node-RED + ebusd running on an emonPi and everything gets sent to the local MQTT broker on there and distributed into emoncms. Nore-RED also does the ebus polling with some values being polled regularly all the time while others are only polled when the compressor is active. It’s also a bit of a mess but I don’t have to worry about losing data when I tinker with my HA config. Data from emoncms (including the ebus data) is polled now by HA using the emoncms sensor integration.
I just has a closer look at what I was using. I was using master from few months back and then I’d pulled in and overridden 08.hmu.csv from one of the open PR’s. It looks like the PR in question has now been merged in though, so I’ve just reverted to master and all looks great.
Have another go with master and let me know how you get on.
So that explains how you claimed previously it “worked automatically” — it did not, you’ve been using one of the PRs I helped craft
Glad to hear it’s working well … until jt got merged and something got screwed up.
(This is clearly fiddly, brittle stuff. It’s fine to just have your local copy that is guaranteed to never change once it’s working well for you: that removes the risk of upstream breakage!)
@Andre_K@dfeist So do you publish to the emon topic direct from node red or script so that EmonCMS creates the input? I have got tests doing that running, just need to put everything together in script (or use node red).
Thanks to all for all the pointers as to how to do this integration without HA, and to @wimleers for all the hard work on the csvs.
As @glyn.hudson suggested, perhaps we should add an easy to follow guide in the documentation?
For me it looks like this. I have flows for every ebus topic I’m interested in. As an example:
The initial node listens to the desired topic:
The function node extracts the value from the payload (slightly different for different measured parameters)
The MQTT out doe then sends it to the emon topic to be picked up by emoncms:
I then have polling flows with different intervals for different values I want to extract, here for example every 30s polling for integral, flow and return temp:
This just sends a regular /get to the topics that should be updated
Those are basically the building blocks I used. There are some more additional things like polling specific values more often when the compressor is active (based on my own power measurements using a Shelly) or updating the desired flow temperature as soon as the reported outside temperature changes.
I’d be happy to contribute to a wiki/howto document.
So yesterday evening I stopped the ebusd service and last nights run was much better.
I will observe over the next few days with ebusd off.
But it looks quite clear that the current ebusd/jones files is causing me some trouble with DHW.
Too much of a coincidence that the day i upgrade things go wrong and the day I turn it back off things go back to normal.
My only theory is that there’s too much polling from the ebusd to the Arotherm controller? Ie, it’s too busy now? Don’t know, just guessing.
The main difference in the merges of the csv you linked and the version I am using is that for many parameters a specific query command seems to be defined to actively read a parameter
This is my local version:
r,WaterThroughput,2B03FFFF,UIN,l/h,Current heating water flow rate (liter/hour),
vs what I found in the repo:
w,ReadDeliveryFlow,Read T.016,2B03FFFF,m,HEX:3,
r,DeliveryFlow,2B03FFFF,IGN:2,UIN,l/h,Current heating water flow rate (liter/hour),
Would this make a difference? I saw a number of those matching w/r lines and wondered what use they are given that for me I can query all those parameters without the specific w line in the csv.
I updated to latest version of ebusd yesterday evening and I also pulled the latest vesion of the JonesPD ebusd-configuration fork at the same time. I am still polling every 10 seconds but have not observed any issues so far.
My use of the ebusd does not include home assistant and I poll data either via i) ebusctl command ii) HTTP/JSON interface. Also, I only read, I am not currently writing anything.
I assume you physically disconnected the ebusd board? Try reconnecting the board, but disabling everything (home assistant, mqtt, polling scripts etc) and see if you have any issues? Then gradually renable things and see what the cause is…