Open Charging Network
An open and decentralized communication network for digital eMobility services.
Last updated
An open and decentralized communication network for digital eMobility services.
Last updated
The Open Charging Network (OCN) is a decentralized eRoaming hub.
Using the , the OCN provides the network for communication between , , and other industry players involved in EV charging services.
The primary purpose of the OCN is to make technical connection between these EV charging industry players as simple and secure as possible, without creating technical and commercial lock-in effects.
The two primary actors are eMobility Service Provider (eMSP) and Charge Point Operator.
eMobility Service Providers (eMSPs) provide EV drivers with network access to electric vehicle charge points, typically through software applications and platforms. Their primary end-user is the EV driver.
Charge Point Operators (CPOs) install and manage the physical charge point operation infrastructure and the network operations that allow for EV-charging. Their primary end-users are e-MSPs, who in turn make these charge points available to EV drivers through their products and services.
The OCN is made up of a distributed network of server nodes running the . These nodes share a registry that stores network participant data, which exists as a that is deployed on the .
Below you will find an overview of OCN functionality and technical components, as well as how to using the OCN.
Authorization
Reservation
Tariff Information
Billing Stating Charge Point Information
Real-time charge point status information
Real-time charge session information
Charge Detail Record (CDR) information
Remote start/stop
Smart charging
Calibration law (eichrect) support
Platform monitoring
These actors implement the OCPI on their back-end IT infrastructure.
This allows end-users to, for example, locate and use EV chargers that are managed by one CPO, even if they are using an application created by a different CPO or eMSP. It provides a broader network of access to services and charge points that are critical for eRoaming.
The OCPI is broken down into modules that provide the protocol's core functionality, which includes:
Bilateral (peer-to-peer) and multilateral communication
Real-time information about charge point locations, availability and pricing
Exchange of data related to charging services (i.e. Charging Data Records)
Mobile access to Charge Points
The OCN performs the role of communication hub as described by the OCPI 2.2, meaning OCN nodes handle the communication and message routing between relevant parties (CPOs, eMSPs, service providers).
The primary difference between the OCN and traditional hub networks is that the OCN is an open and decentralized network:
There is no centralized server that participants must connect to in order to use the network. The OCN is comprised of a distributed network of server nodes, and anyone is able to run or connect their service to a node. Nodes are responsible for brokering messages between parties.
A node consists of a message broker, blockchain wallet, and connection to an Energy Web Chain node. The network of nodes together constructs the Open Charging Network.
Anyone can run a node if they choose, or connect to a node remotely.
A participant is identified in the Registry by their public key, which is mapped to the public url of the OCN node that they are registered with:
Users can interact with the Registry smart contract to fetch, set or update their registered node or their party information.
Most implementations of OCPI are centralized applications, where a third-party platform provides the 'hub' network connection between multiple eMSPs and CPOs that enable actors to send and receive information.
This approach brings certain advantages and convenience, but also creates commercial and technical limitations:
Participant identities are siloed within a network, creating a lock-in effect to that specific network
Network service providers can choose to not provide particular services on a proprietary platform, creating commercial restraints for the network's users
Centralized networks are typically less resilient and scalable than decentralized networks
Participation can be restrictive due to cost or commercial agreements
A decentralized, open source architecture provides a solution for some of these challenges:
Network participant identities are accessible to anyone on the network through a public, shared registry, reducing network and user silos.
Provides an entry point to the network, which enables communication with other eRoaming parties using the Open Charge Point Interface 2.2.
A pluggable OCPI API interface for eRoaming parties with no OCPI API.
The shared address, identity and permissions system of the OCN.
Utilities to securely verify and sign OCN messages using public/private cryptographic key-pairs.
Currently targeting JavaScript and JVM only.
Common tools for aiding development of applications built on top of the OCN.
The OCN supports all use-cases described in the , including:
The OCN implements the . This protocol provides a common communication infrastructure for , and other market participants involved in supplying and delivering electric vehicle charging services.
The OCPI protocol can be used for peer-to-peer (bilateral) communication, but is more widely used as a communication that connects multiple CPOs with multiple eMSPs.
Access the full OCPI technical documentation or download the PDF below:
There is no centralized database for storing participant user information. This data is stored in a on the , which is a public, decentralized blockchain. Anyone is able to register with this contract, provided they have required information. The OCN provides a to manage messaging preferences.
In the context of the OCN, a 'node' is a server running an instance of. Each node of the OCN forwards OCPI and OCN messages between parties based on a routing system and a shared registry that is anchored on the Energy Web Chain in a smart contract. As mentioned above, these parties are typically Charge Point Operators or eMobility Service Providers.
Read more about how to run a node . Read more about how to connect to a node
OCN parties (those who are using the network - eMSPs, CPOs, third party service providers) are identified in the that is deployed on the Energy Web Chain. Every node on the OCN has access to this smart contract.
Parties are required to sign messages that they send through the OCN with their private key as a means for security and verification. Learn more about how to create a public/private key pair and register as an OCN party .
Anyone can register and use the network for free. (Read more about how to create an OCN identity )
Anyone can run a node. This makes the network scalable, resilient, and reduces potential points of failure. Read more about how to run a node
The OCN is open-source. Anyone can build applications and provide services on top of the network for all to use. Read more about the OCN Service interface
To get started with the OCN, you first need to create your own OCN Identity. Follow the steps outlined here:.
To connect your EV charging service to an OCN Node (as a Charge Point Operator or an eMobility Service Provider), follow the steps outlined here: .
To operate your own OCN Node, follow the steps outlined here: .
To provide a service like settlement, payment, smart charging, etc. (OCN Service) to OCN Parties (Charge Point Operators, eMobility Service Providers, etc.), follow the steps outlined here:
Repository:
The OCN bridge can be used by CPO/eMSP backends to implement the OCPI protocol, which is a , however it is not required to use the OCN Bridge to do so. Manages the OCPI interfaces, connection to an OCN client and registration with the OCN registry. JavaScript implementation only.
Repository:
The OCN Registry is a on the that contains important identifying information about registered OCN Nodes, Parties and Services. It acts as the shared address, identity and permissions system of the OCN.
Repository:
Note that the already implements the OCN Notary. If you are connecting a party to an OCN node, and you are not implementing the , you will need to implement the OCN Notary in your backend setup.
Repository:
You can run a mock E-Mobility Service Provider (MSP) or Charge Point Operator (CPO) with these tools, which can be helpful for local development. Uses the as a dependency.
Repository: