OCPP 2.0.1

A comprehensive guide to OCPP 2.0.1

Don’t be daunted by the newest version of the Open Charge Point Protocol. Read our comprehensive guide to OCPP 2.0.1 and learn how to best use the protocol to achieve your charging goals.

Introduction

The Open Charge Point Protocol (OCPP) 2.0.1 was released in 2020 by the Open Charge Alliance (OCA) to build upon and improve the protocol that has become the global choice for effective communications between charging stations (CS) and the charging station management software (CSMS).

OCPP 2.0.1 introduces many new terms compared to its previous version and contains 16 functional blocks along with a number of use cases and requirements. Rather than list these in the order in which they are presented in the official documentation, we’ve divided this guide to best address the charging goals that you’ve set for your network. Our guide will cover the following chapters:

  1. Scale: OCPP 2.0.1 scales charging networks
  2. Secure: OCPP 2.0.1 secures charging networks
  3. Interoperable: OCPP 2.0.1 ensures interoperable charging infrastructure
  4. Transparent: OCPP 2.0.1 helps networks be more transparent with EV drivers
  5. Sustainable: OCPP 2.0.1 promotes sustainable charging infrastructure

Each section will go into detail on how OCPP 2.0.1 can help you best achieve these charging goals. Feel free to skip ahead to the chapter most relevant to your use case.

OCPP 2.0.1 helps Charging Networks Scale

The future of EV adoption depends on expanding charging infrastructure and increasing access to multiple charging stations that are reliable and easy to find. To this end, the future of EV charging belongs to the networks and charging station operators (CSOs) that scale and can quickly connect large numbers of EV chargers to cater for the growing number of EVs on the road.

In this section, we’ll cover:

  • Increasing Uptime with OCPP 2.0.1
  • The Device Model and Device Management
  • Topologies supported by OCPP 2.0.1
  • Improved Transaction Handling
  • Diagnostics under OCPP 2.0.1

Increasing Uptime with OCPP 2.0.1

Reliable EV charging stations with an uptime of over 97% aren’t just a luxury, they are now the norm and expected by drivers across the world. OCPP 2.0.1 addresses this necessity with the functional block “Availability” where charging stations can inform the CSMS of its current availability for starting new transactions.

It’s crucial for a CSO to know if a charging station is available for use. With this knowledge, the CSO can inform EV drivers about the availability of the charging station. To learn of a charging station’s availability,  a charge station using OCPP 2.0.1 sends detailed status updates to the CSMS. This is extremely useful when an EV Driver experiences problems during charging or when a fault is detected as the charging station can quickly send a message notifying the CSMS.

In addition to this, the Availability functional block also allows charging stations to go offline during maintenance to ensure no new transactions are started. Once the EVSE has been repaired, it only takes a single command to make the charger available for use again.

The Device Model and Device Management

Sometimes referred to as a device model, device management is a crucial addition to OCPP 2.0.1, particularly for CSOs that operate charging stations and transactions at high volume. As networks scale, CSOs can reduce operation costs.

Device Management can help complex networks grow to scale by providing:

• inventory reporting

• improved error and state reporting (this improves uptime reporting)

• improved configuration

• customizable monitoring  

The new monitoring features are all capable of being customized at the operator’s discretion so they can choose which parts of their network should be monitored the closest.

What is the Device Model?

The device model in OCPP 2.0.1 is a three-tiered data structure (see image above) which describes all the various components you can encounter in a charging transaction. Whether the connections are through single socket chargers or multiple sockets, this hierarchy of Charging Station, EVSE and Connector is the guiding framework of the Device Model.

The aims of the device model are to allow for a smooth “plug-and-play” charger installation where any given charging station in the model can clearly communicate its layout and capabilities to the CSMS.   

The innovation in the device model is that it also makes remote management a breeze to the point where the CSMS can read and control any component remotely. Monitoring a charging remotely can also be configured to a CSO’s specifications to ensure that only the most relevant data is being monitored.  

Topologies supported by OCPP 2.0.1

