Arcbound FieldThe EVSE DirectorySubscribe
← Guides

Protocol guide

OCPP Faulted triage map

Walk StatusNotification Faulted to the right subsystem before you open the cabinet.

OCPP Faulted triage map

When you use this / what it is not

Use this when a charger reports Faulted (or flips between Faulted and Unavailable) and you need a field path from “CSMS says Faulted” to a subsystem you can actually touch. It is written for depot and public-site technicians who already know LOTO and basic OCPP message names.

This is not:

  • An OEM service manual, wiring diagram, or firmware release note
  • A substitute for brand-specific fault-code tables (those live in The EVSE Directory and OEM docs)
  • Authority to clear protective faults by force-reset without finding the cause
  • Network engineering for the site ISP beyond “can the charger reach the CSMS?”

Arcbound Field style: confirm presentation first, then branch. Do not open the power section because StatusNotification said Faulted until you know whether the fault is software-latched, isolation, contactor, cooling, or payment stack.

How Faulted presents

On the cabinet

  • HMI / display: “Fault,” “Error,” red banner, vendor code (e.g. E042, Fault 12), or generic “Out of service”
  • LED strip: solid red, blinking red, or amber+red depending on OEM
  • Connector LEDs: sometimes stay green while HMI is Faulted — trust StatusNotification over cosmetics
  • Local beep / relay click then silence: often contactor open after fault latch

In OCPP / CSMS

  • StatusNotification with status=Faulted (OCPP 1.6) or equivalent in 2.0.1 StatusNotification / NotifyEvent
  • Often paired with errorCode (1.6): GroundFailure, OverCurrentFailure, PowerMeterFailure, ReaderFailure, InternalError, OtherError, etc.
  • info / vendorErrorCode may carry the real OEM string — log that string verbatim
  • Connector may show Faulted while Charge Point status stays Available (multi-connector cabinets)
  • After reboot: brief Available → Preparing → Faulted again = hard latch, not “needs reboot”
StatusTypical meaningDo not treat as Faulted
UnavailableIntentionally offline, maintenance, or soft lockoutCheck ChangeAvailability, LMS, or admin UI
SuspendedEVVehicle paused demandSession alive; check EV
SuspendedEVSEEVSE paused (load mgmt, tariff, cooling)Look at LMS / thermal
Occupied / ChargingSession runningIf customer says “broken,” check power/kWh
FinishingSession endingWait; do not yank cable

Decision tree

Start: Capture CSMS screenshot + vendorErrorCode + firmware + which connector + last successful session time.

Branch A — Faulted only on CSMS, cabinet looks Available

  1. Force a local status refresh (OEM button / reconnect cable / Authorize).
  2. Compare wall-clock of last Heartbeat vs last StatusNotification.
  3. If Heartbeat alive and status stale → CSMS mapping / connector ID mismatch (see Branch G).
  4. If no Heartbeat → network path (Branch F).

Branch B — Faulted immediately on boot (before any plug)

  1. Note whether AC mains contactor closes.
  2. Check ground / isolation / residual current faults in HMI first.
  3. Inspect door switches, E-stop, fire panel inhibit, BESS interlock.
  4. If E-stop / door / fire → clear external inhibit, then reset per OEM.
  5. If isolation / RCD / GFCI → do not keep resetting; measure (Branch C).

Branch C — Faulted when cable plugged (before CurrentDemand / power)

  1. Record: PP/CP present? Lock engaged? Vehicle authenticated?
  2. If fails at CableCheck / isolation → treat as DC path / contactor / IMD (CCS guide + OEM).
  3. If fails at Authorize → payment / RFID / FreeVend / PnC (metering & ISO 15118 guides).
  4. If fails with ConnectorLockFailure → latch, actuator, debris, bent pin.

Branch D — Faulted mid-session

  1. Pull MeterValues / power curve if CSMS has them.
  2. Sudden drop to 0 A + Faulted → contactor open, IMD, overcurrent, coolant, grid under-voltage.
  3. Slow derate then Faulted → thermal / cooling loop.
  4. Faulted only on one vehicle model → handshake / EV side; verify with known-good EV.

Branch E — Faulted after firmware or SIM change

  1. Roll back only if OEM procedure allows and site policy permits.
  2. Confirm OCPP URL, chargeBoxId, basic auth / cert still valid.
  3. Re-pair payment terminal if ReaderFailure appears after update.
  1. Ping path: charger modem → site firewall → CSMS endpoint.
  2. Cellular: RSRP/RSRQ, APN, SIM lock, data cap.
  3. Ethernet: link light, PoE injector (if used), VLAN, DNS.
  4. TLS cert expiry can look like “offline” then Faulted on some stacks — check clock + cert dates.

Branch G — Wrong connector mapping

  1. Plug connector 1 only; watch which CSMS connector flips.
  2. If CSMS connector 2 flips → remap / fix config; do not swap cables blindly without labeling.

