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