# OCPP-Fehlercodes

Eine Salia-Ladestation meldet Fehler an das Backend über die Nachricht
`StatusNotification` von OCPP 1.6J. Das Feld `errorCode` enthält den
OCPP-Standardcode; bei den meisten Fehlern nennt das Feld `vendorErrorCode`
die genaue Ursache. Diese Seite listet alle Kombinationen, die die
Ladestation sendet.

Gilt ab Firmware 2.5.0 für alle Ladestationen mit Salia-Controller.

## Wie Fehler gemeldet werden

- **Immer nur ein Fehler.** Je Connector meldet die Ladestation nur den
  Fehler mit der höchsten Priorität. Die Tabellen unten sind nach Priorität
  sortiert. Ein weiter unten stehender Fehler wird mit der nächsten
  `StatusNotification` gemeldet, nachdem der darüberstehende behoben ist.
- **Connectoren.** Connector `1` ist der Ladepunkt. Connector `0` steht für
  die gesamte Ladestation und meldet `Faulted` bei den unten mit *0 und 1*
  gekennzeichneten stationsweiten Fehlern und bei `LocalListConflict`.
- **vendorId.** Ist ein `vendorErrorCode` gesetzt, enthält die Nachricht
  zusätzlich `vendorId`. Der Standardwert ist `com.in-tech.smartcharging`.
  Das Feld `info` wird nicht verwendet.
- **Status.** Die meisten Fehler setzen den Connector auf `Faulted`. Bei
  Fehlern mit dem Vermerk *aktueller Status* wird der Fehlercode mit dem
  Status gesendet, den der Connector in diesem Moment hat, zum Beispiel
  `Charging`; die Transaktion wird nicht beendet.
- **Neuverbindung.** Nach dem (Wieder-)Aufbau der Verbindung zum Backend
  sendet die Ladestation eine `StatusNotification` für Connector 0 und
  Connector 1. Ein noch bestehender Fehler wird so gemeldet. Ein Fehler, der
  offline aufgetreten und wieder verschwunden ist, wird nicht gemeldet.
- **Beenden einer Transaktion.** Beendet ein Fehler eine laufende
  Transaktion, sendet die Ladestation `StopTransaction` mit `reason` =
  `Other`. Ausnahme ist die Notabschaltung: Sie verwendet `reason` =
  `EmergencyStop`.
- **Reset Hard** bedeutet unten `Reset.req` vom Backend (`Hard` oder
  `Soft`; beide starten die gesamte Ladestation neu) oder Aus- und
  Wiedereinschalten der Ladestation vor Ort.

## Fehlerliste

### Schütz

| errorCode | vendorErrorCode | Connector | Bedeutung | Status | Auswirkung auf den Ladevorgang | Zurückgesetzt | Handlungsempfehlung |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `PowerSwitchFailure` | – | 1 | Die Rückmeldung des Leistungsschützes passt nicht zum Schaltbefehl. | Faulted | Eine laufende Transaktion wird beendet, der Ladepunkt abgeschaltet. | Spätestens durch Reset Hard. | Reset Hard. Tritt der Fehler erneut auf, insbesondere unter Last: Zuleitung, N/PE-Anschluss und Schütz durch eine Elektrofachkraft prüfen lassen und den eCharge-Service kontaktieren. |

### Steckerverriegelung (nur Varianten mit Steckdose)

| errorCode | vendorErrorCode | Connector | Bedeutung | Status | Auswirkung auf den Ladevorgang | Zurückgesetzt | Handlungsempfehlung |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `ConnectorLockFailure` | `PlugLockMotorCapNotCharged` | 1 | Der Energiespeicher des Verriegelungsmotors ist nach der Ladezeit nicht geladen. | Faulted | Eine laufende Transaktion wird beendet. | Spätestens durch Reset Hard. | Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren (Hardware der Verriegelung). |
| `ConnectorLockFailure` | `PlugLockMotorUnexpectedOpen` | 1 | Die Steckerverriegelung hat sich unerwartet geöffnet. Die Ladestation fährt die Verriegelung ganz auf. | Aktueller Status | Die Transaktion wird nicht beendet. | Spätestens durch Reset Hard. | Ladekabel abziehen und neu stecken, Steckdose auf Fremdkörper oder Beschädigung prüfen, Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren. |
| `ConnectorLockFailure` | `PlugLockMotorUnexpectedClose` | 1 | Die Steckerverriegelung hat sich unerwartet geschlossen. | Faulted | Eine laufende Transaktion wird beendet. | Spätestens durch Reset Hard. | Wie oben. |
| `ConnectorLockFailure` | `PlugLockCannotLock` | 1 | Die Verriegelung erreicht auch nach mehreren Versuchen nicht die verriegelte Position. | Faulted | Eine laufende Transaktion wird beendet. | Spätestens durch Reset Hard. | Prüfen, ob der Stecker vollständig eingesteckt ist, dann wie oben. |
| `ConnectorLockFailure` | `PlugLockCannotUnlock` | 1 | Die Verriegelung erreicht die entriegelte Position nicht; das Kabel lässt sich unter Umständen nicht entnehmen. | Faulted | Eine laufende Transaktion wird beendet. | Spätestens durch Reset Hard. | `UnlockConnector` senden oder Reset Hard. Lässt sich das Kabel weiterhin nicht entnehmen, entriegelt eine Elektrofachkraft manuell; eCharge-Service kontaktieren. |
| `ConnectorLockFailure` | `PlugLockMotorDriverFault` | 1 | Der Motortreiber der Steckerverriegelung meldet einen Fehler. | Faulted | Eine laufende Transaktion wird beendet. | Spätestens durch Reset Hard. | Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren (Hardware der Verriegelung). |
| `ConnectorLockFailure` | `unknown` | 1 | Ein nicht näher klassifizierter Fehler der Steckerverriegelung. | Faulted | Eine laufende Transaktion wird beendet. | Spätestens durch Reset Hard. | Wie bei `PlugLockMotorUnexpectedOpen`. |

### Energiezähler

| errorCode | vendorErrorCode | Connector | Bedeutung | Status | Auswirkung auf den Ladevorgang | Zurückgesetzt | Handlungsempfehlung |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `PowerMeterFailure` | `CommunicationError` | 1 | Der Energiezähler antwortet nicht oder wurde beim Start nicht gefunden. | Faulted | Die Energieabgabe stoppt, eine neue Transaktion kann nicht starten. Eine laufende Transaktion bleibt offen, bis das Fahrzeug abgesteckt wird. | Automatisch, sobald der Zähler wieder antwortet. | Reset Hard. Bleibt der Fehler bestehen: Versorgung und Busverkabelung des Zählers durch eine Elektrofachkraft prüfen lassen; eCharge-Service kontaktieren. |
| `PowerMeterFailure` | `InternalError` | 1 | Eine Anfrage nach Messwerten oder signierten Messwerten wurde nicht innerhalb von 11 Sekunden beantwortet. | Faulted | Eine laufende Transaktion wird beendet, unter Umständen ohne signierten Datensatz. | Reset Hard. | Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren. |
| `PowerMeterFailure` | `IdleMeterError` | 1 | Nur eichrechtskonforme Varianten: unerwarteter Zustandswechsel des Zählers außerhalb einer Transaktion. | Faulted | Eine laufende Transaktion wird beendet. | Reset Hard. | Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren. |
| `PowerMeterFailure` | `ActiveMeterError` | 1 | Nur eichrechtskonforme Varianten: unerwarteter Zustandswechsel des Zählers während einer Transaktion. | Faulted | Eine laufende Transaktion wird beendet, unter Umständen ohne signierten Datensatz. | Reset Hard. | Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren. |

### RFID-Leser

| errorCode | vendorErrorCode | Connector | Bedeutung | Status | Auswirkung auf den Ladevorgang | Zurückgesetzt | Handlungsempfehlung |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `ReaderFailure` | – | 1 | Der RFID-Leser antwortet nicht (nur bei aktiviertem RFID). | Aktueller Status | Der Ladevorgang wird nicht unterbrochen. Karten können nicht gelesen werden; `RemoteStartTransaction` funktioniert weiterhin. | Automatisch, sobald der Leser wieder antwortet. | Reset Hard. Bleibt der Fehler bestehen: eCharge-Service kontaktieren (RFID-Modul). |

### Fehlerstromüberwachung

| errorCode | vendorErrorCode | Connector | Bedeutung | Status | Auswirkung auf den Ladevorgang | Zurückgesetzt | Handlungsempfehlung |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `GroundFailure` | `RcdGroundFailure` | 1 | Die Fehlerstromüberwachung hat einen Fehlerstrom erkannt. | Faulted | Eine laufende Transaktion wird beendet. | Spätestens durch Reset Hard. | Fahrzeug abstecken und mit einem anderen Fahrzeug testen. Tritt der Fehler nur bei einem Fahrzeug auf, Fahrzeug und Ladekabel prüfen lassen. Tritt er bei allen Fahrzeugen auf, die Installation durch eine Elektrofachkraft prüfen lassen. |
| `GroundFailure` | `SpuriousRcdError` | 1 | Die Fehlerstromüberwachung befindet sich in einem unerwarteten Zustand. | Faulted | Eine laufende Transaktion wird beendet; der Ladepunkt bleibt gesperrt. | Reset Hard. | Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren. |
| `GroundFailure` | `RcdTestError` | 1 | Der periodische Selbsttest der Fehlerstromüberwachung ist fehlgeschlagen. | Faulted | Eine laufende Transaktion wird beendet; der Ladepunkt bleibt gesperrt. | Reset Hard. | Reset Hard. Tritt der Fehler erneut auf: eCharge-Service kontaktieren (Fehlerstrommodul). |

### Weitere Fehler

| errorCode | vendorErrorCode | Connector | Bedeutung | Status | Auswirkung auf den Ladevorgang | Zurückgesetzt | Handlungsempfehlung |
| --- | --- | --- | --- | --- | --- | --- | --- |
| `OtherError` | `EmergencyShutdown` | 0 und 1 | Der Notabschalteingang der Ladestation ist ausgelöst (externe Abschaltung). | Faulted | Eine laufende Transaktion wird mit `reason` = `EmergencyStop` beendet; der Ladepunkt ist gesperrt. | Automatisch, sobald der Eingang wieder frei ist. | Ursache der externen Abschaltung vor Ort klären. Danach meldet die Ladestation von selbst wieder `Available`. |
| `OtherError` | `RcdRecloserFailure` | 1 | Nur mit konfigurierter Wiedereinschalteinrichtung (Recloser): Diese meldet einen Fehler. | Aktueller Status | Der Ladevorgang wird durch OCPP nicht unterbrochen. | Automatisch, sobald der Recloser keinen Fehler mehr meldet. | Recloser und Fehlerstromschutzeinrichtung durch eine Elektrofachkraft prüfen lassen. |
| `OtherError` | `Persistence…` (siehe unten) | 0 und 1 | Interner Speicherfehler: Die lokale Transaktionsdatenbank der Ladestation kann nicht gelesen oder geschrieben werden. Der Code nennt die fehlgeschlagene Operation. | Connector 0: Faulted. Connector 1: Faulted, wenn der Fehler im Betrieb auftritt; lässt sich der Speicher beim Start nicht öffnen, behält Connector 1 seinen normalen Status (z. B. `Available`). | Der Ladepunkt ist gesperrt; eine neue Transaktion kann nicht starten. | Reset Hard. | Reset Hard. Tritt der Fehler nach dem Neustart erneut auf: aktuelle Firmware einspielen und eCharge-Service kontaktieren. |
| `OtherError` | `CpShortCircuit` | 1 | Kurzschluss auf der Control-Pilot-Leitung (Ladekabel oder Fahrzeug). | Faulted | Eine laufende Transaktion wird beendet. | Automatisch, sobald der Kurzschluss behoben ist. | Fahrzeug abstecken, Ladekabel und Fahrzeugstecker auf Beschädigung prüfen. Tritt der Fehler ohne Fahrzeug auf: eCharge-Service kontaktieren. |
| `OtherError` | `ProximityNoCable` | 1 | Nur Varianten mit Steckdose: Während des Ladens wird kein Ladekabel mehr erkannt. | Aktueller Status, einmalig gesendet | Die Energieabgabe stoppt; die Transaktion bleibt offen, bis das Fahrzeug abgesteckt wird. | Keine eigene Entwarnung; die nächste `StatusNotification` (Statuswechsel) enthält `NoError`. | Ladekabel prüfen oder ein anderes verwenden. |
| `OtherError` | `ProximityInvalid` | 1 | Nur Varianten mit Steckdose: ungültiger Kodierwiderstand im Ladekabel. | Aktueller Status, einmalig gesendet | Die Energieabgabe stoppt; die Transaktion bleibt offen, bis das Fahrzeug abgesteckt wird. | Keine eigene Entwarnung; die nächste `StatusNotification` (Statuswechsel) enthält `NoError`. | Ein Ladekabel nach IEC 61851 verwenden. |
| `OtherError` | `ProximityChanged` | 1 | Nur Varianten mit Steckdose: Der Kodierwiderstand des Ladekabels hat sich während des Ladens geändert. | Aktueller Status, einmalig gesendet | Der Ladevorgang läuft weiter. | Keine eigene Entwarnung; die nächste `StatusNotification` (Statuswechsel) enthält `NoError`. | Ladekabel auf Beschädigung oder Wackelkontakt prüfen oder tauschen. |
| `LocalListConflict` | – | 0 | Die Antwort des Backends (`idTagInfo`) widerspricht der lokalen Autorisierungsliste der Ladestation. | Faulted (nur Connector 0) | Keine Auswirkung auf den Ladevorgang. | Sobald ein `SendLocalList` angenommen wird. | Lokale Autorisierungsliste mit `SendLocalList`, `updateType` = `Full`, erneut senden. |

Die Codes für Speicherfehler lauten `PersistenceOpenFailed`,
`PersistencePrepareFailed`, `PersistenceFinalizeFailed`,
`PersistenceCountError`, `PersistenceClearError`, `PersistenceUpdateFailed`,
`PersistenceDropFailed`, `PersistenceTransactionFailed`,
`PersistenceCreateFailed`, `PersistenceInsertFailed`,
`PersistenceDeleteFailed`, `PersistenceUnlinkDenied`,
`PersistenceReadOnly`, `PersistenceInvalidType`,
`PersistenceTooManyTransactions` und `PersistenceNoInsertRowId`. Sie haben alle dieselbe Bedeutung und dieselbe
Handlungsempfehlung.

Proximity-Fehler werden nur gesendet, während die Ladestation mit dem
Backend verbunden ist, höchstens einmal alle 10 Sekunden, und werden offline
nicht zwischengespeichert.

## Codes, die die Ladestation nicht sendet

Folgende OCPP-1.6-Fehlercodes werden nicht verwendet:
`EVCommunicationError`, `HighTemperature`, `InternalError`,
`OverCurrentFailure`, `OverVoltage`, `ResetFailure`, `UnderVoltage`,
`WeakSignal`.
