ChargeLink Native

chargelink evse

Run and inspect the EVSE (charger-side, SECC) role: dry-run, live listener, TLS/PKI diagnostics, preflight and evidence lanes.

← All commands

chargelink evse

chargelink evse [OPTIONS] <COMMAND>

Subcommands

SubcommandPurpose
startthe ISO 15118-20 TLS 1.3 named-group settings of either role. The curve profile only reorders the two ISO 15118-20 named groups (secp521r1, x448); the legacy groups are an engineering opt-in outside ISO 15118-20
stop 
status 
list-state 
listener-policyShow native EVSE listener and EXI-backed protocol-loop policy
external-evcc-session-policyShow native external EVCC session listener/profile activation policy
protocol-loop-policyShow native EVSE EXI-backed protocol loop policy
iso20-setup-pathRun native ISO 15118-20 service discovery/session setup path
iso20-auth-service-pathRun native ISO 15118-20 authorization and service-selection path
iso20-cert-auth-negativesRun ISO 15118-20 certificate and authorization negative-path evidence
iso20-charge-schedule-pathRun ISO 15118-20 charge-parameter and schedule-exchange path
iso20-dc-charge-loop-pathRun ISO 15118-20 cable-check, precharge, and DC charge-loop skeleton
iso20-completion-passRun ISO 15118-20 completion pass artifacts and external EVCC syntax
legacy-hlc-completion-passRun ISO 15118-2 AC/DC + DIN 70121 completion pass artifacts
iso2-setup-pathRun ISO 15118-2 EVSE setup/service-discovery path
din70121-dc-setup-pathRun DIN 70121 legacy DC setup path
customer-smoke-planShow customer EVSE smoke launcher plan
external-evcc-live-planShow live EVSE + external EVCC interoperability plan
tls-pki-policyShow EVSE TLS/PKI diagnostics policy
tls-pki-doctorRun EVSE TLS/PKI diagnostics against certificate/key/CA PEM files
certificate-flowShow EVSE certificate-flow foundation and evidence gates
tls-listener-policyShow TLS-backed EVSE live listener preflight policy
tls-material-initGenerate engineering TLS material: a SECC identity, or with --bench-pki the complete engineering bench PKI (ENGINEERING/TEST only)
tls-listener-preflightRun TLS-backed EVSE live listener preflight without compliance claim
live-preflightRun live ISO/DIN EVSE preflight for same-PC EVCC or external EVCC supplier
live-closure-gateEvaluate live EVSE evidence artifacts after same-PC or external EVCC testing
live-closure-planPrint live ISO/DIN same-PC and external EVCC supplier validation commands

chargelink evse certificate-flow

Show EVSE certificate-flow foundation and evidence gates

