Virta

Virta Priority

Updated:
Read time:
Difficulty level:

This article explains Virta Priority, a feature in Virta's Dynamic Load Management for AC chargers that grants selected EV drivers preferential charging power. Priority users receive maximum power when possible, while non-priority users share remaining capacity. Virta Priority works best with Virta Preconnect, which allows more precise power allocation below 6A. EV driver groups are managed via Virta Hub. The article covers technical details, compatibility, enabling Priority, troubleshooting, and reporting issues.

 

This support article is applicable to the Dynamic Load Management addition called Virta Preconnect used via the following user interface: https://energy.virtaglobal.com/.

Virta Priority enables selected EV drivers to receive preferential access to charging power when energy services such as Dynamic Load Management (DLM) are in use.

When a group of charging points is managed by DLM, charging sessions with Priority status can be allocated full power, or a higher share of the available power, compared with standard charging sessions. Non-priority users continue to be managed according to the normal DLM rules.

It is important to note that prioritizing one charging session affects the power available to others. When a Priority session starts, the power allocated to that session is reserved from the total available capacity, which may reduce the charging power available for non-priority users.

What you can expect to find in this article:

  • How does it work?
    • Overview
    • Spotlight: How do Virta Priority and Preconnect work together?
    • Where are EV driver groups managed?
    • Technical implementation for determining if the charging transaction is priority or not
  • Requirements & compatibility
    • Technical requirements
    • Compatible services
  • A practical example of Virta Preconnect in action
  • To consider in the current implementation
  • Enabling Virta Priority to a Load Management group
  • Troubleshooting guide
  • Instructions for reporting issues
  • Required permissions

How does it work?

Overview

A user with access to the Virta Priority module can activate the Priority charging feature for a DLM group in EnergyUI  EnergyUI. Once this feature is enabled, the user can associate a group of EV drivers with the DLM group. These drivers are then recognized as Priority users at the charging points they're connected to, and get to charge with more capacity when compared to non-priority users.

Priority users are given precedence over non-priority users. This means that charging transactions initiated by Priority users are supplied with the station’s maximum rated power as long as it is possible without exceeding the site’s total allowed load. Concurrently, the charging capacity available to non-priority users decreases with the power amount allocated to Priority users. To ensure the site's import limit is not exceeded, even Priority users will be subjected to DLM if the site limits are nearing their maximum. This measure is taken to avoid overloading the site’s capabilities. Non-priority users normally adhere to DLM: The available charging capacity is distributed equally among the active charging points.

To conclude, Virta Priority introduces a “double-layered” Load Management system, where Priority EV drivers receive full power as long as it is physically possible. However, when capacity is running low, Priority EV drivers will be subjected to regular DLM until more capacity becomes available (e.g., when a car is fully charged or someone departs). The below diagram demonstrates the concept of double-layered load management.

Spotlight: How do Virta Priority and Preconnect work together?

Virta Priority is ideally utilized in conjunction with Virta Preconnect. When operating without Virta Preconnect, Virta Priority is constrained by a minimum current limit: it will not request less than 6A from EVSEs regardless of the situation. This means 6A is the absolute minimum output for an EVSE. Notably, pausing of charging transactions happens if an EVSE is instructed to go below 6A, a scenario that occurs only when Virta Preconnect is enabled

Take the following scenario as an example:

In the last scenario, where the available capacity for non-priority EV drivers drops to zero, the following occurs:

  • WITHOUT Preconnect: All non-priority EV drivers will receive 6A, even if the available capacity drops to 0A due to priority EV drivers consuming all the capacity. Since the minimum current without Preconnect is 6A, non-priority drivers will still receive 6A, potentially exceeding the site limits.
  • WITH Preconnect: As the diagram indicates, charging transactions for non-priority drivers will be suspended while priority drivers consume all the capacity. In this scenario, priority drivers will be subject to regular equal share DLM to prevent exceeding the site's limit.

The user interface allows the selection of whether priority users are included in Preconnect. By default, they are included. Excluding them from Preconnect ensures they always receive full power, regardless of capacity. This feature should be used cautiously.

Here you can find the parameter for excluding priority users from Virta Preconnect:

As a final detail, it is worth mentioning that multiple Priority groups can be linked to a single Load Management group.

Where are EV driver groups managed?

