Capability Boundaries
This page states what ChargeLink Native does and the limits and requirements that apply to each capability. Read it before you build a procedure or a report on ChargeLink output, so that every result is described within what the software actually does.
Main use case. ChargeLink runs ISO 15118-20 DC charging with external identification (EIM), in the charger and the vehicle role, in Scheduled and Dynamic control mode, on a Windows bench with NI VeriStand 2024 and a simulated power stage. The IEC 61851-23/-24 System A station and EV roles run on a virtual or Kvaser CAN bus with a simulated plant. The ISO 15118-2 and DIN 70121 DC EIM roles are built and loopback-tested engineering lanes. Every other function on this site is an engineering and test-development tool of the same binary. None of them is a certification, conformance or interoperability statement; no physical charging interface (power-line communication, control pilot, power stage) is included.
Charging protocols
| Area | What ChargeLink does | Limits and requirements |
|---|---|---|
| ISO 15118-20 EVSE, DC EIM, plant-coupled | Runs the charger side of a full DC EIM session. Every response is computed from the session state and the plant model measurements. | Requires the NI VeriStand bench of the package. Scheduled and Dynamic control mode, selected by the EV from the modes the runtime profile offers (control_mode, parameter_set_control_modes); the package's runtime profile offers Scheduled with one 60 s charging schedule. Schedule renegotiation is answered when the EV requests it; the SECC never triggers it. Dynamic mode: MobilityNeedsMode 1 only, pricing 0 only, no SECC-initiated pause or standby, available power from a profile script. CableCheck is simulated by the plant model. TLS 1.3 mutual authentication is required. A failed request is answered with a FAILED response code. |
| ISO 15118-20 EVCC, DC EIM live session | Runs the vehicle side of a full DC EIM session against a charger. | Requires the EV case file and the session manifest delivered with the package, passed through environment variables; TLS 1.3 mutual authentication; --max-steps 14. The EV values are test values, not a vehicle implementation. |
| ISO 15118-20 TLS | TLS 1.3 with mutual authentication and the ISO 15118-20 Annex B certificate profile. | Both roles offer and accept only the named groups secp521r1 and x448 (order set by --iso20-curve-profile, default secp521r1) and the cipher suites TLS_AES_256_GCM_SHA384 and TLS_CHACHA20_POLY1305_SHA256, with no session tickets or resumption. A peer that offers neither group (for example a P-256-only peer) is refused before any V2G message; --allow-legacy-tls-named-groups adds secp256r1 last for such peers and is recorded as a legacy claim boundary. The charger and the vehicle must be from the same release: mixed versions fail closed. |
| ISO 15118-20 EVSE reference responder (DC, AC, BPT) | Answers an external vehicle with validated reference responses per message. For engineering and test development; not for conformance testing. | No values are computed from the vehicle's requests. TLS 1.3 mutual authentication is required. |
| ISO 15118-20 EVSE Plug & Charge | Reference responder driven by a fixture manifest. For engineering and test development. | Plug & Charge advertisement requires the fixture manifest variable. No CertificateInstallation or MeteringConfirmation in the live session. |
| ISO 15118-20 EVCC, AC / BPT / Plug & Charge profiles | Dry-run, loopback and deterministic simulation. | No live session against a third-party charger. |
| ISO 15118-2 EVSE (DC EIM, AC EIM, AC Plug & Charge, TLS) | Reference responder for external vehicles. For engineering and test development; not for conformance testing. | Plug & Charge uses fixed engineering certificates. No CertificateUpdate or MeteringReceipt in the live session. |
ISO 15118-2 DC EIM session, SECC and EVCC (profiles iso15118_2_dc_eim, iso15118_2_dc_eim_evcc; command iso2-evcc) | A full DC EIM session between the ChargeLink SECC and the ChargeLink EVCC over TCP or TLS 1.2, with the shared plant bridge and a current-demand loop. | An engineering lane, not for conformance testing. The SECC profile is plant-coupled and needs --plant-grpc-endpoint (the NI VeriStand bench). TLS 1.2 with the cipher suites of ISO 15118-2 on OpenSSL; iso2-pki generates the engineering private-environment identity. No session against a third-party charger is claimed. |
| DIN 70121 EVSE | Reference responder for external vehicles. For engineering and test development; not for conformance testing. | Answers requests that match the reference request encodings. No TLS. |
DIN 70121 DC session, SECC and EVCC (profiles din70121_dc, din70121_dc_evcc; command din-evcc) | A full DIN 70121 DC session between the ChargeLink SECC and the ChargeLink EVCC over TCP, with the shared plant bridge and a current-demand loop. | An engineering lane, not for conformance testing. The SECC profile is plant-coupled and needs --plant-grpc-endpoint (the NI VeriStand bench); no TLS (DIN 70121 has none). No session against a third-party charger is claimed. |
ISO 15118-2 / DIN 70121 EVCC reference profiles (evcc start, evcc activate-profile) | Deterministic simulation, loopback and the TLS probe. | These profiles transmit ChargeLink's typed framing, not standards EXI; use iso2-evcc and din-evcc for a standards-encoded session against the ChargeLink SECC. |
IEC 61851-23/-24 System A, station and EV (dc-can chademo) | Both roles with a simulated plant and pilot circuits on a virtual CAN hub or a Kvaser CAN channel; a 29-case matrix, a repeatability run and a combined run on one PC; a two-PC lane. | Engineering evidence of the CAN layer, timing and state rules; no vehicle or charger has been tested; no conformance or certification claim; no power stage. |
| Scripted DC-CAN virtual lanes | Fixed, pre-scripted lists of CAN fixture frames with a closure simulator on a virtual bus. For engineering and test development. | Not a protocol implementation. Adapter kinds are descriptors that open no hardware; hardware mode is an operator attestation. See Scripted DC-CAN Lanes. |
| Physical charging interface | Not part of the software. | ChargeLink contains no power-line communication or SLAC, control pilot or proximity, physical CAN or power-stage control. The bench provides the physical link. A real powerline (PLC) link to a vehicle or charger is connected through the DEVlink PLC Relay Unit, which is in development; see Connecting to Real PLC Hardware. |
For other charging standards, contact DEVlink.
Test, evidence and integration
| Area | What ChargeLink does | Limits and requirements |
|---|---|---|
Protocol-first test campaigns (test) | Discovers test cases, plans and runs campaigns, and writes verdict reports for ISO 15118-2 and ISO 15118-20. | PASS/FAIL only from an operator-supplied live-SUT or validated-replay evidence manifest. |
| Licensed conformance packages | Planning, entitlement checks and traceability. | The package runner emits inconclusive (dry-run) or blocked until evidence is bound; it never reports PASS on its own. |
| Deterministic simulation and replay | Seeded paired simulations with transcript hashes and replay verification. | Symbolic transcripts, not wire traffic. |
| Evidence: manifests, integrity, redaction, support bundle | One run directory per run with SHA-256 manifests, traces and reports. | "Signed" verdict manifests are SHA-256 integrity seals, not external signatures. No PCAP, CSV, JUnit or PDF output. |
| gRPC Integration API | Session lifecycle, signals, campaigns and evidence for your own automation. | The management API is local only: a non-loopback --listen is refused and there is no TLS transport. Every call needs the per-start access token (<state-root>\api-token, bearer header). A session whose configuration carries a "listener" object starts and observes an EVSE listener (bound listener); a listener started from the CLI stays unbound (GetProtocolState = unobserved). A bound listener reports only the first protocol session of its run. |
| NI VeriStand bench | Couples the ISO 15118-20 DC EIM session to a VeriStand plant model (simulated power stage). | Requires NI VeriStand 2024 Q4 only. The shipped system definition runs the engine at 500 Hz on Windows and places its loops on logical processors 10, 11 and 12; the package contains no tool to change that placement. The plant is simulated; your own safety controller keeps physical authority over any real equipment. |
| ASAM XIL, HIL adapter SDK, factory/EOL, enterprise management | Deterministic reference implementations of the orchestration contracts. | No NI XIL runtime, physical HIL equipment or production equipment is driven. |
| OPC UA | Probe of an installed OPC Foundation stack. | No endpoint is opened. |
Engineering TLS material (evse tls-material-init) | Generates an Annex B-shaped certificate chain marked "ENGINEERING ONLY" for bench use. | The SECC refuses it unless evse start --allow-engineering-tls-identity is given. Never use it in production. |
| Licensing | Offline license files with entitlement gating. | valid_until and machine_binding are recorded but not enforced at runtime. There is no online activation service. |
| Installation | A ZIP package with a SHA-256 manifest. | No installer. Servers run in the foreground; there is no Windows service mode, so use your own supervisor. |
| Physical high-voltage safety | Outside the software. | Site procedures, interlocks, DUT limits and lab safety systems remain authoritative. |
Package catalogue versus executable reality
A package can contain cases that are not executable in the current environment because PICS/PIXIT excludes them, the entitlement is absent, a certificate path is not configured, physical hardware is absent, or a case is intentionally kept as a blocked audit row. Do not report a smaller executed campaign as "missing cases" until applicability and blockers have been reviewed.
Version-sensitive behaviour
CLI syntax, defaults, package contents, profile IDs and integration dependencies can change between releases. For a controlled procedure: record chargelink --version and the binary hash, archive the selected profile output, archive PICS/PIXIT and campaign inputs, record the documentation version, and never copy a command from a newer manual into an older build without checking --help. Hard-coded defaults such as fe80::640b:3f3d:c4fe:3d9f%19, interface index 19 and TCP 55000 in some engineering commands are laboratory defaults; always pass your own values.
When to contact support before testing
- Your installed profiles or packages do not match the purchased scope.
- The installed NI VeriStand version differs from 2024 Q4.
- A production TLS/Plug & Charge setup requires certificate material not described for your edition.
- The DUT requires a non-standard network or CAN configuration.
- You need to make a certification or formal compliance claim based on ChargeLink output.