chargelink evse certificate-flow [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--tlsflag
--tls-cert
alias --cert
<FILE>
--tls-key
alias --key
<FILE>
--tls-cafile
alias --ca
<FILE>
--require-caflag
--write-artifactsflag
--protocol<PROTOCOL>iso15118-20
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse customer-smoke-plan

Show customer EVSE smoke launcher plan

chargelink evse customer-smoke-plan [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse din70121-dc-setup-path

Run DIN 70121 legacy DC setup path

chargelink evse din70121-dc-setup-path [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse external-evcc-live-plan

Show live EVSE + external EVCC interoperability plan

chargelink evse external-evcc-live-plan [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse external-evcc-session-policy

Show native external EVCC session listener/profile activation policy

chargelink evse external-evcc-session-policy [OPTIONS]

No options besides the global options.

chargelink evse iso2-setup-path

Run ISO 15118-2 EVSE setup/service-discovery path

chargelink evse iso2-setup-path [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse iso20-auth-service-path

Run native ISO 15118-20 authorization and service-selection path

chargelink evse iso20-auth-service-path [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse iso20-cert-auth-negatives

Run ISO 15118-20 certificate and authorization negative-path evidence

chargelink evse iso20-cert-auth-negatives [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse iso20-charge-schedule-path

Run ISO 15118-20 charge-parameter and schedule-exchange path

chargelink evse iso20-charge-schedule-path [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse iso20-completion-pass

Run ISO 15118-20 completion pass artifacts and external EVCC syntax

chargelink evse iso20-completion-pass [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc
--peer-ipv6<PEER_IPV6>fe80::640b:3f3d:c4fe:3d9f%19
--tcp-port<TCP_PORT>50118

chargelink evse iso20-dc-charge-loop-path

Run ISO 15118-20 cable-check, precharge, and DC charge-loop skeleton

chargelink evse iso20-dc-charge-loop-path [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse iso20-setup-path

Run native ISO 15118-20 service discovery/session setup path

chargelink evse iso20-setup-path [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse legacy-hlc-completion-pass

Run ISO 15118-2 AC/DC + DIN 70121 completion pass artifacts

chargelink evse legacy-hlc-completion-pass [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--write-artifactsflag
--profile-id<PROFILE_ID>legacy_hlc_completion
--protocol<PROTOCOL>
one of: all, iso15118-2, din70121
all
--energy-mode<ENERGY_MODE>
one of: all, ac, dc
all
--peer-ipv6<PEER_IPV6>fe80::640b:3f3d:c4fe:3d9f%19
--tcp-port<TCP_PORT>50118

chargelink evse list-state

chargelink evse list-state [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--run-id<RUN_ID>

chargelink evse listener-policy

Show native EVSE listener and EXI-backed protocol-loop policy

chargelink evse listener-policy [OPTIONS]

No options besides the global options.

chargelink evse live-closure-gate

Evaluate live EVSE evidence artifacts after same-PC or external EVCC testing

chargelink evse live-closure-gate [OPTIONS] --run-id <RUN_ID>

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--run-id<RUN_ID>required
--source<SOURCE>same-pc
--require-sdpflag
--require-tcp-peerflag
--require-tlsflag
--require-v2gtpflag
--require-exiflag
--write-artifactsflag

chargelink evse live-closure-plan

Print live ISO/DIN same-PC and external EVCC supplier validation commands

chargelink evse live-closure-plan [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--advertise-ipv6<ADVERTISE_IPV6>fe80::640b:3f3d:c4fe:3d9f%19
--interface-index<INTERFACE_INDEX>19
--tcp-port<TCP_PORT>50118
--udp-port<UDP_PORT>15118

chargelink evse live-preflight

Run live ISO/DIN EVSE preflight for same-PC EVCC or external EVCC supplier

chargelink evse live-preflight [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--source<SOURCE>same-pc
--protocol<PROTOCOL>iso15118-20
--profile-id<PROFILE_ID>iso15118_20_dc
--host<HOST>::
--tcp-port<TCP_PORT>50118
--udp-port<UDP_PORT>15118
--advertise-ipv6<ADVERTISE_IPV6>fe80::640b:3f3d:c4fe:3d9f%19
--interface-index<INTERFACE_INDEX>19
--tlsflag
--tls-cert
alias --cert
<FILE>
--tls-key
alias --key
<FILE>
--tls-pfx
alias --tls-pkcs12
<FILE>Windows SChannel PKCS#12/PFX server identity for external EVCC TLS preflight.
--tls-cafile
alias --ca
<FILE>
--require-caflag
--tls-adapter<ADAPTER>rustls-defaultTLS adapter: rustls-default or windows-schannel-external-evcc
--external-evcc-windows-tlsflagAlias for --tls-adapter windows-schannel-external-evcc; engineering real external EVCC interop only
--external-evcc-iso-tls12flagLegacy preflight alias for external EVCC TLS 1.2/ECDSA compatibility; now records Windows SChannel intent, not OpenSSL
--recover-staleflag
--allow-active-evseflag
--skip-port-checkflag

chargelink evse protocol-loop-policy

Show native EVSE EXI-backed protocol loop policy

chargelink evse protocol-loop-policy [OPTIONS]

No options besides the global options.

chargelink evse start

the ISO 15118-20 TLS 1.3 named-group settings of either role. The curve profile only reorders the two ISO 15118-20 named groups (secp521r1, x448); the legacy groups are an engineering opt-in outside ISO 15118-20

chargelink evse start [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--dry-runflag
--iso20-curve-profile<CURVE>secp521r1ISO 15118-20 [V2G20-2320] curve setting: secp521r1 (default) or x448. Sets which ISO 15118-20 named group is preferred; both stay offered and accepted
--allow-legacy-tls-named-groupsflagAlso offer/accept secp256r1 after the ISO 15118-20 named groups, for P-256-only test peers. Engineering interop only, outside ISO 15118-20; the SECC also needs --allow-engineering-tls-identity, and every TLS record carries the legacy claim boundary
--external-evcc-sessionflagKeep the EVSE listener open for external EVCC activation; defaults UDP to 15118 and runtime to operator-stopped when max-runtime-ms is not overridden
--run-id<RUN_ID>
--foregroundflag
--protocol<PROTOCOL>
--profile-id<PROFILE_ID>
--profile<FILE>
--exi-mode<EXI_MODE>chargelink-exi
--plant-grpc-endpoint<URI>C3B RC2Y: canonical gRPC endpoint used by the external ISO 15118-20 DC EIM lane for live VeriStand plant command/feedback coupling.
--requested-power-kw<REQUESTED_POWER_KW>0Plant-coupled ISO15118-20 runtime requested power. Required explicitly when --plant-grpc-endpoint is used; zero means unset.
--target-voltage-v<TARGET_VOLTAGE_V>0Plant-coupled ISO15118-20 runtime target voltage. Required explicitly when --plant-grpc-endpoint is used; zero means unset.
--host<HOST>
--tcp-port<TCP_PORT>
--udp-port<UDP_PORT>
--tlsflag
--tls-cert
alias --cert
<FILE>
--tls-key
alias --key
<FILE>
--tls-pfx
alias --tls-pkcs12
<FILE>Windows SChannel PKCS#12/PFX server identity. Use with --external-evcc-windows-tls; --tls-cert/--tls-key may still be supplied for evidence traceability.
--tls-pfx-password<PASSWORD>""Password for --tls-pfx. For production, prefer --tls-pfx-password-env so the secret is not stored in shell history.
--tls-pfx-password-env<ENV>Read the Windows SChannel PKCS#12/PFX password from this environment variable. Preferred for production and real EVCC validation.
--tls-cafile
alias --ca
<FILE>
--require-caflag
--allow-engineering-tls-identityflagAllow ChargeLink engineering TLS material (from evse tls-material-init) as the server identity. Development and test only; never production
--tls-sni-policy<POLICY>strictTLS SNI handling policy: strict, external-evcc-dev-tolerant, external-evcc-iso-tls12, or external-evcc-windows-schannel
--tls-adapter<ADAPTER>rustls-defaultTLS adapter: rustls-default or windows-schannel-external-evcc
--external-evcc-windows-tlsflagAlias for --tls-adapter windows-schannel-external-evcc and --tls-sni-policy external-evcc-windows-schannel; engineering real external EVCC interop only
--external-evcc-dev-tlsflagAlias for --tls-sni-policy external-evcc-dev-tolerant; engineering interop only, not production TLS policy
--external-evcc-iso-tls12flagLegacy alias for external EVCC TLS 1.2/ECDSA compatibility; now maps to the Windows SChannel adapter, not OpenSSL
--advertise-ipv6<ADVERTISE_IPV6>
--interface-index<INTERFACE_INDEX>
--can-backend<CAN_BACKEND>
--can-channel<CAN_CHANNEL>
--can-bitrate<CAN_BITRATE>
--role<ROLE>
--max-runtime-ms<MAX_RUNTIME_MS>500
--heartbeat-interval-ms<HEARTBEAT_INTERVAL_MS>100

chargelink evse status

chargelink evse status [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--run-id<RUN_ID>

chargelink evse stop

chargelink evse stop [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--run-id<RUN_ID>

chargelink evse tls-listener-policy

Show TLS-backed EVSE live listener preflight policy

chargelink evse tls-listener-policy [OPTIONS]

No options besides the global options.

chargelink evse tls-listener-preflight

Run TLS-backed EVSE live listener preflight without compliance claim

chargelink evse tls-listener-preflight [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--tls-cert
alias --cert
<FILE>
--tls-key
alias --key
<FILE>
--tls-cafile
alias --ca
<FILE>
--require-caflag
--protocol<PROTOCOL>iso15118-20
--profile-id<PROFILE_ID>iso15118_20_dc
--host<HOST>fe80::640b:3f3d:c4fe:3d9f%19
--tcp-port<TCP_PORT>0
--rustls-mode<RUSTLS_MODE>rustls-prepared-not-bound
--write-artifactsflag

chargelink evse tls-material-init

Generate engineering TLS material: a SECC identity, or with --bench-pki the complete engineering bench PKI (ENGINEERING/TEST only)

chargelink evse tls-material-init [OPTIONS] --output-dir <DIR>

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--output-dir<DIR>required
--overwriteflag
--profile-id<PROFILE_ID>iso15118_20_dc_dev_tls
--protocol<PROTOCOL>iso15118-20
--write-artifactsflag
--bench-pkiflagPO decision 1a: generate a complete ENGINEERING/TEST PKI for the two-PC ISO 15118-20 bench (V2G root, SECC identity for PC1, vehicle identity for PC2, manifest) into --output-dir, which must not exist
--pfx-password-env<ENV_VAR>With --bench-pki: also write the SECC identity as pc1/secc-identity.pfx (Windows SChannel path), with the password read from this environment variable (never printed)

chargelink evse tls-pki-doctor

Run EVSE TLS/PKI diagnostics against certificate/key/CA PEM files

chargelink evse tls-pki-doctor [OPTIONS]

Options (global options --json, --runtime-root, --artifact-root and --license are accepted everywhere and omitted here)

OptionValueDefaultDescription
--tlsflag
--tls-cert
alias --cert
<FILE>
--tls-key
alias --key
<FILE>
--tls-cafile
alias --ca
<FILE>
--require-caflag
--write-artifactsflag
--protocol<PROTOCOL>iso15118-20
--profile-id<PROFILE_ID>iso15118_20_dc

chargelink evse tls-pki-policy

Show EVSE TLS/PKI diagnostics policy

chargelink evse tls-pki-policy [OPTIONS]

No options besides the global options.