Management of EV driver groups is handled through the Virta Hub. Once you've created the EV driver group there, it will become available in the Energy portal after a brief latency.

Technical implementation for determining if the charging transaction is priority or not

When a new charging transaction starts and the OCPP status of the charging point changes to Preparing, our backend checks whether the end-user initiating the transaction is a Priority user or not:

  • Once the backend receives the Preparing status from a charging point, it clears all previous Priority-related statuses from the charging point and prepares for the new charging transaction.
  • The backend checks for any signs of Priority-related data (such as customer group ID) in the DLM events received from the charging point (e.g., Charging, SuspendedEVSE).
    • If there is NO customer group ID, DLM is applied as usual.
    • If there IS a customer group ID, the backend verifies whether this group is linked to the group of charging points to which the charger belongs.
      • If the customer group ID IS LINKED to the group of charging points, then the transaction is considered as a Priority user transaction.
      • If the customer group ID is NOT LINKED to the group of charging points, then the transaction is considered as a non-priority user transaction.

Requirements & compatibility

Technical requirements

Shared requirements with Dynamic Load Management for AC chargers

Compatible services

The solution is only available for Load Management solutions for AC chargers, covering:

  • Dynamic Load Management
  • Adaptive Load Management
  • Boost charging

Additionally, the solution seamlessly integrates with the following AC Load Management features

  • Preconnect
  • Phase balancing → See details under section To consider in the current implementation
  • Capacity Maximiser → See details under section To consider in the current implementation

A practical example of Virta Preconnect in action

The following schema describes what happens within a DLM group once a Priority end-user plugs in and starts charging:

To consider in the current implementation

  • Complex Load Management cases
    • In the current implementation, the distribution of available charging current to non-priority users is not as efficient as possible. For example, non-priority users do not receive as much current as they potentially could in scenarios where Priority users are not charging at full power, such as when another group limits the Priority users. Consider this situation: a Priority group is set to 36A, with two Priority users and one non-priority user charging. Normally, the base logic would allocate full 16A to each Priority user and 0A (or 6A, in case Virta Preonnect is not enabled) to the non-priority user. However, if the Priority users are restricted by another group to only 13A, one might expect the non-priority user to receive more current. Unfortunately, in the current system, this adjustment does not occur.
    • Regarding Priority users not receiving full power, this occurs under specific conditions: If a station is connected to multiple groups – a common scenario in complex load management – such as to a DLM group overseeing the main connection and to another group managing the distribution board, the user must be designated as Priority in both groups. This is necessary because if the station receives different requests from each group, the system, adhering to its stacked logic, defaults to the lowest request for the station.
  • Phase balancing will influence the definition of maximum rated power. When enabled, the maximum output of a charger is limited to 16A per phase if the charging transaction uses fewer than three phases. This limitation also applies to Priority users.

Enabling Virta Priority to a Load Management group

These instructions start from the premise that the EV driver group has already been created in the Virta Hub

  • Head to Load Management
  • Select the tab called Groups
  • Select the energy group to which you want to enable Priority charging
  • Scroll down until you see an element labeled Priority driver groups
  • Select driver group which are considered as Priority drivers when they start charging at charging points connected to the that Load Management Group
Screenshot 2026-06-11 at 14.33.39.png
  • Click saved, and you are done!
  • To remove the Priority status from the group of end-users, click “X” next to the group name to remove it

Troubleshooting guide

If you suspect that Virta Priority is not behaving as expected, do the following:

  1. Make sure that DLM is enabled for the group in question, and verify that the Maximum current rating matches your expectations.

  2. Make sure all the expected EVSEs are connected to the group.

  3. Are the EVSEs displayed as Supported (either Basic support or Full support) in EnergyUI? If not, then it means that the specific station type has not been integrated for energy services. If this is the case, please reach out to your Virta point of contact.

  4. Are the EVSEs online? DLM is a cloud-based service basically meaning that the EVSEs have to be connected to Virta’s backend in order for the solution to work.

  5. Are there other energy management features enabled simultaneously? If yes, other services may have taken control of the EVSEs.

  6. DLM is compatible only with OCPP 1.6 - Make sure EVSEs are operating with this protocol.

