Victron ESS Mode 2 Modbus TCP Grid Power Control Troubleshooting
Updated 6 September 2026 · By SolarNevs Research Desk, Dealer surveys + verified sources · 1 source · Method ↗
Key Takeaways
- Incorrect Modbus register selection based on your Venus OS version is a common cause of grid control issues.
- Always verify your Venus OS version and use the corresponding Modbus register for grid power setpoint control.
- Be aware that battery safety mechanisms, like sustain mode, will override your custom grid power setpoints.
- If your system behaves unexpectedly or you are unsure about Modbus commands, stop and consult a qualified technician.
Why isn't my Victron ESS Mode 2 system controlling grid power as expected?
The most common reason for Victron ESS Mode 2 grid power control not working as expected is using the wrong Modbus register for your Venus OS version or an incorrect Modbus unit ID. The first thing to check is your Venus OS version and ensure you are addressing the correct Modbus register for the grid power setpoint.
Diagnosis
Follow these steps to diagnose issues with Victron ESS Mode 2 Modbus TCP grid power control:
- Verify Venus OS Version:
- Check: Determine the Venus OS version running on your GX device. This is critical because Modbus register assignments for the grid power setpoint changed with Venus OS 3.50.
- Meaning: If your system is running Venus OS 3.50 or later, you must use a 32-bit value across Modbus registers 2716-2717 for the grid power setpoint. For Venus versions before 3.50, use register 2700 instead. Using the wrong register will result in commands being ignored or misinterpreted.
- Confirm Modbus Unit ID:
- Check: Ensure your Modbus TCP client is addressing the correct unit ID for the Victron system.
- Meaning: For Victron ESS Modbus TCP communication, you must use Modbus TCP unitid 100. Incorrect unit IDs will prevent any communication with the system.
- Inspect Grid Power Setpoint Value:
- Check: Review the value you are sending to the grid power setpoint register.
- Meaning: A positive value for the grid power setpoint means the system will take power from the grid. A negative value means the system will send power to the grid. The default value is 50 W. Ensure the sign of your value matches your desired grid interaction.
- Consider Battery Sustain Mode Override:
- Check: Observe the battery state and system status, particularly if the battery is nearly empty.
- Meaning: Battery safety mechanisms, such as the system entering sustain mode, will override custom power management settings. For example, if the MultiPlus is in sustain mode because the battery is almost empty, it will start charging the battery even if the grid power setpoint is negative. This is normal system behavior to protect the battery.
- Review Charge/Inverter Control Registers:
- Check: If you are also trying to enable or disable charging, verify the Modbus register used.
- Meaning: To control battery charging, use register 2705. An older setting for enabling/disabling charge is deprecated and only works when DVCC (Distributed Voltage and Current Control) is disabled.
Cause/fix table
Symptom detail | Likely cause | Fix |
|---|---|---|
Grid power setpoint not responding | Incorrect Modbus register used for Venus OS version | For Venus OS 3.50 and later, use Modbus TCP register 2716-2717 (32-bit). For Venus versions before 3.50, use register 2700. |
Grid power setpoint not taking effect | Incorrect Modbus unit ID | Use Modbus TCP unitid 100. |
System not sending power to grid when commanded | Positive value sent to grid power setpoint | Send a negative value to Modbus register 2716 (or 2700) to send power to the grid. |
System charging battery despite negative grid setpoint | Battery in sustain mode | The above settings are intended for power management, and will be overridden by battery safety mechanisms. For example: if the multi is in sustain mode - because the battery is almost empty - it will start charging the battery |
Charge/discharge not controllable | Deprecated register used for charge control | Use Modbus register 2705 to control battery charging. |
Understanding ESS Mode 2 Control via Modbus TCP and D-Bus
Victron ESS Mode 2 provides advanced control capabilities for your energy system, allowing for custom energy management optimization algorithms like time shifting or load management. This mode is functionally similar to ESS Mode 1 but adds specific control points for grid power, charge, and inverter functions.
The primary methods for interacting with these control points are Modbus TCP and D-Bus.
- Grid Power Setpoint: This is the most frequently used control point.
- For Venus OS versions 3.50 and later, the grid power setpoint is controlled via Modbus TCP registers 2716-2717, which represent a 32-bit value.
- For Venus versions before 3.50, use Modbus TCP register 2700 instead.
- A positive value in this register instructs the system to take power from the grid.
- A negative value instructs the system to send power to the grid. The default setpoint is 50 W.
- Charge Control: To enable or disable battery charging, use Modbus TCP register 2705. An older setting for this function is deprecated and only works if DVCC is disabled.
- Unit ID: When communicating with the Victron system via Modbus TCP, always use Modbus TCP unitid 100.
D-Bus Control (Alternative): For those integrating with custom software or scripts on the GX device, D-Bus paths offer another method of control:
- Grid Power Setpoint: The D-Bus path is
com.victronenergy.settings /Settings/CGwacs/AcPowerSetPoint. - Enable/Disable Charger: The D-Bus path is
com.victronenergy.settings /Settings/CGwacs/MaxChargePercentage.
MQTT Access: MQTT is also available for local and remote access to the GX device's data and control points, providing flexibility for integration into broader home automation or energy management systems.
Safety
When interacting with your Victron ESS system via Modbus TCP or D-Bus, it is crucial to understand the potential impact of your commands on the grid and battery. Incorrect commands can lead to unexpected power flows, system instability, or premature battery wear.
- Understand System Behavior: Before sending commands, ensure you fully understand what each register or D-Bus path controls and the expected system response.
- Battery Safety Overrides: Always remember that battery safety mechanisms, such as sustain mode, will override your custom control settings. Do not attempt to force a battery to discharge or prevent it from charging if the system indicates a safety critical state.
- Grid Interaction: Commands that affect grid power export or import can have implications for your utility connection. Ensure your system is properly configured and compliant with local grid regulations.
When to call a technician instead
While Modbus TCP offers powerful control, it also requires a clear understanding of your Victron ESS system and Modbus communication protocols. You should call a qualified technician if:
- Your system exhibits unpredictable or unsafe behavior after attempting Modbus commands.
- You are unable to establish reliable Modbus TCP communication with your GX device.
- You suspect a hardware fault in your GX device, MultiPlus, or battery system.
- You are unsure about the implications of specific Modbus register values or D-Bus commands.
- The system consistently enters sustain mode despite your attempts to control grid power, indicating a potential underlying battery or system issue.
- You are modifying critical system settings that could void your warranty if not performed by an authorized professional.
Frequently asked questions
What is Victron ESS Mode 2?
Victron ESS Mode 2 allows for custom control of grid power, charge, and inverter functions, extending beyond standard ESS Mode 1 capabilities. It enables advanced energy management optimization algorithms.
How do I set the grid power setpoint in Victron ESS Mode 2?
The grid power setpoint is controlled via Modbus TCP. For Venus OS versions 3.50 and later, use register 2716-2717, which is a 32-bit value. For Venus versions before 3.50, use register 2700 instead.
What Modbus unit ID should I use for Victron ESS Modbus TCP?
When communicating via Modbus TCP for Victron ESS, use Modbus TCP unitid 100.
Can battery safety mechanisms override my ESS Mode 2 grid power setpoint?
Yes, battery safety mechanisms, such as the system entering sustain mode because the battery is almost empty, will override your grid power setpoint to ensure the battery charges.
How do I enable or disable charging in ESS Mode 2?
To enable or disable charging, use Modbus register 2705. The older register for this function is deprecated and only works if DVCC is disabled.
References
- Victron Energy ESS Mode 2 and 3 Documentation — accessed 23 August 2026
Related guides
More from inverter errors & fixes.