- CitrineOS core extracted (CSMS OCPP 2.0.1) - OpenOCPP extracted (firmware OCPP 1.6J/2.0.1) - ShapeShifter library installed (pip install -e) - ShapeShifter specification extracted - EVerest extracted TODO updated with progress
483 lines
17 KiB
YAML
483 lines
17 KiB
YAML
description: This interface defines a ISO15118 charger.
|
|
cmds:
|
|
# Setup the module
|
|
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 and the power outlet the
|
|
vehicle is connected to
|
|
type: object
|
|
$ref: /iso15118#/EVSEID
|
|
sae_j2847_mode:
|
|
description: Charger is supporting SAE J2847 V2G/V2H version
|
|
type: string
|
|
$ref: /iso15118#/SaeJ2847BidiMode
|
|
debug_mode:
|
|
description: Enable/Disable debug mode
|
|
type: boolean
|
|
set_charging_parameters:
|
|
description: >-
|
|
At startup, set the the charging parameters at least once. May be updated later on.
|
|
If a charging session is currently active, some updated values may only be used for the next charging session.
|
|
arguments:
|
|
physical_values:
|
|
description: Set up initial physical values for a AC or DC charging session
|
|
type: object
|
|
$ref: /iso15118#/SetupPhysicalValues
|
|
session_setup:
|
|
description: At each session start this info should be sent to the module.
|
|
arguments:
|
|
payment_options:
|
|
description: Providing a list of payment options to the EVCC
|
|
type: array
|
|
items:
|
|
description: These are the payment options a SECC offers to the EVCC
|
|
type: string
|
|
$ref: /iso15118#/PaymentOption
|
|
minItems: 1
|
|
maxItems: 2
|
|
supported_certificate_service:
|
|
description: >-
|
|
The charger supports the certificate installation/update service and has a
|
|
connection to an SA for this purpose
|
|
type: boolean
|
|
central_contract_validation_allowed:
|
|
description: >-
|
|
Indicates if the vehicle contract may be forwarded to and validated by a CSMS in case
|
|
local validation was not successful
|
|
type: boolean
|
|
bpt_setup:
|
|
description: >-
|
|
At startup, set the bpt setup for ISO15118-20 at least once. May be updated later on.
|
|
arguments:
|
|
bpt_config:
|
|
description: The required parameters for a BPT setup
|
|
type: object
|
|
$ref: /iso15118#/BptSetup
|
|
set_powersupply_capabilities:
|
|
description: >-
|
|
At startup, set the min and max limits from the power supply. Can be updated later on.
|
|
arguments:
|
|
capabilities:
|
|
description: The required capabilities from the power supply
|
|
type: object
|
|
$ref: /power_supply_DC#/Capabilities
|
|
# Response messages to vars:
|
|
authorization_response:
|
|
description: >-
|
|
This message is an async response to a previously published require_auth_eim
|
|
or require_auth_pnc. The SECC informs the EVCC whether the authorization
|
|
is accepted or not.
|
|
arguments:
|
|
authorization_status:
|
|
description: Authorization status of the ID Token
|
|
type: string
|
|
$ref: /authorization#/AuthorizationStatus
|
|
certificate_status:
|
|
description: Certificate status information
|
|
type: string
|
|
$ref: /authorization#/CertificateStatus
|
|
ac_contactor_closed:
|
|
description: >-
|
|
This message is an async response to a previously published ac_close_contactor
|
|
or ac_open_contactor.
|
|
arguments:
|
|
status:
|
|
description: Set to true when contactor is closed, false when contactor is open
|
|
type: boolean
|
|
# Events
|
|
dlink_ready:
|
|
description: >-
|
|
Signals dlink_ready from SLAC layer according to ISO15118-3
|
|
arguments:
|
|
value:
|
|
description: >-
|
|
Set to true when link becomes ready, false when the link is terminated
|
|
type: boolean
|
|
cable_check_finished:
|
|
description: >-
|
|
Cable check is finished, voltage is under 20V and insulation resistor
|
|
on the cable is alright
|
|
arguments:
|
|
status:
|
|
description: Set to true when cable check is okay
|
|
type: boolean
|
|
receipt_is_required:
|
|
description: >-
|
|
This element is used by the SECC to indicate that the EVCC is required
|
|
to send a MeteringReceiptReq message for the purpose of signing the
|
|
meter info record.
|
|
arguments:
|
|
receipt_required:
|
|
description: >-
|
|
Set to true when receipt is required, set to false when not
|
|
type: boolean
|
|
stop_charging:
|
|
description: Stops the charging process
|
|
arguments:
|
|
stop:
|
|
description: Set to true when to stop, set to false when to continue
|
|
type: boolean
|
|
pause_charging:
|
|
description: Pause the charging process (only in ISO15118-20)
|
|
arguments:
|
|
pause:
|
|
description: Set to true when to pause, set to false when to continue
|
|
type: boolean
|
|
no_energy_pause_charging:
|
|
description: >-
|
|
Right now there is no power available for the charging process. According to
|
|
IEC61851-23:2023 CC3.5.3 the charger can pause the session before or after the cable check and
|
|
pre charge stage.
|
|
arguments:
|
|
mode:
|
|
description: >-
|
|
Set to different no energy pause modes. For PauseAfterPrecharge the charger should pause but
|
|
has power for cable check and pre charge. For PauseBeforeCableCheck the charger should pause
|
|
before cable check. For AllowEvToIgnorePause charger should ignore, that the ev will go to
|
|
CurrentDemand instead of pausing the session, this is against IEC61851-23:2023.
|
|
type: string
|
|
$ref: /iso15118#/NoEnergyPauseMode
|
|
update_supported_app_protocols:
|
|
description: >-
|
|
Update the supported charging protocols (DIN70121, ISO15118-2, ISO15118-20). Defaults are typically
|
|
configured already; if this command is not called, the module keeps its default set of supported protocols.
|
|
Note: This command is intended exclusively for Fake DC, primarily to disable specific supported protocols
|
|
in case of incompatibilities between EVCC and SECC.
|
|
arguments:
|
|
supported_app_protocols:
|
|
description: Supported communication protocols advertised by the EVSE
|
|
type: object
|
|
$ref: /iso15118#/SupportedAppProtocols
|
|
result:
|
|
description: >-
|
|
Returns true if the supported protocols were updated successfully
|
|
type: boolean
|
|
# Update physical values
|
|
update_energy_transfer_modes:
|
|
description: >-
|
|
Update the supported energy transfer modes. Call at least once during start up.
|
|
Typically for ISO15118-2 and basic charging we expect unidirectional charging modes.
|
|
For ISO15118-20 the user can set what type of modes the hardware supports, may that be
|
|
bidirectional, unidirectional, wireless, etc charging.
|
|
arguments:
|
|
supported_energy_transfer_modes:
|
|
description: Available energy transfer modes supported by the EVSE
|
|
type: array
|
|
items:
|
|
description: The different energy modes supported by the SECC
|
|
type: object
|
|
$ref: /iso15118#/EnergyTransferMode
|
|
minItems: 1
|
|
maxItems: 6
|
|
update_ac_max_current:
|
|
description: Update the maximum allowed line current restriction per phase. Call at least once during start up.
|
|
arguments:
|
|
max_current:
|
|
description: Max current in A
|
|
type: number
|
|
minimum: 0
|
|
maximum: 400
|
|
update_ac_parameters:
|
|
description: Update the d20 initial ac parameters. Call at least once during start up
|
|
arguments:
|
|
ac_parameters:
|
|
description: Ac parameters the EVSE is setting
|
|
type: object
|
|
$ref: /iso15118#/AcParameters
|
|
update_ac_maximum_limits:
|
|
description: Update the ac maximum limits. Call at least once during start up.
|
|
arguments:
|
|
maximum_limits:
|
|
description: Maximum values (charge and discharge) the EVSE can deliver
|
|
type: object
|
|
$ref: /iso15118#/AcEvseMaximumPower
|
|
update_ac_minimum_limits:
|
|
description: Update the ac minimum limits. Call at least once during start up.
|
|
arguments:
|
|
minimum_limits:
|
|
description: Minimum values (charge and discharge) the EVSE can deliver
|
|
type: object
|
|
$ref: /iso15118#/AcEvseMinimumPower
|
|
update_ac_target_values:
|
|
description: Update the ac target values. Call at least once before charging begins.
|
|
arguments:
|
|
target_values:
|
|
description: AC target values
|
|
type: object
|
|
$ref: /iso15118#/AcTargetValues
|
|
update_ac_present_power:
|
|
description: >-
|
|
Update the present power from the powermeter. Call at least once before charging begins
|
|
arguments:
|
|
present_power:
|
|
description: Present active power
|
|
type: object
|
|
$ref: /units#/Power
|
|
update_dc_maximum_limits:
|
|
description: Update the maximum limits. Call at least once during start up.
|
|
arguments:
|
|
maximum_limits:
|
|
description: Maximum values (current, power and voltage) the EVSE can deliver
|
|
type: object
|
|
$ref: /iso15118#/DcEvseMaximumLimits
|
|
update_dc_minimum_limits:
|
|
description: Update the minimum limits. Call at least once during start up.
|
|
arguments:
|
|
minimum_limits:
|
|
description: Minimum values (current and voltage) the EVSE can deliver
|
|
type: object
|
|
$ref: /iso15118#/DcEvseMinimumLimits
|
|
update_isolation_status:
|
|
description: Update the isolation condition
|
|
arguments:
|
|
isolation_status:
|
|
description: Result of the isolation monitoring
|
|
type: string
|
|
$ref: /iso15118#/IsolationStatus
|
|
update_dc_present_values:
|
|
description: Update the present values from the DC powersupply
|
|
arguments:
|
|
present_voltage_current:
|
|
description: Present voltage and current
|
|
type: object
|
|
$ref: /iso15118#/DcEvsePresentVoltageCurrent
|
|
update_meter_info:
|
|
description: Update meter info
|
|
arguments:
|
|
powermeter:
|
|
description: >-
|
|
Includes the meterInfo record containing the latest meter reading
|
|
and other meter relevant data
|
|
type: object
|
|
$ref: /powermeter#/Powermeter
|
|
# Error handling
|
|
send_error:
|
|
description: An error has happened. Send this error to inform the EV.
|
|
arguments:
|
|
error:
|
|
description: The EVSE error enum
|
|
type: string
|
|
$ref: /iso15118#/EvseError
|
|
reset_error:
|
|
description: Reset all errors
|
|
vars:
|
|
supported_app_protocols_secc:
|
|
description: >-
|
|
Supported charging protocols of the SECC. This always returns all supported protocols,
|
|
even if they are restricted via cmd update_supported_app_protocols.
|
|
type: object
|
|
$ref: /iso15118#/SupportedAppProtocols
|
|
require_auth_eim:
|
|
description: An EIM authorization is required
|
|
type: "null"
|
|
require_auth_pnc:
|
|
description: >-
|
|
The EVCC provides the payment details for a PnC authorization by sending
|
|
the signature certificate chain and eMAID.
|
|
type: object
|
|
$ref: /authorization#/ProvidedIdToken
|
|
ac_close_contactor:
|
|
description: The contactor should be closed
|
|
type: "null"
|
|
ac_open_contactor:
|
|
description: The contactor should be opened
|
|
type: "null"
|
|
start_cable_check:
|
|
description: The charger should now start a cable check
|
|
type: "null"
|
|
start_pre_charge:
|
|
description: The charger should now start the pre charge phase
|
|
type: "null"
|
|
dc_open_contactor:
|
|
description: The contactor should be opened
|
|
type: "null"
|
|
v2g_setup_finished:
|
|
description: >-
|
|
v2g_setup_finished from ISO15118-3. Trigger when EV sends a PowerDeliveryReq
|
|
message with ChargeProgess equals Start or Stop
|
|
type: "null"
|
|
current_demand_started:
|
|
description: The charging process has started and the EV wants to be charged
|
|
type: "null"
|
|
current_demand_finished:
|
|
description: The charging process was finished
|
|
type: "null"
|
|
sae_bidi_mode_active:
|
|
description: The SAE J2847 bidi mode is active
|
|
type: "null"
|
|
evcc_id:
|
|
description:
|
|
Specifies the EVs identification in a readable format. It contains
|
|
the MAC address of the EVCC in uppercase
|
|
type: string
|
|
pattern: ^[A-F0-9]{2}(:[A-F0-9]{2}){5}$
|
|
selected_payment_option:
|
|
description: This element is used for indicating the payment type
|
|
type: string
|
|
$ref: /iso15118#/PaymentOption
|
|
requested_energy_transfer_mode:
|
|
description:
|
|
Selected energy transfer mode for charging that is requested by the
|
|
EVCC.
|
|
type: string
|
|
$ref: /iso15118#/EnergyTransferMode
|
|
departure_time:
|
|
description: >-
|
|
Optional: [RFC3339 UTC] This element is used to indicate when the
|
|
vehicle intends to finish the charging process
|
|
type: string
|
|
format: date-time
|
|
ac_eamount:
|
|
description: >-
|
|
[Wh] Amount of energy reflecting the EV's estimate how much energy
|
|
is needed to fulfill the user configured charging goal for the current charging
|
|
session
|
|
type: number
|
|
minimum: 0
|
|
maximum: 200000
|
|
ac_ev_max_voltage:
|
|
description: >-
|
|
[V] The RMS of the maximal nominal voltage the vehicle can accept,
|
|
measured between one phase and neutral
|
|
type: number
|
|
minimum: 0
|
|
maximum: 1000
|
|
ac_ev_max_current:
|
|
description: "[A] Maximum current supported by the EV per phase"
|
|
type: number
|
|
minimum: 0
|
|
maximum: 400
|
|
ac_ev_min_current:
|
|
description: >-
|
|
[A] EVMinCurrent is used to indicate to the SECC that charging below
|
|
this minimum is not energy/cost efficient for the EV
|
|
type: number
|
|
minimum: 0
|
|
maximum: 400
|
|
ac_ev_power_limits:
|
|
description: >-
|
|
Ac charge & discharge power values supported and allowed by the EV
|
|
type: object
|
|
$ref: /iso15118#/AcEvPowerLimits
|
|
ac_ev_present_powers:
|
|
description: Present active and reactive power measured from the EV
|
|
type: object
|
|
$ref: /iso15118#/AcEvPresentPowerValues
|
|
ac_ev_dynamic_control_mode:
|
|
description: >-
|
|
The parameters the EVCC offers and sets for ac dynamic control mode
|
|
type: object
|
|
$ref: /iso15118#/AcEvDynamicModeValues
|
|
dc_ev_energy_capacity:
|
|
description: "Optional: [Wh] Energy capacity of the EV"
|
|
type: number
|
|
minimum: 0
|
|
maximum: 200000
|
|
dc_ev_energy_request:
|
|
description: "Optional: [Wh] Amount of energy the EV requests from the EVSE"
|
|
type: number
|
|
minimum: 0
|
|
maximum: 200000
|
|
dc_full_soc:
|
|
description: >-
|
|
Optional: [%] SOC at which the EV considers the battery to be fully
|
|
charged
|
|
type: number
|
|
minimum: 0
|
|
maximum: 100
|
|
dc_bulk_soc:
|
|
description: >-
|
|
Optional: [%] SOC at which the EV considers a fast charge process
|
|
to end
|
|
type: number
|
|
minimum: 0
|
|
maximum: 100
|
|
dc_ev_status:
|
|
description: Current status of the EV
|
|
type: object
|
|
$ref: /iso15118#/DcEvStatus
|
|
dc_bulk_charging_complete:
|
|
description: >-
|
|
Optional: If set to TRUE, the EV indicates that bulk charge (approx.
|
|
80% SOC) is complete
|
|
type: boolean
|
|
dc_charging_complete:
|
|
description: >-
|
|
Optional: If set to TRUE, the EV indicates that full charge (100%
|
|
SOC) is complete
|
|
type: boolean
|
|
dc_ev_target_voltage_current:
|
|
description: Target voltage and current requested by the EV
|
|
type: object
|
|
$ref: /iso15118#/DcEvTargetValues
|
|
dc_ev_maximum_limits:
|
|
description:
|
|
Maximum Values (current, power and voltage) supported and allowed
|
|
by the EV
|
|
type: object
|
|
$ref: /iso15118#/DcEvMaximumLimits
|
|
dc_ev_remaining_time:
|
|
description: Estimated or calculated time until bulk and full charge is complete
|
|
type: object
|
|
$ref: /iso15118#/DcEvRemainingTime
|
|
hlc_session_failed:
|
|
description: >-
|
|
Published by the HLC module whenever an HLC session failure is detected,
|
|
immediately when it occurs. Provides a protocol-agnostic reason for the
|
|
failure independently of the EvseManager state machine transitions.
|
|
type: string
|
|
$ref: /evse_manager#/HlcSessionFailedReasonEnum
|
|
dlink_terminate:
|
|
description: Terminate the data link and become UNMATCHED.
|
|
type: "null"
|
|
dlink_error:
|
|
description: Terminate the data link and restart the matching process.
|
|
type: "null"
|
|
dlink_pause:
|
|
description: Request power saving mode, while staying MATCHED.
|
|
type: "null"
|
|
ev_app_protocol:
|
|
description: >-
|
|
Debug_Lite - This request message provides a list of charging protocols
|
|
supported by the EVCC
|
|
type: object
|
|
$ref: /iso15118#/AppProtocols
|
|
v2g_messages:
|
|
description: >-
|
|
Debug - This element contains all V2G elements and should be used
|
|
for debug purposes only
|
|
type: object
|
|
$ref: /iso15118#/V2gMessages
|
|
selected_protocol:
|
|
description: >-
|
|
Debug - Contains the selected protocol
|
|
type: string
|
|
display_parameters:
|
|
description: >-
|
|
Parameters that may be displayed on the EVSE (Soc, battery capacity)
|
|
type: object
|
|
$ref: /iso15118#/DisplayParameters
|
|
d20_dc_dynamic_charge_mode:
|
|
description: >-
|
|
The parameters the EVCC offers and sets for dynamic control mode
|
|
type: object
|
|
$ref: /iso15118#/DcChargeDynamicModeValues
|
|
dc_ev_present_voltage:
|
|
description: Present Voltage measured from the EV
|
|
type: number
|
|
meter_info_requested:
|
|
description: The EV requested meter infos from the EVSE
|
|
type: "null"
|
|
selected_service_parameters:
|
|
description: From the EV selected service parameters
|
|
type: object
|
|
$ref: /iso15118#/SelectedServiceParameters
|
|
ev_termination:
|
|
description: >-
|
|
The EV termination code as described in ISO15118-20.
|
|
type: object
|
|
$ref: /iso15118#/EvTermination
|