If all of the above checks out, do the following:

  1. Enable Dynamic Load Management for the group, set the Maximum current rating, and click Save. Make sure at least one charger in the group is charging.

  2. Select one of the EVSEs in the group and navigate to the OCPP logs. Look through the change-configuration or charging-profile-set requests in order to verify that 1) DLM has made requests to the charger and 2) the requested values are correct. Here are examples of both aforementioned requests:

    Example 1: Manufacturer-specific key Connector-MaxCurrent configures the maximum current to 16 A using the configuration-change request (LEGACY method, not available for new integrations!)

    by-core: configuration-change-v2
    
    {
        "Id": "8916d695-9768-41ce-913c-9662d3c0a49c",
        "RequestTraceId": "0b909eee-4d0e-4606-8857-9120b8463d8a",
        "ClusterEnumId": "primary",
        "ContainerId": "app-core-api-74c8bf49f6-pkm5w",
        "Type": "configuration-change-v2",
        "InsertDate": "2023-10-19T05:18:20.410443Z",
        "ChargerId": "VRT_000071",
        "LowerCaseChargerId": "vrt_000071",
        "ChargerProtocol": "ocpp-j-1-6",
        "ChargerIp": "10.11.25.123",
        "ChargerEndpoint": "",
        "ChargerEndpointPort": null,
        "ChargerSettingsEndpointTemplate": null,
        "ChargerSettingsSkipCertCheck": null,
        "ChargerSettingsSoapVersion": null,
        "Key": "Connector1-MaxCurrent",
        "Value": "16"
    }

    Example 2: TxDefaultProfile, one of the smart charging profiles defined in OCPP 1.6, configures the maximum current to 16 A using the charging-profile-set request

    by-core: charging-profile-set
    
    {
        "Id": "4b254356-71fe-4291-9bfe-543afc61e117",
        "RequestTraceId": "66a73bce-4936-4099-a61b-69620b88766a",
        "ClusterEnumId": "primary",
        "ContainerId": "app-core-api-74c8bf49f6-79w72",
        "Type": "charging-profile-set",
        "InsertDate": "2023-10-19T05:19:11.617442Z",
        "ChargerId": "VRT_000071",
        "LowerCaseChargerId": "vrt_000071",
        "ChargerProtocol": "ocpp-j-1-6",
        "ChargerIp": "10.11.25.123",
        "ChargerEndpoint": "",
        "ChargerEndpointPort": null,
        "ChargerSettingsEndpointTemplate": null,
        "ChargerSettingsSkipCertCheck": null,
        "ChargerSettingsSoapVersion": null,
        "ConnectorId": 1,
        "Profile": {
        "chargingProfileId": 201,
        "stackLevel": 0,
        "chargingProfilePurpose": "TxDefaultProfile",
        "chargingProfileKind": "Absolute",
        "chargingSchedule": {
        "chargingRateUnit": "#UNIT#",
        "chargingSchedulePeriod": [
        {
        "startPeriod": 0,
        "limit": 16
    }
    ],
        "startSchedule": "2023-10-19T05:19:09.164Z"
    }
    }
    }

     

  3. Has the charger responded Success to the request?

  4. If not, disable DLM, change the limits, and re-enable it

  5. Check the OCPP logs again. Did the charger respond Success to the request? If yes, then you are all set.

  6. If you are still experiencing issues, please contact Virta support (support@virta.global). Make sure to include all information described in the section Instructions for reporting issues

Instructions for reporting issues

We need to know some basic information about the issue in order to investigate it thoroughly. Please provide at least the following information when reporting an issue:

  • Problem description: How does the problem occur? What effect does the problem have?
  • Which energy services were enabled during the issue?
  • Were there any changes made to the EVSE configurations?
  • Were new services enabled prior to encountering the issue?
  • Date & time of the finding. This information is very important - It is used for going through detailed logs.
  • Make & model of EVSEs.
  • EVSE IDs.
  • Make & model of the vehicle(s) charging.
  • What was the vehicle(s) state of charge.
  • Describe your actions step-by-step. If possible, link relevant OCPP logs to your actions.

Required permissions

To use Virta Priority and Preconnect features, the organisation (CPO) must have "Energy", "Dynamic Load Management", "Priority", and "Preconnect" modules enabled on Virta Hub. To access and edit the Priority and Preconnect in Energy UI, the Virta Hub user must have the roles “Admin” or “Technician”.

Was this article helpful?