As a CSO scales their network, there are a number of ways they can configure their charging networks leveraging communications that use OCPP. A configuration is referred to as a topology and OCPP 2.0.1–which is versatile in its design–supports the following five topologies when setting up a network.

  • Direct connection to CSMS: The simplest configuration that involves only communications between charging stations and the CSMS.
  • Connected by Local Proxy: This topology routes all communications for a set of charging stations through a single network node like a modem or router. The OCA suggests a group of charging stations in an underground parking garage as a possible use case for utilizing a local proxy as the CSMS can receive messages through mobile data over a LAN. The LAN acts as a message router and the CSMS reads the messages as if it was receiving it directly from the charging station.
  • Connected by Local Controller: A local controller acts much like a proxy but with the added benefit of sending messages directly to the charging stations independently of the CSMS. This has important applications when setting up networks to enable Smart Charging. This configuration can also be set up using multiple web sockets where each connection would have the same address as the CSMS. This can help businesses scale faster as Local Controllers can see, read and respond to all messages and can independently update firmware without the need for added software.
Image courtesy of the Open Charge Alliance
  • DSO sends signals to CSMS: In this topology, the CSMS receives signals from a Distributed System Operator (DSO) and sends it directly to the CSMS with no intermediary.
  • Using CSMS and an Energy Management System in parallel: Useful in more private use cases where the charging station is connected in parallel with both CSMS and an Energy Management System (EMS). 

Improved transaction handling in OCPP 2.0.1

A transaction under OCPP 2.0.1 is the portion of a charging session that is recorded by the CSMS. It is a single time frame with a start and stop time and this information can be used by the network operator for billing purposes.

In taking more networks to scale, OCPP 2.0.1 offers greater flexibility to businesses in diverse charging use cases as well as improved support for transaction handling.

Under OCPP 2.0.1, operators can configure transaction starts and stops. For example, a CSO might want to configure a transaction to start when the cable is connected (for a public charging site) or when the driver is authorized (in a fleet depot).

Unlike OCPP 1.6, transaction related messages do not need to be sent in chronological order anymore with version 2.0.1. Instead, sequence numbers are used in order to be certain that all transaction messages are received.

Every transaction generates its own Transaction ID in OCPP. Previously this Transaction ID was generated by the CSMS but under OCPP 2.0.1, this ID is now generated by a charging station. This removes the problems of transactions that occurred without Transaction IDs as might happen if the charging station is offline.  

Unique Transaction IDs are required and it is recommended by the OCA that  Universally Unique Identifiers (UUIDs) are generated when a charging station is rebooted, power cycled, firmware updated or under maintenance.

Diagnostics under OCPP 2.0.1

Real-time and remote diagnostics can be enabled directly through installed charging stations. A request can be sent to a charging station to upload a file with its entire diagnostics report. This request can help CSOs:

  • retrieve Log info.
  • get a monitoring report: the CSMS  can request the Charging Station to send a report about configured monitoring settings per component and variable.
  • set a monitoring base, set alerts, clear the monitoring setting, set periodic notifications as well as retrieve customer information.
  • can extend existing commands with custom attributes or add new custom commands to OCPP.

OCPP 2.0.1 Secures Charging Networks

One of the major changes made when OCPP 2.0.1 was released was the bolstering of security features to ensure the safe transmission of messages between charging stations and CSMS.

To this end, the OCA stated that OCPP 2.0.1 security was designed to achieve the four following objectives:

Allow the creation of a secure communication channel between the CSMS and charging station where the integrity and confidentiality of messages are protected by strong cryptographic measures.

To provide mutual authentication between the charging station and CSMS where both parties should be able to identify who they are communicating with.

To provide a secure firmware update process. Under OCPP 2.0.1, a charging station operator can update firmware by having the CSMS communicate with the charging station to download and install the new firmware. The Charging Station can only notify the CSMS after each step. To provide a secure firmware update process, the charging station checks the source and the integrity of firmware images. To allow logging of security events to facilitate monitoring the security of the smart charging system. These events can be anything from mundane to more serious security breaches and can be directly accessed through an event log for security diagnostics.

Security Profiles under OCPP 2.0.1

