8. DVCC - Distributed Voltage and Current Control
8.1. Introduction and features
Enabling DVCC changes a GX device from a passive monitor into an active controller. The available features and effects of enabling DVCC depend on the type of battery used. The effect also depends on the installed Victron components and their configuration.

Example 1 - Managed CAN-bus batteries For example, in systems with an Managed CAN-bus BMS battery connected, the GX receives a Charge Voltage Limit (CVL), Charge Current Limit (CCL), Discharge Current Limit (DCL) from that battery and relays that to the connected inverter/chargers and solar chargers. These then disable their internal charge algorithms and simply do what they're told by the battery. There is no need to set-up charge voltages or choose the charge algorithm type.
Example 2 - Lead batteries For systems with lead batteries, DVCC offers features such as a configurable system wide charge current limit, where the GX device actively limits the inverter/charger in case the solar chargers are already charging at full power. As well as shared temperature sense (STS) and shared current sense (SCS).
This table shows the recommend settings for different battery types:

Carefully study the following chapters to fully understand DVCC for a particular system.
To enable or disable DVCC, see Settings → DVCC in the menus:

8.2. DVCC Requirements
Battery compatilibity
For CAN-bus connected batteries, check the relevant page on the Battery Compatibility manual to see if enabling DVCC has been tested with your battery-type and is supported. If DVCC is not mentioned in notes relating to your battery, do not enable DVCC.
For Gel, AGM, OPzS and other lead batteries, DVCC can be used without any problem. The same is true for Victron Energy lithium batteries with the VE.Bus BMS, the Lynx Ion + Shunt BMS or the Lynx Ion BMS. DVCC is the preferred operating mode for Redflow ZBM2/ZCell batteries using the Redflow CANBus BMS.
Firmware versions
Do not use DVCC in cases where these requirements are not met. In all cases we recommend to install the latest available firmware during commissioning. Once running well, there is no need to pro-actively update firmware without reason. In case of difficulty, the first action is to update firmware.
Required minimum firmware versions:
Multi/Quattro: 422
MultiGrid: 424
Cerbo GX: v2.12
VE.Direct MPPTs: v1.46
VE.Can MPPTs with VE.Direct: v1.04
Older style VE.Can MPPT Solar Chargers (with the screen) cannot be used: they do not support the new control mechanisms.
Lynx Ion + Shunt: v2.04
Lynx BMS: v1.09
From Venus firmware v2.40, there will be a warning message 'Error #48 - DVCC with incompatible firmware' when one of the devices has an incompatible firmware while using DVCC.
In case of an ESS System, the ESS Assistant needs to be version 164 or later (Released in November 2017).
8.3. DVCC effects on the charge algorithm
Our inverter/chargers and MPPT Solar Chargers use their own internal charge algorithm when in stand-alone mode. This means that they determine how long to remain in Absorption, when to switch to Float, when to switch back to Bulk, or Storage. And in those various phases they use the configured parameters in VictronConnect and VEConfigure.
In certain systems, the internal charge algorithm is disabled, and the charger is then working with an externally controlled charge voltage target.
This guide explains the different possibilities:

Internal
The internal charge algorithm (bulk → absorption → float → re-bulk), and the configured charge voltages are active.
Inverter/charger indicated charge state: bulk, absorption, float, and-so-forth.
MPPT indicated charge state: bulk, absorption, float and-so-forth. (firmware version v1.42 onwards. Earlier versions have a bug that make the MPPT say “Ext. Control” when it is only being current limited; its internal charge algorithm still active.
Inverter/charger (applies to MPPTs only)
The MPPTs internal charge algorithm is disabled; instead it's being controlled by a charge voltage setpoint coming from the inverter/charger.
MPPT indicated charge state: Ext. control.
Battery
The internal charge algorithm is disabled; and instead, the device is being controlled by the battery.
Inverter/charger indicated charge state: Bulk when in current controlled mode, Absorption when in voltage controlled mode. Never Float; even though currents might be low / battery might be full.
MPPT indicated charge state: Ext. control.
8.4. DVCC features for all systems
These features apply to all types of systems when DVCC is enabled: with or without ESS Assistant, and with lead or other normal batteries as well as when an intelligent CAN-bus BMS connected battery is installed:
8.4.1. Limit charge current
This is a user-configurable maximum charge current setting. It works across the whole system. MPPT Solar Chargers are automatically prioritized over the mains/generator.

This setting is available in the “Settings → “System Setup” menu on the GX device.
Particulars:
1) If a CANBUS-BMS is connected and the BMS requests a maximum charge current that is different from the user-configurable setting, the lower of the two will be used.
2) This mechanism only works for Victron inverter/chargers and Solar chargers. Other chargers, such as Skylla-i’s are not controlled and also their charge current is not taken into account. The same applies for devices that are not connected to the GX device, such as an alternator. Worded differently: the total charge current of the inverter/chargers and all MPPTs will be controlled, nothing else. Any other sources will be extra charge current, unaccounted for. Even when installing a BMV or other battery monitor.
3) DC Loads are not accounted for. Even when a BMV or other battery monitor is installed. For example, with a configured maximum charge current of 50 Amps, and DC Loads drawing 20 Amps, the battery will be charged with 30 Amps. Not with the full allowed 50 Amps.
4) Current drawn from the system by the inverter/charger is compensated for. For example, if 10A is drawn to power AC loads, and the limit is 50A, the system will allow the solar chargers to charge with a maximum of 60 Amps.
5) In all situations, the maximum charge limit configured in a device itself, ie. the Charge current limit set with VictronConnect or VEConfigure for the Solar chargers or Inverter/chargers will still be in effect. An example to illustrate this: in case there is only an Inverter/charger in the system, and in VEConfigure or VictronConnect the charge current is configured to 50 Amps. And on the GX Device, a limit of 100A is configured, then the working limit will be 50 Amps.
8.4.2. Shared Voltage Sense (SVS)
Works with VE.Bus devices and VE.Direct Solar Chargers.
The system automatically selects the best available voltage measurement. It will use the voltage from the BMS or a BMV battery monitor, if possible, otherwise it will use the battery voltage reported by the VE.Bus system.
The voltage displayed on the GUI reflects the same voltage measurement.
Shared Voltage Sense (SVS) is by default enabled when DVCC is enabled. It can be disabled with a switch in the Settings → System Setup menu.
8.4.3. Shared Temperature Sense (STS)
Select the temperature sensor to use; and the GX device will send the measured battery temperature to the Inverter/charger system as well as all connected Solar Chargers.
Selectable sources for the battery temperature are:
BMV-702 battery monitor
BMV-712 battery monitor
Lynx Shunt VE.Can battery monitors
Temperature inputs on a Cerbo GX (and same for other GX devices that have a temperature input)
Multi/Quattro inverter/charger
Solar Chargers (if fitted with a temperature sensor)
8.4.4. Shared Current Sense (SCS)
This feature forwards the battery current, as measured by a battery monitor connected to the GX device, to all connected solar chargers.
The solar chargers can be configured to use the battery current for its tail current mechanism that ends absorption when the current is below the configured threshold. For more information about that, refer to Solar charger documentation.
This feature only applies to systems that are not ESS, and/or don’t have a managed battery, since in both of those cases the MPPT is already externally controlled.
Requires MPPT solar charger firmware v1.47 or newer.
8.5. DVCC Features when using CAN-bus BMS Battery
This chapter applies to all systems where an intelligent battery BMS is installed, and connected via CAN-bus. Note that this does not include the Victron VE.Bus BMS.
Such intelligent BMS sends four parameters to the GX device:
Charge voltage limit (CVL): the maximum charge voltage that the battery currently accepts.
Charge current limit (CCL): the maximum charge current requested by the battery.
Discharge current limit (DCL): the maximum discharge current as requested by the battery.
For all three parameters, some types of batteries transmit dynamic values. For example they determine the maximum charge voltage based on cell voltages, state of charge, or for example temperature. Other makes and brands use a fixed value.
Here is the page in the menus showing the parameters:

For such batteries, there is no need to wire allow-to-charge and allow-to-discharge connections to the AUX inputs on a Multi or a Quattro.
When inverting, ie in Island mode, Multis and Quattros will shut down when the max discharge current is zero. They will automatically start again as soon as either AC mains returns, or when the BMS increases the max discharge current again.
See previous chapter, “Limit charge current”, the user setting, for details about how the Maximum charge current is used, how it prioritises solar and more.
All above means that setting up charge voltages or charge profiles in VEConfigure or VictronConnect is not necessary, and will also have no effect. The Multis, Quattros and MPPT Solar Chargers will charge with the voltage as received via CAN-bus from the battery.
8.6. DVCC for systems with the ESS Assistant
The ESS Keep batteries charged mode works properly. It does not without DVCC.
A fixed solar offset of 0.4V is used instead of a variable 2V. (values for 48V systems, divide by 4 for 12V). Note that this solar offset is only applied when ESS-mode is set to Optimized in combination with the Feed-in excess solar charger power-setting enabled, or when ESS-mode is set to Keep batteries charged.
Add Auto-recharge feature for the ESS Modes Optimized and Optimized (with BatteryLife). The system will automatically recharge the battery (from the grid) when the SOC drops 5% or more below the value of ‘Minimum SOC’ in the ESS menu. Recharge stops when it reaches the Minimum SOC.
ESS improved state display: In addition to the charger states (Bulk/Absorption/Float), additional Discharging and Sustain modes were added. In addition it also shows reasons for the state it is in:
#1: Low SOC: discharge disabled
#2: BatteryLife is active
#3: Charging disabled by BMS
#4: Discharging disabled by BMS
#5: Slow Charge in progress (part of BatteryLife, see above)
#6: User configured a charge limit of zero.
#7: User configured a discharge limit of zero.