Ranked causes (field notes)

  1. Latched protective trip (IMD, RCD, overcurrent, emergency stop) — Most common “real” Faulted. Reset without root cause = callback. Field note: photograph HMI code before reset; one controlled reset max while measuring.
  2. Door / interlock / fire panel / BESS inhibit — Cabinet “faulted” with no power section damage. Field note: ask site if fire panel was tested today.
  3. Cooling / flow / overtemp — Mid-session Faulted on high-power DC. Field note: feel cable near handle (careful); check pump LEDs / coolant sight glass.
  4. Payment reader / PED / RFIDReaderFailure or Faulted only when starting paid sessions; FreeVend may still work. Field note: try FreeVend or RFID known-good card before opening power bay.
  5. Meter / CT / Mid failurePowerMeterFailure; sessions may start then abort. Field note: compare local kWh to CSMS MeterValues.
  6. Contactor / weld detect / precharge — Plug works, CableCheck fails or opens under load. Field note: listen for double-click; measure DC bus only under LOTO + OEM procedure.
  7. Firmware / config after remote update — Cluster of sites same night. Field note: check CSMS change log before replacing hardware.
  8. Connector lock / PP — Mechanical. Field note: inspect for gum, ice, bent latch; cycle lock with OEM service menu if available.
  9. CSMS / chargeBoxId / connector map — Phantom Faulted. Field note: local HMI Available while CSMS Faulted.
  10. Vehicle-side abort reported poorly — Some stacks map EV abort to Faulted/OtherError. Field note: second vehicle test mandatory before condemning EVSE.

Step procedures

Procedure 1 — Capture the fault package (5–10 min)

Tools: phone camera, CSMS access, notepad.

  1. Photo HMI error, LED state, connector number, nameplate firmware if visible.
  2. In CSMS: export last 24h StatusNotification + BootNotification + any MeterValues around fault.
  3. Record: vendorErrorCode, errorCode, chargeBoxId, connectorId, firmware string.
  4. Ask: last successful charge? Any construction / power work? Recent firmware? Expected: Enough data that OEM Level 2 can accept the ticket without a second site visit for “what was the code?”

Procedure 2 — Soft clear vs hard latch (only after capture)

Tools: OEM reset key / HMI path.

  1. If E-stop in: twist-reset E-stop; confirm door closed.
  2. Attempt one fault clear per OEM (do not hold power button for 30s as folklore).
  3. If returns in <60s without a plug → hard latch; go to inhibit / isolation checks.
  4. If clears and stays Available → run known-good session before leaving. Expected: Stable Available ≥5 min idle, then successful auth + power.

Procedure 3 — Inhibit and safety chain

Tools: multimeter (CAT-rated), OEM pinout if available, LOTO kit.

  1. LOTO AC feed if you will open power section. Verify zero energy.
  2. Check E-stop continuity, door switch, fire alarm contact (often NC dry contact).
  3. If BESS/site EMS present: confirm EVSE enable signal / dry contact. Expected: Enable circuit closed when site is “safe to charge.” Open contact with healthy HMI = wiring/panel, not power module.

Procedure 4 — Network vs charger

Tools: laptop, speedtest APN docs, Ethernet tap if allowed.

  1. Confirm Heartbeat interval (typically 300–900s) and last seen time.
  2. Local UI: IP, DNS, gateway, OCPP URL.
  3. Cellular: swap known-good SIM only if site allows and ICCID documented. Expected: Heartbeat resumes; StatusNotification matches HMI within one interval.

Procedure 5 — Session validation

Tools: known-good RFID / app / FreeVend, known-good EV if available.

  1. Authorize → StartTransaction / TransactionEvent.
  2. Confirm MeterValues streaming (or at least Start/Stop meter).
  3. Stop cleanly; confirm StopTransaction and connector returns Available. Expected: No Faulted; energy >0 if power flowed.

Safety / LOTO

  • Treat every Faulted DC cabinet as possibly energized until verified dead.
  • PPE per NFPA 70E and site rules; DC bus capacitors store lethal energy after AC LOTO.
  • Never defeat door switches or IMD to “prove” the charger works.
  • One controlled reset is diagnostics; repeated resets are negligence.
  • If you smell coolant or ozone, stop, ventilate, escalate — do not keep cycling contactors.

When to escalate

Escalate to OEM / Level 2 when:

  • Same vendorErrorCode returns after inhibit clear + one reset + known-good EV fails
  • Isolation / IMD / RCD trips under CableCheck with intact cable (possible power module)
  • Contactor weld suspicion, burnt smell, visible arcing damage
  • Firmware brick / boot loop after update

Escalate to site electrician / utility when:

  • Feeder breaker trips, severe undervoltage, lost phase
  • Ground bond missing or high impedance earth

Escalate to CSMS / network when:

  • HMI Available, Heartbeat dead, or connector mapping wrong across the depot