OCPP 2.0.1 introduced 3 security profiles that users can implement. Users can only implement one security profile at a time though it is possible to upgrade to more secure profiles. In order of least security to most advanced security, these profiles are:  

  1. Basic Authentication and Unsecured Transport: Although passwords can now be easily changed in Basic Auth, this profile is not recommended in untrusted networks unless there is a VPN between CSMS and the charging station.
  2. TLS with Basic Authentication: This profile uses both base classification and sets up a secure connection using TLS. Before starting  with basic authentication, the CSMS and Charging station will perform a so-called “TLS handshake” where certificates are exchanged (though no client-side certificate is exchanged). After a successful handshake the charging station will proceed with sending an http request to upgrade the connection to a websocket connection.
  3. TLS with Client side Certificates: Both client and server side certificates are exchanged in this security profile.

This client side certificate is an added layer of security that is installed in the charging station which acts as an encryption key (through a name and unique serial number). The key is kept on the client side which will be used to encrypt data and can be read only by authorized clients. If the source of the data comes from anyone other than the client, OCPP 2.0.1 will not allow it to be decrypted.

It is also highly recommended by the OCA to use one of the TLS based security profiles when implementing Plug and Charge (see below) as not doing this might jeopardize the Plug and Charge security measures.

It’s important to note that as the CSMS usually acts as the server, different users or role-based access control on the charging station are not implemented in this standard. The OCA recommends implementing access control on the CSMS to mitigate this. It’s also advised that OCPP should not be used by qualified personnel performing maintenance to charging stations locally as other protocols may be used for local maintenance purposes. 

For a deeper dive into the many security features found in OCPP check out this downloadable whitepaper through the OCA website.

OCPP 2.0.1 promotes Interoperable Charging Infrastructure

Interoperability lies at the heart of the OCPP project and is a crucial goal towards expanding the reach of EV charging stations as well as increasing the adoption of EVs. OCPP had been established to ensure charging station communications (initially within Europe) were standardized and interoperable irrespective of network, electric vehicle or affiliation. 

While interoperability of EV charging infrastructure remains distant for many regions, OCPP is now being widely adopted as the dominant standard globally. If interoperability is an important goal for your EV charging network, it pays to learn more about OCPP 2.0.1 as more regulations are requiring for it to be implemented from 2024 onwards. 

In the US, OCPP is a key requirement of interoperability to obtain public funds like the NEVI funding program. To learn more about OCPP requirements under NEVI, make sure to check out our guide on the NEVI Minimum Standards.

How does OCPP 2.0.1 promote Interoperability?

Choosing OCPP-compliant hardware puts a CSO at an advantage as you can choose the software that best suits your business, change this software to adapt to your business needs and set yourself apart from the crowd. Choosing OCPP compliant software, on the other hand, allows centralized command over a network that is easily visible, accessible and provides a great user experience to a wider range of drivers.

To achieve these ends, OCPP 2.0.1 offers networks the ability to provision their charging stations, efficiently authorize drivers looking to charge while paving the road ahead for implementations of Plug and Charge. We’ll take each of these features in turn. 

Provisioning 

Provisioning with OCPP 2.0.1 helps a CSO allow their charging stations onto their network and retrieves crucial configuration information from these chargers. Provisioning also gives operators the ability to retrieve information about the configuration of charging stations or make changes to the configuration. 

Authorization and Access Control

Who’s using your network? For charging networks of the future, this will perhaps be the most urgent question to answer correctly. The balance for many public charging use cases will be between ensuring the largest possible number of charging transactions while asserting some degree of control over the network.

OCPP 2.0.1 offers a number of different ways of authorizing an EV driver looking to charge their vehicle. Using the Authorization functional block, CSOs can verify that the person is an authorized user within their network.

The user experience can be further enhanced by having a charging station support local authorization of identifiers using an Authorization Cache. The Local Authorization List is a list of identifiers that can be synchronized with the CSMS. It allows authorization of a user when offline and when online it can be used to reduce authorization response time. 

Offline authorization is an option using the appropriate configuration variable. The same configuration variable can also determine whether a charging station will use the Authorization Cache to start a transaction without performing an authorization with the CSMS.

