Victron ESS Mode 2 and 3 External Control via Modbus TCP
Updated 6 September 2026 · By SolarNevs Research Desk, Dealer surveys + verified sources · 1 source · Method ↗
Key Takeaways
- External control of Victron ESS Mode 2 and 3 uses ModbusTCP or D-Bus protocols.
- Grid power setpoints can be adjusted to control energy flow to or from the grid.
- Specific ModbusTCP registers and D-Bus paths are used for various control functions.
- Victron Energy does not offer general support for implementing these advanced features.
How do I externally control my Victron ESS in Mode 2 or Mode 3?
You can externally control Victron ESS in Mode 2 or Mode 3 primarily using ModbusTCP or D-Bus communication protocols. This allows you to adjust settings like grid power setpoints and charge/discharge limits on your Multi or Quattro inverter/charger via a GX device.
Diagnosis and Setup Steps for External Control
To implement or troubleshoot external control of your Victron ESS system, follow these steps to ensure proper configuration and communication.
- Verify ESS Mode Configuration:
- Check: Confirm that your Victron ESS is configured for Mode 2 or Mode 3. These modes are designed to enable external control of grid setpoints and other parameters.
- Meaning: If your system is not in Mode 2 or 3, external commands will not be processed as expected.
- Confirm GX Device Connectivity:
- Check: Ensure your GX device is powered on and connected to your local network. The GX device acts as the communication gateway for ModbusTCP and D-Bus.
- Meaning: Without a functional GX device and network connection, external control commands cannot reach the inverter/charger.
- Identify Venus OS Version:
- Check: Determine the Venus OS version running on your GX device.
- Meaning: The ModbusTCP register usage for grid power setpoints differs based on whether your Venus OS version is before v3.50 or v3.50 and later. Using the incorrect register will result in failed commands or unexpected behavior.
- Check ModbusTCP Unit ID:
- Check: If using ModbusTCP, confirm that your external control system is addressing the GX device using ModbusTCP unit address 100.
- Meaning: The ModbusTCP unitaddress 100 is the designated address for communication with the GX device for ESS control. Incorrect unit ID will prevent communication.
- Review ModbusTCP Register Usage:
- Check: Refer to the table below for the correct ModbusTCP registers and D-Bus paths for specific control functions based on your Venus OS version.
- Meaning: Using deprecated or incorrect registers will prevent your commands from being applied. For example, registers 2701 (charge) and 2702 (inverter) are deprecated for enabling/disabling charging and inverting.
External Control Parameters and Protocols
The following table details the ModbusTCP registers and D-Bus paths used for external control of Victron ESS Mode 2 and 3.
Setting Name | Values/Description | Protocol |
|---|---|---|
Grid power setpoint (Venus < 3.50) | -32768W to 32767W (scale factor=1) | ModbusTCP register 2700 |
Grid power setpoint (Venus < 3.50) | Larger range (scale factor=0.01) | ModbusTCP register 2703 |
Grid power setpoint (Venus >= 3.50) | 32-bit value; Positive: take power from grid; Negative: send power to grid; Default: 50 W | ModbusTCP registers 2716 and 2717 |
Enable/Disable charge (deprecated) | 0: disable charging; 100: unlimited charging | ModbusTCP register 2701 |
Enable/Disable inverter (deprecated) | 0: disable inverter; 100: enabled inverter | ModbusTCP register 2702 |
Maximum inverter power | -1: No limit; Any positive number: Maximum power in Watt | ModbusTCP register 2704 |
DVCC maximum system charge current | -1: No limit; Any positive number: Maximum combined current in Ampere | ModbusTCP register 2705 |
Maximum system grid feed-in | -1: No limit; Any positive number: Maximum power in 100 Watt units | ModbusTCP register 2706 |
Feed excess DC-coupled PV into the grid | 0: Not fed in; 1: Fed in | ModbusTCP register 2707 |
Feed excess AC-coupled PV into the grid | 0: Fed in; 1: Not fed in | ModbusTCP register 2708 |
Grid limiting status | 0: Not limited; 1: Limited | ModbusTCP register 2709 |
Grid power setpoint | | D-Bus |
Enable/Disable charger | | D-Bus |
Enable/Disable inverter | | D-Bus |
Maximum inverter power | | D-Bus |
DVCC maximum charge current | | D-Bus |
Maximum system grid feed-in of excess power | | D-Bus |
Safety: Working with Electrical Systems
Working with Victron Multi or Quattro inverter/chargers and their associated electrical systems involves significant hazards. Always kill power to the inverter/charger, PV array, and battery bank before performing any physical work or making connections. Use insulated tools to prevent accidental short circuits, as a spanner across a battery bank can short hundreds of amps. Opening the unit or making internal modifications should only be performed by authorized service personnel.
When to call a technician instead
Implementing external control for Victron ESS Mode 2 and 3 requires advanced technical knowledge of ModbusTCP, D-Bus, and network communication. Victron Energy does not offer general support for these features, except in "real specific situations." If you are unsure about configuring ModbusTCP registers, scripting on the GX device, or integrating with external systems, it is advisable to consult a qualified Victron installer or system integrator. Attempting to implement complex control without adequate understanding can lead to system instability, incorrect energy management, or damage to equipment.
Frequently asked questions
What Victron devices are compatible with ESS Mode 2 and 3 external control?
External control for Victron ESS Mode 2 and 3 is compatible with Multi or Quattro inverter/chargers, managed through a GX device. These devices integrate to allow for advanced energy management.
How do I control grid power setpoints using ModbusTCP?
Grid power setpoints are controlled via ModbusTCP registers. For Venus OS versions before v3.50, use register 2700 for a range of -32768W to 32767W, or register 2703 for a larger range with a scale factor of 0.01. For Venus OS v3.50 and later, use registers 2716-2717 as a 32-bit value.
What is the ModbusTCP Unit ID for Victron ESS external control?
When implementing external control via ModbusTCP, you must use ModbusTCP unit address 100 to communicate with the GX device. This unit ID is standard for accessing the control functions.
Can I control charging and inverting functions externally?
Yes, you can control charging and inverting functions externally. ModbusTCP registers 2701 (charge) and 2702 (inverter) were previously used for this, but are now deprecated. Other registers like 2704 for maximum inverter power and 2705 for DVCC maximum system charge current are available.
Does Victron Energy provide support for implementing these external control features?
Victron Energy does not generally offer support for implementing these advanced external control features, except in specific situations. Users typically rely on community resources for detailed implementation guidance.
References
- Victron ESS Mode 2 & 3 manual — accessed 23 August 2026
Related guides
More from inverter errors & fixes.