-
Notifications
You must be signed in to change notification settings - Fork 0
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
VRC 720 configuration: understanding and managing Heating Zone time slots #3
base: patch-2
Are you sure you want to change the base?
Conversation
Value EnergyIntegral added in 08.hmu.csv
Added value EnergyIntergal
Some special operating modes are missing for VRC 700, added them. Successfully tested with VRC700/4 Naming of mode 6 changed per English manual for VRC700
Translated
``` scan.08 = Vaillant;BAI00;0105;7803 scan.08 id = 21;21;26;0010021875;0001;005296;N5 scan.15 = Vaillant;70000;0614;6903 scan.15 id = no data stored ``` ``` address 03: master john30#11 address 08: slave john30#11, scanned "MF=Vaillant;ID=BAI00;SW=0105;HW=7803", loaded "vaillant/bai.0010015600.inc" ([PROD='0010021875']), "vaillant/08.bai.csv" address 10: master #2 address 15: slave #2, scanned "MF=Vaillant;ID=70000;SW=0614;HW=6903", loaded "vaillant/15.700.csv" address 31: master john30#8, ebusd address 36: slave john30#8, ebusd ```
Fix CSV formatting typos
Fix CSV format typos
Fix CSV format typos
Fix CSV formatting typos
Fix CSV format typos
…a working z1 setpoint change.
Fix CSV format issues
Reapply pullrequest @234 Added several VWZ registers visible in Test/Sensor menu
- GlobalSystemOff - Hc1MinCoolingFlowTempDesired Renamed the following items: - Hc1MaxFlowTempDesired --> Hc1MaxHeatingFlowTempDesired - Hc1MinFlowTempDesired --> Hc1MinHeatingFlowTempDesired
…: off/time controlled/manual Added z1SetRoomTempDesired, z2SetRoomTempDesired, z3SetRoomTempDesired for each zone
…on github by HLFCode - COP: dimensionless --> unit ' ' - pressure: bar - CompressorHysteresisCOoling: K - Compressor Speed unit changed from Hz to rps Added MI1input to 76.vwz.csv as suggested on github by HLFCode
Added HcXDesiredTemp for 'fixed circuits' (courtesy LordShadowen) Translated many German descriptions to English Renamed HcXRoomTempSwitchOn to HcXRoomTempCompensation to better describe functionality VWZ: Added experimenal LiveMonitor fields (courtesy Kjoglum) for testing TEMPLATES: Added rcmode2 which flips RoomTempCompensation descriptions
- HwcMode (eco/normal/balance) - CompressorCurrentLimit (A) - CompressorModulation (soft/hard) - CompressorSilentOperationLevel (40-60%) - ActiveCoolingEnabled (yes/no) - BuildingCircuitMaxPressureDifference (mBar) - EnergyIntegralStartHeating (°min) - EnergyIntegralStartCooling (°min) - MainsBlocktimeMaxDuration (hrs) - MainsBlocktimeMinDuration (min) discovered by tracking eBUS messages while viewing & changing these parameters
Updated rTimeSlotWithTemp template to show field name and temperature in degrees (instead of 10*degrees)
@stadid |
Please see below complete timers config section for heating/cooling Zones 1-3
|
As I said I would add a few comment lines to explain the syntax, e.g. like this:
Well, maybe this is too much for the CSV. If we have a permanent documentation somewhere we could also place it there? |
Personally I'l don't think the r and w prefixes to indicate it is a read or write register are 'beautiful', but I also do not have a better suggestion except to out the R/W as a capital at the end of the register. Beyond, I'm good with the proposal. Question though, possibly outside the intended scope of this topic/discussion: there are several other timers in the thermostat, ie hot water, circulation and silent running, shouldn't those be updated in a similar fashion? |
I've also started adding comments to the csv and then checked if there are any similar comments anywhere in the ebusd config.
I do not like r and w at all. As I've discovered that we can live without them (2 strings in the config are possible for the same register name, one for reading, another for writing) I suggest to get rid of them. Anyway, we describe read and write commands syntax in the wiki. The only drawback of this is that how it fits with the home assistant integration when reading and writing are performed using different command syntax. Is this the only reason to have this r and w? Could you comment on this.
I've planned to completely rewrite all ctlv2 config timers in this new fashion. Silent timers I could add right here once we agree to add or not to add r and w to the register names. |
I don't think we need to bother with the distinct naming for reading and writing with the respect to the home assistant integration. It should work also with identical names. Also with the new indexed reading of the timers the respective entities are autodiscovered in HA. I'm not sure about the auto-discovery of the writable entities though. For sure they are writable via MQTT. I'm also fine with getting rid of them. |
Great thanks. |
There are still a couple of 'time window' sentences in the summary, which correspond to 'time slots'. As long as 'time window' is not an officially used term somewhere I would replace all 'time windows' with 'time slots'.
Yes, it's working. Thanks for putting the summary together. |
Done. All 'time windows' replaced with 'time slots' So, @chrizzzp, @jonesPD are we finished here - can we move forward to the next PR? |
@stadid sure! |
…rtesy @chrizzzp) Moved statuscode definitions from hcmode.inc to _templates.csv Added statuscode to german hcmode.inc using German statuscodes provided by @chrizzzp Temporarily changes setmode definition in hcmode.inc for debugging. Please change comments (#) in the file if this is inconvenient for you.
zxQuickVetoEndDate zxQuickVetoDuration per "VRC 720 configuration: understanding and managing Heating Zone working modes and related temperature parameters"
…return temperature defaults to 30C)
…Name2 to STR:* to avoid errors raised when these strings have no data
Added onoff definitions to unknown registeres of this type. Added FM5config register Added HcXExtHeatDemand registers to Hc1, Hc2, Hc3
_templates: - Added new definition for hcpumpstate _hcmode.inc: - Adjusted hwcflowtempdesired type (in SetMode) to temp1 15.ctlv2: - Updating default values for unknown registers - Using new heating circuit pumpstate template (hcpumpstate) for HcXPumpStatus - Added External Hwc registers TempDesired, OpMode, Active to each Hc1, Hc2, Hc3 circuits
…o 08.hmu.csv: RunDataCurrentConsumedPower
Add support to read power consumption in Watts (CurrentConsumedPowerWatt) Improve readout of State07 by including bitwise indicators of heatpump status
08.hmu.csv: 4PortValve --> FourPortValve 4PortValveHours --> FourPortValveHours 4PortValveSwitches --> FourPortValveSwitches 15.ctlv2.csv: TariffPrimHeaterLow: changes to field identifier (replacing space by underscore) broadcast.csv: NoiseReduction: remove IGN:1 from field identifier Registers changes (courtesy @chrizzzp) 08.hmu.csv - RunStatsCompressor + RunStatsCompressorHc + RunStatsCompressorHwc + RunStatsHwcHours + RunStatsBuildingCPumpStarts 76.vwz.csv + RunStatsBuildingCPumpStarts
Goal of the PR
To check and confirm all registers in the ebusd configuration associated with the time slots (also called windows, periods) for heating zones. Determine the methods to reliably read and set time slots parameters
General Time slots management through the regulator / native app.
In case preset temperatures for such time slots are the same those slots are combined by the native app into one, where start time is taken from the first (chronologically located) slot while end time is taken from the end date of the second one. If managed on the the regulator such time slots with the same preset temperature are not combined and are left "as is".
Regulator configuration registers linked with the heating zone time slots:
EBUSD regulator config (15.CTLV2.csv) implementation: see JonesPD repository
Below is the list of the Ebusd registers with the comments on each register and command syntax.
(replace * with heating zone number)
Determining number of configured time slots for specific weekday
Use
z*HTimer.TimeSlotsPerWeekday
register which returns number of configured time slots for each weekday (mon-sun) separated by semicolons:example to read configured time slots for Zone 1
Reading specific time slot parameters
Use corresponding weekday register for reading. Only one slot data is read per read command. You should provide slot index (fist slot index = 0)
list of weekday registers:
reading of time slots: index (specified with -i) denotes slot number (0-11)
example to read first heating time slot for heating Zone 1 for Monday:
example to read second heating time slot for heating Zone 1 for Monday:
if you try to read the non set time slot you'll receive:
00:00;00:00;-
Writing specific time slot parameters
writing of time slots with temperature, payload definition:
slot_index;total_slotnumber_day;start_time;end_time;temperature
example to write first (of two) heating time slot for Monday:
ebusctl w -c ctlv2 z1HTimer.Monday "0;2,00:00;04:00;17.0"
example to write second (of two) heating time slot for Monday:
ebusctl w -c ctlv2 z1HTimer.Monday "1;2,04:00;23:50;21.0"
IMPORTANT:
ALL time slots of the day have to be written, even if only one slot is updated!
Failure to write ALL time slots will result in the new settings not applied to the regulator (even already written time slots parameters will not be applied).
Deleting time slots
The recommended way of performing time slot deletion is to delete time slots for the whole day.
It could be achieved by using writing time slot command with the total number of time slots =0
Example of deleting time slots for Monday for heating Zone 1
ebusctl write -c ctlv2 z1HTimer.Monday "0;0;00:00;00:00;0.0"