Regarding payment methods, OCPP 2.0.1 now makes it possible to use many different types of authorization. Where OCPP 1.6J only supported RFID, OCPP 2.0.1 now also supports credit card, PIN-code as well as a simple start button (Free Vend mode).

Plug and Charge

OCPP 2.0.1 is forward looking towards new advancements in connected car technology by incorporating Plug & Charge into its functionality.

Plug & Charge is the idea of having drivers simply plug their vehicle and having the costs of charging deducted from their account without any need for apps, cards or fobs. While many of the car OEMs have yet to implement this technology into their vehicles, it is anticipated that Plug & Charge will be the standard in years to come to offer truly seamless charging experiences.

The underlying protocol behind Plug & Charge is ISO 15118. This standard is valuable to charging stations that use OCPP as it provides the exchange of charging schedules and enables the ability to control the amount of power that an EV may draw from an EVSE. 

In the case of Plug & Charge, the authorization for charging is provided by the Plug & Charge (PnC) mechanism using a contract certificate stored in the EV and is handled by the certificate handling process and eliminates the need of other means of authorization. 

In OCPP 2.0.1, the Plug & Charge functionality is determined by the 15118 OCPP functional block. Using this functional block, charging stations can:

• communicate with an EV. 

• support certificate-based authentication and authorization at the Charging Station, i.e. plug and charge. 

OCPP 2.0.1 makes EV charging more Transparent

Using OCPP isn’t just about effective communications between charging stations and the CSMS. Successful and seamless charging stations are also about making sure EV drivers are quickly, in real time, informed about the important details of their charging session. In this section, we’ll cover how OCPP 2.0.1 has been improved to help your charging network be more transparent to the person charging their EV.  

In particular, we’ll look at how OCPP 2.0.1 communicates payments, reserving a charging station as well as session details to an EV driver.

Payments, Tariffs and Rates

Using OCPP 2.0.1, charging stations can be transparent about the cost of charging before a driver starts charging. Using the protocol’s Payments and Tariffs functional block, CSOs can easily relay detailed tariff and rates information that is applicable to a driver on their network. These costs can be communicated in real time as the charging session is ongoing, meaning that the driver is always informed about the charge of the session.

This message can also be customized to include messaging applicable to a network’s brand, to ensure a more personalized experience for a customer.

Reserving a Charging Station

EV drivers can also reserve a charging station if using an OCPP 2.0.1 compliant charger. Ensuring that a charging station will be available is vital towards attracting more customers to charging networks as they’ll be drawn to the ease and accessibility of available charging.

Using the reservation functionality that OCPP 2.0.1 provides, EV drivers can secure a time window in which they have the opportunity to arrive at the charging location and use a particular EVSE or connector.

Set display messages

OCPP allows CSOs to display messages to drivers that are not included in the firmware of the charging station. These messages can be set, retrieved, replaced and cleared at the operator’s discretion. These displays can also be configured in different languages as well as different message formats. 

Important display messages that CSOs can send through include amount of energy consumed, total time for the transaction, state of charge or more detailed information on payments or tariffs.

Using OCPP 2.0.1 helps networks attain Sustainable Charging Goals

In addition to driving a profit from the charging stations, forward-looking business are looking to make sure that their best practices are sustainable and contribute to the broader effort of cutting carbon emissions and attaining net-zero.

This requires businesses to be mindful of when the ideal time is for charging as well as the demands that they place on the grid for larger scale use cases. Many networks employ sophisticated load management and Smart Charging to account for their charging needs.

Smart Charging allows operators to intervene and set limits to the amount that a charging station (or group of charging stations) is drawing from the grid. Under OCPP 2.0.1, smart charging can be set up in either one or a combination of the following four modes:

• Internal Load Balancing

• Central Smart Charging 

• Local Smart Charging

• External Smart Charging Control Signals 

Charging profiles and charging schedules 

In OCPP, an operator can send energy transfer limits at specific times to a charging station and these limits are combined in a Charging Profile. This charging profile also holds the charging schedule which defines a block of charging power or current limits and contains a start time and duration. 

Both charging profiles and charging stations can then be applied to charging stations as well as to EVSEs.