Easee Home und Wallbox Pulsar KNX-Integration via OCPP 1.6J Gateway
Die Verbindung von Easee Home und Wallbox Pulsar Plus EV-Ladegeräten mit KNX über ein zentrales OCPP 1.6J-System ermöglicht der Gebäudeautomationsebene die Steuerung des Ladestroms, die Überwachung der Sitzungsenergie, die Auslösung der RFID-Autorisierung über eine KNX-Szene und die Implementierung von PV-Eigenverbrauchsladen – alles koordiniert über standardmäßige KNX-Gruppenadressen.
OCPP 1.6J Übersicht und Einrichtung des lokalen Modus
OCPP (Open Charge Point Protocol) 1.6J ist ein WebSocket-basiertes Protokoll, das die Ladestation (EV-Ladegerät-Hardware) vom Ladeinfrastruktur-Managementsystem (CPMS, auch Zentralsystem genannt) trennt. Sowohl Easee Home als auch Wallbox Pulsar Plus implementieren OCPP 1.6J nativ und ermöglichen jedem kompatiblen Zentralsystem – ob in der Cloud oder lokal gehostet – die Steuerung und Überwachung.
Für die KNX-Integration ist der zuverlässigste Ansatz die Verwendung eines lokalen OCPP-Zentralsystems anstelle der Hersteller-Cloud, wodurch die Cloud-Abhängigkeit entfällt und eine unter einer Sekunde liegende Latenz für Steuerbefehle erreicht wird. Home Assistant mit dem OCPP-Integrations-Add-on oder IP-Symcon mit dem OCPP-Modul sind die beiden praktischen Optionen für ein lokales Zentralsystem, die auch Gruppenadressen-Brücken zu KNX bereitstellen.
Easee Home – Aktivieren des lokalen OCPP-Modus
1. Open Easee app → select charger → Settings → Advanced Scroll to OCPP — select "Custom OCPP server" 2. Enter local OCPP WebSocket URL: ws://<home-assistant-ip>:9000/Easee01 (port 9000 is HA OCPP add-on default; /Easee01 = charger ID) 3. OCPP version: OCPP 1.6J (select from dropdown) Authentication: leave blank for local unauthenticated setup or set a shared secret if HA OCPP requires it 4. Save — charger will attempt WebSocket connection within 30s HA OCPP add-on log: "New charge point connected: Easee01" Note: Easee also supports cloud OCPP via api.easee.cloud Use local mode for KNX integration — removes cloud dependency
Wallbox Pulsar Plus – Aktivieren des lokalen OCPP-Modus
1. Open myWallbox app → charger settings → Smart charging
Select OCPP → Custom OCPP server
2. OCPP URL: ws://<home-assistant-ip>:9000/WallboxPulsar01
OCPP version: OCPP 1.6J
Charge point ID: WallboxPulsar01
3. Alternatively via Wallbox local REST API:
POST http://<wallbox-ip>/api/2/ocpp/setConfig
{"ocppServer": "ws://<ha-ip>:9000/WallboxPulsar01"}
4. Verify: HA OCPP logs confirm "WallboxPulsar01 connected"
Status should show: Available (no EV plugged in)KNX-Gruppenadressschema für die Steuerung von EV-Ladegeräten
Das KNX-Gruppenadresslayout verbindet OCPP-Parameter mit KNX-Datentypen. Die HA-KNX-Integration (XKNX-Bibliothek) liest und schreibt diese GAs und übersetzt zwischen KNX-DPT-Werten und OCPP-Protokollnachrichten. Jedes Ladegerät in einer Multi-Ladegerät-Installation erhält seinen eigenen GA-Satz in einer dedizierten Untergruppe.
| Gruppenadresse | Beschreibung | DPT | Richtung |
|---|---|---|---|
| 10/0/0 | Ladestromsollwert 0–32 A | DPT 5.001 (1-Byte %) | KNX → OCPP (Schreiben) |
| 10/0/1 | Ladegerät aktiv / Freigabe | DPT 1.001 (1-Bit) | KNX → OCPP (Schreiben) |
| 10/0/2 | Geladene Energie pro Sitzung in kWh | DPT 13.013 (4-Byte vorzeichenbehaftet kWh) | OCPP → KNX (lesen) |
| 10/0/3 | Stecker verbunden Status | DPT 1.001 (1-Bit) | OCPP → KNX (lesen) |
| 10/0/4 | Ladegerätstatus (0=verfügbar, 1=ladend, 2=gestört) | DPT 5.010 (1-Byte Enum) | OCPP → KNX (lesen) |
| 10/0/5 | RFID-Autorisierungsauslöser | DPT 1.001 (1-Bit, steigende Flanke) | KNX → OCPP (Schreiben) |
DPT 5.001 für Ladestrom: Das 1-Byte-Prozent-DPT codiert 0–100 % als 0–255. Ein Wert von 50 % (128) entspricht 16 A an einem 32-A-Ladegerät. Für Easee Home (max. 16 A) wird 0–100 % auf 0–16 A in der HA-Automatisierung abgebildet. Für Wallbox Pulsar Plus 3-phasig (max. 32 A) wird 0–100 % auf 0–32 A abgebildet. Alternativ kann DPT 5.010 unsigned byte verwendet werden, um 0–32 direkt auf Ampere abzubilden.
Home Assistant OCPP-zu-KNX-Bridge-Konfiguration
Home Assistant fungiert als OCPP-Zentralsystem und gleichzeitig als KNX-IP-Schnittstellen-Gateway. Das HA-OCPP-Integrations-Add-on erstellt Entitäten für jeden Ladepunkt, und HA-Automatisierungen übersetzen KNX-GA-Schreibvorgänge in OCPP-Befehle und umgekehrt.
HA configuration.yaml — KNX-Entitäten für EV-Ladestation
# configuration.yaml
knx:
sensor:
- name: "EV Charger 1 Current Setpoint"
state_address: "10/0/0"
type: "percent" # DPT 5.001
binary_sensor:
- name: "EV Charger 1 Enable"
state_address: "10/0/1"
- name: "EV Charger 1 Plug Connected"
state_address: "10/0/3"
number:
- name: "EV Charger 1 Current Control"
address: "10/0/0"
min: 0
max: 100
type: "percent"
switch:
- name: "EV Charger 1 Active"
address: "10/0/1"
state_address: "10/0/1"
# automation.yaml — KNX GA write → OCPP SetChargingProfile
automation:
- alias: "EV Charger 1 — KNX current setpoint to OCPP"
trigger:
- platform: state
entity_id: sensor.ev_charger_1_current_setpoint
action:
- service: ocpp.set_max_charge_rate_amps
data:
charge_point_id: "Easee01"
charge_rate: >
{{ (trigger.to_state.state | float) * 0.16 | round(0) }}HA-Automatisierung — PV-Überschuss → OCPP SetChargingProfile
# Triggered when KNX solar surplus GA (9/0/1) updates
automation:
- alias: "EV Solar Self-Consumption — Surplus to Charge Current"
trigger:
- platform: state
entity_id: sensor.knx_solar_surplus_w
condition:
- condition: state
entity_id: binary_sensor.ev_charger_1_plug_connected
state: "on"
action:
- choose:
- conditions:
- condition: numeric_state
entity_id: sensor.knx_solar_surplus_w
above: 2500
sequence:
- service: ocpp.set_max_charge_rate_amps
data:
charge_point_id: "Easee01"
charge_rate: >
{{ [[(states('sensor.knx_solar_surplus_w')|float / 230)|round(0), 6]|max, 16]|min }}
- conditions:
- condition: numeric_state
entity_id: sensor.knx_solar_surplus_w
below: 1400
sequence:
- service: ocpp.stop_transaction
data:
charge_point_id: "Easee01"IP-Symcon OCPP-Modul als alternatives Zentralsystem
IP-Symcon (IPS) ist eine Windows/Linux-Home-Automation-Plattform mit nativer KNX-Unterstützung und einem OCPP-Modul, das im IPS-Marktplatz erhältlich ist. Für Installationen, in denen IP-Symcon bereits als KNX-Logik- und Visualisierungsplattform dient, vermeidet das IPS-OCPP-Modul die Einführung eines separaten Home Assistant-Servers.
IP-Symcon OCPP + KNX Konfiguration
1. Install IPS OCPP module from marketplace
Create OCPP Central System instance:
Port: 9000 (WebSocket server, IPS listens)
Charge Point ID: Easee01
2. IPS OCPP variables auto-created per charger:
MaxChargingCurrent (0–32A integer)
ChargerStatus (string: Available/Charging/Faulted)
SessionEnergyWh (float)
PlugConnected (boolean)
3. Link IPS OCPP variables to KNX via IPS KNX module:
KNX device → Group Address 10/0/0 → link to MaxChargingCurrent
KNX device → GA 10/0/2 → link to SessionEnergyWh (send on change)
4. IPS script for solar surplus → charge current:
$surplus = GetValue(12345); // KNX GA 9/0/1 variable ID
$current = max(6, min(16, round($surplus / 230)));
if ($surplus > 2500) {
SetValue(OCPP_MaxCurrent_ID, $current);
} elseif ($surplus < 1400) {
OCPP_StopTransaction("Easee01");
}PV-Eigenverbrauch Ladeablauf
Der Eigenverbrauch-Ladeablauf beschreibt den vollständigen Regelkreis von der KNX-Überschusserkennung bis zur OCPP-Stromanpassung – einschließlich der Hystereselogik, die ein schnelles Umschalten verhindert, wenn die Solarerzeugung um die Mindestschwelle schwankt.
PV-Eigenverbrauch Ladeablauf
1. KNX GA 9/0/1 (Grid Power, signed W) published by
Intesis IN701KNX gateway reading Fronius Modbus register 40225
Poll interval: 10 seconds
2. KNX logic (MDT Logic Module or HA automation) evaluates:
IF Grid Power < −2500W (exporting > 2.5 kW):
→ Calculate OCPP current: surplus_W ÷ 230V
→ Clamp: max(6, min(16, calculated_A)) for Easee Home
→ Write clamped value to GA 10/0/0 (charge current)
→ HA/IPS translates GA write → OCPP SetChargingProfile
3. OCPP SetChargingProfile message:
{
"connectorId": 1,
"csChargingProfiles": {
"chargingProfileKind": "TxProfile",
"chargingSchedule": {
"chargingRateUnit": "A",
"chargingSchedulePeriod": [{"startPeriod": 0, "limit": <amps>}]
}
}
}
4. Charger applies new limit within 5–10 seconds
KNX GA 10/0/2 (Session Energy kWh) updates every 60s
5. IF Grid Power > −1400W (surplus dropped below 1.4 kW):
→ Wait 120 seconds (hysteresis — solar cloud pass-through)
→ IF still < 1400W → OCPP StopTransaction
→ Charger status: Suspended / AvailableRFID-Autorisierungsauslöser über KNX-Szene
Standardmäßiges OCPP-Laden erfordert, dass der Fahrer eine RFID-Karte vorlegt oder eine App zur Autorisierung einer Sitzung verwendet. Für KNX-Installationen im Wohnbereich, bei denen der Bewohner das Laden über einen wandmontierten KNX-Taster oder einen zeitbasierten Zeitplan starten möchte, kann eine KNX-ausgelöste RFID-Autorisierung eine Sitzung ohne physische Kartenvorlage starten.
KNX-Szene → RFID-Autorisierung OCPP-Ablauf
KNX push button (Scene 5 = "EV Start Charging"):
→ GA 10/0/5 (RFID authorize trigger) → DPT 1.001 value 1
HA automation triggered by GA 10/0/5:
- service: ocpp.authorize
data:
charge_point_id: "Easee01"
id_tag: "HOME_RESIDENT_01" # pre-authorized RFID tag
OCPP Authorize.req sends idTag to Central System (HA OCPP)
HA OCPP returns: Authorize.conf { "idTagInfo": { "status": "Accepted" }}
Charger begins transaction: StartTransaction.req sent to HA
KNX scene "EV Stop Charging":
→ GA 10/0/1 (charger active) → DPT 1.001 value 0
→ HA automation: ocpp.stop_transaction charge_point_id=Easee01
Use case: time-of-use tariff schedule — IPS script runs at
23:00 → writes 1 to GA 10/0/5 → starts cheap overnight charge
07:00 → writes 0 to GA 10/0/1 → stops transaction before peakSicherheitshinweis: Der Ansatz mit vorautorisiertem idTag umgeht die physische RFID-Authentifizierung. Verwenden Sie dies nur in Wohn- oder Privatzugangsbereichen, in denen der Gebäudeeigentümer sowohl das KNX-System als auch das Ladegerät kontrolliert. Für gewerbliche Mehrbenutzerinstallationen behalten Sie die physische RFID-Kartenvorlage für jede Sitzung bei, um die Prüfpfad- und Abrechnungsgenauigkeit zu erhalten.
Inbetriebnahmetest mit ETS6 Group Monitor
Die Inbetriebnahmesequenz überprüft den vollständigen Pfad vom EV-Steckeranschluss über das OCPP-Zentralsystem bis zur Aktualisierung der KNX-Gruppenadresse und bestätigt, dass die Eigenverbrauchslogik und die Stromregelung durchgängig funktionieren, bevor die Installation übergeben wird.
Inbetriebnahmetestsequenz
Step 1 — OCPP connectivity verification: Open HA OCPP add-on log Confirm: "Easee01 connected via OCPP 1.6J WebSocket" Charger LED: solid green (available, not charging) Step 2 — Plug connected status KNX update: Plug test EV cable into Easee Home socket ETS6 Group Monitor → watch GA 10/0/3 Expected: value changes to 1 (true) within 5 seconds Charger status GA 10/0/4 → should read 1 (charging prep) Step 3 — Manual current setpoint test: ETS6 Group Monitor → write value 50 to GA 10/0/0 (50% = 8A) Verify: HA log shows OCPP SetChargingProfile 8A sent Verify: Easee app shows "Charging at 8A" Write 100 to GA 10/0/0 → confirm Easee shows 16A Step 4 — PV surplus simulation: ETS6 Group Monitor → write −4000 to GA 9/0/1 (simulate 4kW export) Confirm: HA automation fires → OCPP current = 4000÷230 = 17A → clamped to 16A GA 10/0/0 should update to reflect new current Step 5 — Session energy readback: After 2 minutes of active charging GA 10/0/2 should show non-zero kWh value Compare with Easee app session energy reading Step 6 — RFID trigger from KNX: ETS6 → write 1 to GA 10/0/5 Confirm: HA log "Authorize.req idTag HOME_RESIDENT_01 → Accepted" Charger starts transaction
WebSocket-Wiederverbindungsverhalten
Wenn der HA-Server neu startet, verbindet sich Easee automatisch innerhalb von 30 Sekunden wieder mit dem OCPP-Zentralsystem. Während des Wiederverbindungsfensters lädt das Ladegerät mit dem zuletzt von OCPP eingestellten Stromgrenzwert weiter – es fällt nicht auf das Minimum zurück. Überprüfen Sie die Wiederverbindungswiederherstellung, indem Sie HA neu starten und bestätigen, dass sich die Ladegerät-Status-Entity innerhalb von 60 Sekunden aktualisiert.
Unterschiede bei Wallbox Pulsar Plus
Die Wallbox Pulsar Plus verwendet identische OCPP 1.6J-Befehle, aber das Ladegerät-ID-Format in der WebSocket-URL verwendet standardmäßig das Seriennummer-Suffix. Bestätigen Sie die Ladegerät-ID in den myWallbox-App-Einstellungen, bevor Sie HA OCPP konfigurieren. Die minimale Stromaufnahme von Wallbox OCPP beträgt 6A bei einphasigen und 8A bei dreiphasigen Varianten.
Benötigen Sie eine EV-Ladesäulenverteilung mit KNX-OCPP-Integration nach Maß?
Wir entwickeln Niederspannungsverteilungen mit Easee- oder Wallbox-OCPP-Integration, HA-KNX-Gateway-Konfiguration, Solar-Eigenverbrauchslogik und vollständiger Inbetriebnahmedokumentation – getestet und verifiziert an Ihrem Standort geliefert.
Angebot anfordern →