Installation
What you receive
A standard Windows customer package contains the signed application binaries, built-in profiles, configuration templates, protocol assets, documentation, and—when licensed—the NI VeriStand integration components. It does not contain the development repository.
Typical installed layout:
C:\Program Files\ChargeLink Native\
bin\chargelink.exe
bin\chargelinkd.exe
bin\ChargeLink.Veristand.NativeClientBroker.exe
bin\ChargeLink.Veristand.OperatorLauncher.exe
bin\ChargeLink.Veristand.NiBroker.exe
config\
profiles\builtin\
docs\
Your package can omit components not included in your license. Do not copy third-party NI assemblies into the ChargeLink folder; configure the gateway to use the version-matched NI ClientAPI installed with VeriStand.
Prerequisites
- Windows 10 or Windows 11, 64-bit.
- Administrator rights for installation and Windows Firewall changes.
- IPv6 enabled on the interface used for ISO 15118 communication.
- A valid ChargeLink license file or activation code.
- For NI VeriStand integration: NI VeriStand 2024, its Gateway/ClientAPI components, and a compatible Windows execution target.
Install
- Sign in with an administrator account.
- Close older ChargeLink processes.
- Run the supplied installer.
- Keep the default installation directory unless your IT policy requires another location.
- Select the features included in your order: Core Runtime, EVSE, EVCC, ATS, HIL, NI VeriStand Native Gateway, REST/OPC UA, or Enterprise Services.
- Allow the installer to add the
bindirectory to the systemPATH. - Finish the installation and open a new PowerShell window.
Verify the binary
chargelink --version
chargelink --help
chargelink doctor --json
A healthy installation returns the version, the command catalogue, and a JSON diagnostic result. Save the diagnostic output for support:
New-Item -ItemType Directory -Force C:\ChargeLinkData\support | Out-Null
chargelink doctor --json | Out-File -Encoding utf8 C:\ChargeLinkData\support\doctor.json
Create customer data directories
Do not store runtime data under Program Files.
$CLDATA = 'C:\ChargeLinkData'
New-Item -ItemType Directory -Force `
"$CLDATA\runtime", `
"$CLDATA\artifacts", `
"$CLDATA\profiles", `
"$CLDATA\licenses", `
"$CLDATA\logs", `
"$CLDATA\veristand" | Out-Null
Activate a license
Online or file-based activation:
chargelink license activate --file C:\ChargeLinkData\licenses\customer.cllic --json
chargelink license verify --file C:\ChargeLinkData\licenses\customer.cllic --json
For an offline system:
chargelink license request-offline `
--customer-id '<CUSTOMER_ID>' `
--output C:\ChargeLinkData\licenses\offline-request.json `
--json
Transfer the request to your licensing contact. When the issued .cllic file is returned, copy it to C:\ChargeLinkData\licenses and activate it as shown above.
Set reusable PowerShell variables
$env:CHARGELINK_LICENSE = 'C:\ChargeLinkData\licenses\customer.cllic'
$env:CHARGELINK_RUNTIME_ROOT = 'C:\ChargeLinkData\runtime'
$env:CHARGELINK_ARTIFACT_ROOT = 'C:\ChargeLinkData\artifacts'
ChargeLink global options can always override these locations:
chargelink `
--license $env:CHARGELINK_LICENSE `
--runtime-root $env:CHARGELINK_RUNTIME_ROOT `
--artifact-root $env:CHARGELINK_ARTIFACT_ROOT `
doctor --json
Firewall ports
Open only the ports required by your topology:
| Port | Transport | Purpose |
|---|---|---|
| 50051 | TCP | ChargeLink Integration API gRPC |
| 15118 | UDP/IPv6 | ISO 15118 SDP |
| 50118 | TCP/IPv6 | Common V2GTP session endpoint in examples |
| 18081 | TCP | Optional REST adapter |
Example for a local gRPC server:
New-NetFirewallRule -DisplayName 'ChargeLink gRPC 50051' `
-Direction Inbound -Protocol TCP -LocalPort 50051 -Action Allow
Upgrade
- Export or back up
C:\ChargeLinkData. - Stop sessions and services.
- Install the new package over the existing version.
- Open a new PowerShell window.
- Run
chargelink --version,chargelink license verify, andchargelink doctor --json. - Run your normal smoke recipe before reconnecting a physical test bench.