Escalate to BESS / fire vendor when:

  • Fire panel or BESS interlock holds EVSE offline — do not jumper

Document firmware, parts swapped, and which branch you closed. Confirm working procedures back into The EVSE Directory so the next tech does not repeat dead ends.

Field worksheet — Faulted call

Fill this on site before you leave. It keeps callbacks honest.

ItemValue
Site / stall
chargeBoxId
Connector
Firmware
HMI code
OCPP errorCode
vendorErrorCode
Last good session
Presentation match CSMS? Y/N
Heartbeat age
Branch closed (A–G)
One reset attempted? Y/N
Known-good EV result
Parts replaced
Escalate to

OCPP 1.6 vs 2.0.1 notes that change triage

OCPP 1.6

  • StatusNotification is your primary signal. errorCode is enum-limited; real detail is usually in info + vendorErrorCode.
  • StartTransaction conf = Rejected is not Faulted. Do not open the power section for an auth reject.
  • Missing StopTransaction after a hard power cut can leave CSMS thinking Occupied while HMI shows Faulted/Available — reconcile before swapping meters.

OCPP 2.0.1

  • Transaction model uses TransactionEvent / RequestStartTransaction. Fault presentation may arrive as NotifyEvent with component/variable (e.g. Connector, Evse, Monitoring).
  • ChargingState and TX_DefaultProfile issues can look like “broken charger” while status is Occupied/SuspendedEVSE.
  • Component-oriented monitoring: capture component name + variable + value in the ticket; OEM Level 2 expects that string, not “it said fault.”

Mixed fleets

Depots often run 1.6 cabinets beside 2.0.1. CSMS adapters sometimes translate Faulted poorly. If one new cabinet is “always Faulted” on day one, verify the adapter mapping before condemning hardware.

Connector-level vs EVSE-level

Multi-gun cabinets:

  1. Faulted on connector 2 only → stay on that gun’s lock, meter channel, DC contactor pair, or cable assembly.
  2. Faulted on all connectors at once → shared: AC infeed, main PLC, modem, payment host path, site inhibit, cabinet overtemp.
  3. Alternating Faulted after each session → cooling recovery time, or a sticky contactor weld-detect that clears when cool.

Never “fix the other gun” by swapping only the cable if the fault is on the power module channel — label both ends and follow OEM channel maps.

Common false friends

  • Offline ≠ Faulted. Offline is transport. Faulted is application/protection state. Fixing the SIM does not clear an IMD latch.
  • SuspendedEVSE ≠ Faulted. Load management holding current at 0 A is policy, not a broken power stage.
  • Unavailable after ChangeAvailability is intentional. Ask who set it before you LOTO.
  • Customer app error can show “station fault” when Authorize timed out. Confirm OCPP before assuming Faulted.
  • Boot storm: cabinet reboots every few minutes (watchdog). CSMS may show Faulted flickers. Capture uptime counters / boot reasons if OEM UI exposes them.

Deep dive — isolation and ground faults reported via OCPP

When errorCode=GroundFailure or vendor string mentions IMD / isolation / RCD:

  1. Do not keep starting sessions.
  2. Inspect cable and handle for cuts, moisture, bent PE.
  3. If outdoor and raining: temporary moisture can trip; dry and retest once.
  4. If dry site and immediate re-trip: escalate — insulation breakdown inside cable or cabinet.
  5. Record humidity, puddles, pressure wash schedule (sites love washing cabinets).

Expected field reading (when OEM allows insulation test under LOTO): follow OEM min MΩ; if you lack the procedure, do not invent a megger plan on a live DC bus.

Deep dive — payment-induced Faulted

Symptoms: FreeVend works; app/RFID fails and HMI goes Faulted or ReaderFailure.

  1. Check PED online status and last host settlement.
  2. Reseat reader USB/serial; confirm 5 V / 12 V rail as OEM specifies.
  3. Replace reader only after host ping succeeds — many “bad readers” are VLAN/firewall.
  4. After reader swap: re-commission keys if required; a new PED without keys looks dead.

Deep dive — meter faults

PowerMeterFailure mid-rollout of new firmware is common.

  1. Compare Start meter vs Stop meter; if both zero with power flow on clamp → meter path bad.
  2. CT orientation wrong can yield negative or absurd kWh and some stacks fault.
  3. Seal / MID meters: do not break certification seals unless authorized; escalate.

Closeout checklist

  • Photos of HMI + nameplate attached to ticket
  • vendorErrorCode copied exactly (case-sensitive)
  • Branch documented
  • One reset policy followed
  • Known-good session completed or escalate reason written
  • Site contact told what to watch for (retrip, offline, reader)
  • Directory search used; confirm fix if your procedure worked

If you leave the site Available without a successful session after a Faulted call, say so in the ticket. Optimism is not a status.

Need an OEM-specific fault code? Open the fault database · Subscribe