Add support for 720-based regulators#564
Conversation
Co-authored-by: Samuel Cabrero <samuel@orica.es>
I believe that when we talk to the regulator on ebus, we actually talk to the "Radio receiver unit". If you look at the screen of the regulator you see the following ebus components: So the BASV2, SW=0507 is actually presented on the bus by the Radio receiver unit. I also believe that it has some sort of register windows to see whatever is hiding behind it (VRC720f/2, VR92f), etc. And I am actively digging into this. I want to extract for each slot of the radio unit the list of SN, PN, ID, HW, MF, etc. This actually might explain why some devices show up twice on the bus (for example SensoNET and NETX3 gateways). |
|
@d3vi1 Yeah, we're indeed talking to the wireless base station and not to the regulator unit on the wall. But keep digging! At this point, it might be easier to just dump the entire firmware from one of these things. 😊 |
|
@chrizzzp I think we can use |
If we consider reliability of the system control it make no sense to replace physical bus with radio channel which is not so reliable. Just consider what happens if radio communication is interrupted. System just hangs without the controller. One of the possibilities is that wireless base station working as "controller without display" and wireless part is just external display with the controls. |
I know at least two working options: First one is to scan the bus for devices with VR_92 id (suitable for wired controller setups)
|
@stadid Hmm, you mean Edit: We don't have nine zones defined yet... 😅 You sure about that? |
Yes, it's the register responsible for zone mapping.
OK. I think I can help you )))) Go to https://github.com/stadid/webcontrol Into the releases section download any Webcontrol update package zip file (for example, the newest one: Webcontrol_CU_2026_01_31.zip) In this archive you'll find another archive named ebusd_config.zip It's not in sync with @jonesPD repository, as I specifically created it for Webcontrol project and it's not updated for a while, but You'll get a clue how to address additional Zones / Circuits. Of topic: |
|
@stadid Thank you! |
You are welcome)))
Not only hybrid, but also heaters cascade UPD: also I've seen working setups where some HC/Zones were just skipped (left inactive), while installers configured the system. |
|
@stadid According to docs, you need one FM5 and three FM3 to get these nine circuits. |
Sounds like a lot of work/testing (and who really wants to play with the hydraulic scheme?), but in principle yes, it should be feasible. |
I agree, kWh is the more adequate unit (but maybe should not be rounded). However, the actual values come in Wh, which makes sense only for a few minor energy consumptions (e.g. regulators, mixers...) and daily values (which are also available from the 'EnStat' values besides monthly and annual data, but have been left out in the PR because then we would have to generate an endless number of definitions, although @filippz has created a script for that).
Well, the 'EnStat' values come from a completely different address range (b516) than the 'PrEnergy' values (b524) and so far seem to be 'universal' for all devices, while the b524 energy values are not. E.g. for HP units the 'PrEnergyFuel' values do not exist (for obvious reasons), but the respective 'EnStat' values can always be read (just return 0 energy). So the b516 values could represent the 'original' energy data, while 'PrEnergy' values are selected 'mirrors'. That's why I suggested the 'EnStat' prefix to differentiate them from the b524 energy values. But I'm always happy to adjust nomenclature... |
As far as I know - it still not found.
@chrizzzp or FM5Config is reusable - depending on the modules connected to the system it could contain FM3 or FM5 config. I've checked manual for vRC720 but from it its unclear as only in one configuration this option becomes active (in the VRC720 simulator FM5 config option got replaced with the FM3 config option if you select 2 circuits/zones). Unfortunately I can't test it as I do not have appropriate system. |
@stadid Same here. |
|
Also, if anyone wants to do me a favor, open a PR for this branch and add the official Vaillant terminology/name (as seen on the simulator/regulator) for each register as a TypeSpec comment. 🫶 |
I only have FM5, no FM3. So, it's probably not The manual says you always need an FM5 to connect additional FM3(s) and there is no additional configuration for the FM3(s) documented. So |
Not currently found, but possibility of such register(s) is quite high. So why not the similar could exist for zones/circuits ? |
|
@stadid Would make sense... |
Well the entire address space probably not, but quite exhaustively leading to many 'unknown' registers as documented by @jonesPD: https://github.com/jonesPD/ebusd-configuration/blob/master/ebusd-2.1.x/en/vaillant/15.ctlv2.csv Some contain values that don't seem to change during operation but this is what you would expect from configuration settings... |
OK, I see what you mean. Two heating circuits seem to be the only case where you don't need an FM5 (and FM3 is sufficient). As soon as you add a solar circuit it will require a FM5... |
@chrizzzp That's my understanding as well. |
I do have a GeniaSet Split tower + FM3 / RED3 / VR70 expansion card driving two circuits / zones. Let me know what do you need. |
Probably not the right command. |
|
What regulator do you have? Could you run: Please try also: |
SRC 720f/2, identified as
I also have a SRC921 gateway that polls this register each 1 hour. The value 3 is reported as "moduleConfigurationVR71" by vaillant cloud API. E.g: https://github.com/signalkraft/myPyllant/blob/main/src/myPyllant/tests/data/heatpump_heat_curve/547b5314b17a38830125171aa35b04ad87ef2de6/system.json#L51 I tried to change my FM3 config from 5 to 1 in the regulator itself and the response was the same, so this register must be something else. Comparing the response to the FM5 one, the first byte might be the number of zones the system can handle. 02 in the case of FM3, 03 in the case of FM5, maybe 05 in the case of FM3+FM5. |


This PR is a superset of #482, including register definitions for the following regulator models:
15.72015.basv15.basv215.basv315.ctls215.ctlv215.ctlv315.bassIf you have one of the aforementioned devices, feel free to give this unified configuration a try and report back!
There're still a few unsupported devices at the moment, specifically:
15.ctlv*15.ctls*15.ctls315.bass215.bass3*might not exist..?
In case you own one of them, please comment below with your setup details!
I also have incorporated (hopefully) all the recent discoveries made by @stadid, @chrizzzp & @jonesPD. 🤝
A fork of the CDN repo with pre-compiled definitions is available in English and German.
Testing & Validation
devbranch (should be default)EBUSD_CONFIGPATHto<MOUNTPOINT>/ebus.github.io/dev/enEBUSD_MQTTVARto e.g.:filter-direction=r|u|^w,filter-circuit=^bas*$,filter-non-circuit=^hmu*$,filter-name=^*,filter-non-name=^Z2|^Z3|^Hc2|^Hc3(adjust to match your system)ebusdcontainer (or service).