-
Notifications
You must be signed in to change notification settings - Fork 303
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improved HMU config #407
Improved HMU config #407
Conversation
3c9710b
to
cf7a426
Compare
78c4193
to
b03fc73
Compare
completed with 2a3c77f |
@chrizzzp Do any of these registers below work for you? I'm trying to gauge if a HW-specific PR for our
|
Except the Fan2* values all do not work on my system (Arotherm split VWL 105/5 AS S2, hydraulic station VWL 127/5 IS). My heat pump has two fans. Some of these values might only apply if the heat generator works in stand-alone mode (no system regulator present, so they might not be generally wrong). |
@chrizzzp That‘s what I thought. Are you using jonesPD‘s version of @john30 Would it be possible to use conditions to check for the presence of a system regulator? Would be nice to enable certain definitions in the existing HMU configuration only for standalone systems. |
Well, I use a (local) fork with lots of edits concerning yet unidentified messages. But the functional part is very similar to jonesPD's version (some non-working definitions commented out). |
depends on how the presence can be detected |
each message carries its circuit, so e.g. in mqtt this would be the discriminator for multiple messages with the same name |
@john30 I was thinking about using the global Scan results to determine whether a system regulator is present on the bus. Edit: Played around a bit, but unfortunately got stuck... Is it even possible to use |
@john30 I went through the docs and do I understand correctly that e.g. Edit: |
@chrizzzp IMHO, it's probably better to aim for maximum compatibility with the generic HMU definition and only include messages supported by both uniTOWER and VWZ AI. More specific definitions should go into a separate configuration, meaning parts of e.g. fa74d0c likely need to be reworked. It’s a rather simple solution to get rid of most of these To sort out the rest, we’ll have to somehow detect when HMU is in standalone mode, i.e. no regulator is used. There’s actually an option (in the setup menu) to configure whether a system regulator is present. We just need to find the correct register and use it as a condition in the definition. |
@burmistrzak |
@chrizzzp Yes, under Installer Level > Setup assistant, is the option we need to find the register for! To make conditions work, we’ll have to gather some product numbers of different setups. Can you share yours?
|
To make it a bit more complicated: we've noticed earlier that different product IDs do not necessarily mean different product, but can also reflect different international versions of the same product. See here... |
@chrizzzp Well, at least we know where to find them. Manuals to the rescue! 😉 Btw. I‘m not entirely sure why we‘re reading values belonging to VWZ from HMU? It’s quite clear that e.g. VWZIO is the inside unit (in my case uniTOWER plus) housing the 3-way valve, immersion heater, etc... So what’s the deal with that? It it because the actual VWZ registers are unknown? |
I assume you aim to create product-specific https://github.com/eBUS/ebus.github.io/blob/main/en/vaillant/08.bai.csv |
Could you give an example which vwz value you read from the hmu? As far as I know (in my system) the hmu and vwz have the same PCBs (according to same spare part product number of PCB). So all read/write command can be targeted at both circuits - theoretically - they have the same registers. However, the setups can be different (e.g. connection of immersion heater, DCF sensor, water pump to the PCB...) in different products. Here are the registers I read from the vwz (respective hmu registers can be polled but do not deliver respective values and vice versa), the associated devices/sensors are in the vwz:
|
OK, just thought about it again. I discovered earlier that the vwz pushes some vwz data every 10 seconds to the hmu. So maybe they can then be polled from the hmu...? Check the
|
@chrizzzp If I can get away with just adding some |
# Total heating yields,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, | ||
*r,,,,,,B516,18,,,IGN:1,,,,,,,,,,,,,,,,,,,,, | ||
r,,YieldTotal,,,,,01,,,energy,,,,,,,,,,,,,,,,,,,,, | ||
# Total electric power consumption,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@pulquero Does YieldTotal
and all those yearly stats work for you? 👀
For others and myself, a lot of registers are seemingly still unsupported…
@chrizzzp I‘m not entirely sure what’s going on here. Both PCBs might be the same, but clearly perform different functions based on the loaded software and/or coding resistors.
AFAIK, external components are always connected to the inside VWZ unit.
Do all of them return valid values, i.e. no error? |
Well, depends what you mean with different functions. Of course, hmu-specific registers don't make sense to read from the wvz, but - generally- the vwz (VWL, to be precise) is also a heat generator (immersion heater) and therefore can deliver at least some energy/power/flow temp values as the hmu does. The RunData/RunStats registers are good examples of common function: RunStatsHcHours
Other registers read from vwz will return zero or '-' if the corresponding value from the hmu is e.g. specific for compressor (and vice versa).
I think so.
Yes, all of them return valid (non-zero, non-
Yes, I think this is correct. So what value do you get if you read the Fan2 registers on your system? If I try to read a temperature sensor which is not present in my system (but technically could be present) I also get a "valid" answer (usually -99°C corresponding to the response data |
Ah, I now see what you mean! Makes sense to use the same registers for similar things. 😊
Perfect!
Here’s what I get:
We should probably investigate the |
I agree. A few more were already discovered (currently under review to be included in jonesPD repo): I'm sure you know this one from the
But maybe there is a "high-precision" copy in the RunData range as well... |
@chrizzzp Would be amazing! I‘ll be logging what parameters my VR940 is periodically requesting, maybe something interesting comes up. 🤞 |
it is now with the new @conditionExt() as of [email protected] |
@john30 Excellent addition, thx! Edit: How would I negate |
negations are not possible at the moment (at all) |
This config in combination with john30/ebusd#1213 does not cause any issues for my setup.
Highlights: