All interfaces are defined in YAML files located in the interfaces/ directory. Each interface is a standalone file that can be referenced by multiple modules.
description: >- Brief description of what this interface doescmds: command_name: description: What this command does arguments: arg_name: description: Argument description type: string result: description: Return value description type: booleanvars: variable_name: description: What this variable represents type: object $ref: /some_type#/TypeNameerrors: - reference: /errors/error_category
File: interfaces/evse_manager.yamlThe core interface for EVSE charging session management.
Commands
get_evse: description: Get information about the EVSE including its connectors result: type: object $ref: /evse_manager#/Evseenable_disable: description: Enables or disables the evse arguments: connector_id: type: integer cmd_source: type: object $ref: /evse_manager#/EnableDisableSource result: type: booleanauthorize_response: description: Reports the result of an authorization request arguments: provided_token: type: object $ref: /authorization#/ProvidedIdToken validation_result: type: object $ref: /authorization#/ValidationResultstop_transaction: description: Stops transaction and cancels charging arguments: request: type: object $ref: /evse_manager#/StopTransactionRequest result: type: boolean
Variables
session_event: description: Emits all events related to sessions type: object $ref: /evse_manager#/SessionEventlimits: description: Limits of this evse, published on change type: object $ref: /evse_manager#/Limitsev_info: description: More details about the EV if available type: object $ref: /evse_manager#/EVInfopowermeter: description: Measured dataset type: object $ref: /powermeter#/Powermeterready: description: Signals that the EVSE Manager is ready to start charging type: boolean
File: interfaces/ISO15118_charger.yamlInterface for ISO15118 high-level communication (HLC) on the charger side.
Key Commands
setup: description: At startup all necessary info should be sent to the module once arguments: evse_id: description: Set an ID that uniquely identifies the EVSE type: object $ref: /iso15118#/EVSEID sae_j2847_mode: description: Charger is supporting SAE J2847 V2G/V2H version type: string $ref: /iso15118#/SaeJ2847BidiMode debug_mode: type: booleanset_charging_parameters: description: Set the charging parameters at least once arguments: physical_values: description: Set up initial physical values for AC or DC charging type: object $ref: /iso15118#/SetupPhysicalValuessession_setup: description: At each session start this info should be sent arguments: payment_options: description: List of payment options to offer to the EVCC type: array items: type: string $ref: /iso15118#/PaymentOption minItems: 1 maxItems: 2 supported_certificate_service: type: boolean central_contract_validation_allowed: type: booleanauthorization_response: description: Response to authorization request from EVCC arguments: authorization_status: type: string $ref: /authorization#/AuthorizationStatus certificate_status: type: string $ref: /authorization#/CertificateStatus
File: interfaces/energy.yamlInternal energy management interface between nodes.
description: > This interface is the internal energy management interface between nodes.cmds: enforce_limits: description: The EnergyManager enforces a limit using this command arguments: value: description: Limit object that will be routed through the tree type: object $ref: /energy#/EnforcedLimitsvars: energy_flow_request: description: > Request energy flow to supply/limit energy import (direction from grid to car) and/or consume/limit energy export (car to grid) type: object $ref: /energy#/EnergyFlowRequest
File: interfaces/powermeter.yamlGeneric power meter interface for 5-wire TN networks.
description: This interface defines a generic powermeter for 5 wire TN networks.cmds: start_transaction: description: > Starts a transaction on the power meter (for signed metering according to German Eichrecht) arguments: value: description: All information that should be included in the signed OCMF packet type: object $ref: /powermeter#/TransactionReq result: type: object $ref: /powermeter#/TransactionStartResponse stop_transaction: description: > Stop the transaction on the power meter and return the signed metering information arguments: transaction_id: description: Transaction id type: string result: description: Response to transaction stop request including OCMF string type: object $ref: /powermeter#/TransactionStopResponsevars: powermeter: description: Measured dataset type: object $ref: /powermeter#/Powermeter public_key_ocmf: description: The public key for OCMF type: string