A DC fast charge is a negotiation before it is a flow of power. The car and charger find each other, agree on a language, prove who they are, state their limits, test the cable's insulation, match voltages and only then close their contactors. Each protocol does this its own way: CCS talks IPv6 over the pilot wire, CHAdeMO mixes relays with CAN, GB/T powers the car's battery manager before it says hello. Pick a protocol and press play; switch protocols to see the same car on the same charger in each one.
Carried on: HomePlug Green PHY on the Control Pilot, IPv6, TCP or TLS
Plug-in
0.0 s · 0 V · 0 A · 20 % SoC
The vehicle loads the pilot and it drops from 12 V to 9 V (state B). The charger answers with a 5 % duty cycle: "we talk digitally". No current is offered over the pilot in DC.
IEC 61851-1 Electric vehicle conductive charging system — Part 1: General requirements. Ed. 3.0, 2017.
ISO 15118-3 Road vehicles — Vehicle to grid communication interface — Part 3: Physical and data link layer requirements. 2015.
EVerest libslac Open-source SLAC (ISO 15118-3) implementation: message types, counts and timers. GitHub, 2026.
pyPLC Open-source CCS EV/charger emulator over HomePlug: V2GTP framing, SDP and decoded session captures. GitHub, 2026.
ISO 15118-2 Road vehicles — Vehicle to grid communication interface — Part 2: Network and application protocol requirements (message schemas published openly by ISO). 2014; XSD schemas.
Josev Open-source ISO 15118 / DIN 70121 implementation (SwitchEV iso15118): message order and timeouts. GitHub, 2026.
EVerest EVerest open-source charging stack (Linux Foundation Energy): bring-up guide, IEC 61851 checks, and the EvseManager DC sequence (cable check voltage, insulation limits, pre-charge current). documentation, 2026.
IEC 61851-23 Electric vehicle conductive charging system — Part 23: DC electric vehicle supply equipment. Ed. 2.0, 2023.
Values are paraphrased from the standards, not quoted. Voltages and currents on this page are computed from the nominal component values; real hardware sits anywhere inside the tolerances.
Message order, names and fields follow the published schemas and open-source implementations listed under Sources. Exact timings vary between cars and chargers: the ones here sit inside each protocol's timeouts and match published captures where those exist, but they are representative, not measured. The battery and its charging curve are illustrative, not any particular car, and the same model drives every protocol so they compare like for like.