TapHome

KEBA KeContact P20 Monitoraggio potenza

Packet Parser → UDP
Inviato da
Ultimo aggiornamento: 06. 2026
KEBA KeContact P20 Monitoraggio potenza

Il KEBA KeContact P20 è un wallbox EV AC Mode 3 (10–32 A, monofase o trifase) prodotto tra il 2012 e il 2016. La sua „SmartHome Interface" basata su UDP è supportata sulle varianti hardware c-series e c-series+PLC (codici prodotto KC-P20-xxxxxx2x-xxx e KC-P20-xxxxxx3x-xxx) con firmware 2.5 o superiore. Le serie e-series e b-series non implementano questa interfaccia.

TapHome comunica con il wallbox tramite UDP sulla porta 7090 utilizzando il protocollo KEBA nativo. Ad ogni ciclo di polling (predefinito 10 s) TapHome invia il comando testuale report 3 all’IP del wallbox, e il wallbox risponde con un payload JSON contenente tensioni e correnti per fase, potenza attiva istantanea, energia di sessione ed energia totale.

Questo template è di sola lettura per il monitoraggio della potenza. Non avvia né arresta la ricarica, non modula la corrente di ricarica e non autorizza sessioni RFID. Se è necessario un controllo attivo del carico (ad esempio ricarica da surplus FV), utilizzare un’altra integrazione — il successore KeContact P30 è coperto dal template dedicato KEBA KeContact P30 Stazione di ricarica, che utilizza Modbus TCP e offre il controllo completo della ricarica.

Requisiti

  • KEBA KeContact P20 c-series o c-series+PLC (cifra di elettronica 2 o 3 nel codice prodotto sulla targhetta)
  • Firmware ≥ 2.5 (i firmware più vecchi non espongono il comando report 3)
  • Wallbox collegato alla stessa LAN del TapHome Core via Ethernet (morsetti LSA+ X4 o presa RJ45 X3)
  • Porta UDP 7090 non bloccata da alcun firewall tra il Core e il wallbox
  • L’interfaccia Modbus TCP deve essere disabilitata — le interfacce UDP e Modbus TCP si escludono reciprocamente sul P20

Collegamento hardware

Il P20 fornisce due interfacce Ethernet fisiche. Sono cablate in parallelo sul PCB e solo una può essere utilizzata alla volta — quella inutilizzata deve essere scollegata.

  • Ethernet1 (X4) — morsetti a perforazione LSA+, consigliati per installazioni fisse permanenti (usare il pinzatore KRONE originale; cablare secondo il codice colore TIA-568A/B per 100BaseT, ripiegare la schermatura di ~1 cm e serrarla al punto di terra [Shd])
  • Ethernet2 (X3) — presa RJ45, destinata al servizio/debug ma utilizzabile se un cavo RJ45 è già stato portato nel quadro

Usare cavo Cat 5e o Cat 6 STP. La morsettiera (X4) accetta diametri dei fili 0,36–0,81 mm (AWG 27–20) per cavo rigido e 7 × 0,2 mm (AWG 24) per cavo flessibile.

Le correnti di compensazione che scorrono attraverso la schermatura Ethernet in installazioni estese possono danneggiare l’interfaccia. Discutere l’espansione della rete TN-S con il responsabile degli impianti dell’edificio se il wallbox e il Core si trovano in sottosistemi diversi.

Configurazione

Abilitare l’interfaccia UDP SmartHome

L’interfaccia UDP si attiva tramite un singolo DIP switch sul PCB del wallbox, situato sotto il coperchio del pannello connettori.

Layout dei DIP switch del KEBA KeContact P20 che mostra la posizione di DSW1 / DSW2 sul PCB e l'impostazione DSW1.3 ON per l'attivazione dell'interfaccia UDP SmartHome
  1. Spegnere il wallbox dall’interruttore di protezione
  2. Rimuovere il coperchio dell’alloggiamento e il coperchio del pannello connettori per raggiungere i banchi DIP switch (DSW1 in alto, DSW2 in basso)
  3. Impostare DSW1.3 = ON per attivare l’interfaccia UDP SmartHome
  4. Premere il pulsante di servizio per ~1 secondo o effettuare un ciclo di accensione del wallbox — le modifiche ai DIP switch hanno effetto solo dopo il riavvio

Il banco DSW1 completo è documentato nell’Installation Manual. Qui sono elencate solo le righe rilevanti per l’integrazione UDP:

DIPFunzionePredefinitoRichiesto per UDP
DSW1.1Ingresso di abilitazione esterno [X1] usatoOFF— (lasciare invariato se non è cablato un contatto di abilitazione)
DSW1.2Uscita contatto di commutazione [X2] in modalità monitoraggio contattoreOFF (visualizzazione stato)— (non rilevante per questo template)
DSW1.3Attivare SmartHome Interface via UDPOFFONobbligatorio
DSW1.6 / 1.7 / 1.8Corrente massima di ricarica trasmessa via PWM Control Pilotdipende dalla variante— (impostare sul valore nominale del wallbox)

L’interfaccia UDP e l’interfaccia Modbus TCP non possono essere attive contemporaneamente. Se su questa stazione era precedentemente abilitato Modbus TCP, disabilitarlo prima di affidarsi al template UDP TapHome.

Indirizzo IP (indirizzamento DSW2)

Per un singolo P20 in rete, è sufficiente l’indirizzamento DHCP predefinito — tutti gli switch DSW2 impostati su OFF. Il wallbox ottiene il suo IP dal router.

Per installazioni multi-stazione su una rete isolata, è possibile impostare un indirizzamento IP fisso nell’intervallo 192.168.25.11192.168.25.26 tramite DSW2.1–DSW2.4 (con DSW2.5 = OFF, DSW2.6 = ON). Ogni switch aggiunge il suo peso binario (1, 2, 4, 8) a una base di 10:

IndirizzoDSW2.1 (+1)DSW2.2 (+2)DSW2.3 (+4)DSW2.4 (+8)
192.168.25.11ONOFFOFFOFF
192.168.25.13ONONOFFOFF
192.168.25.17ONONONOFF
192.168.25.25ONONONON

Se il wallbox usa DHCP, assegnare nel router una riserva DHCP statica in modo che l’IP non cambi dopo un’interruzione di corrente. TapHome memorizza l’IP come parametro di import e non scopre automaticamente il dispositivo.

Parametri di import TapHome

Durante l’importazione del template, fornire:

  • IP Address — l’IP del wallbox sulla rete locale (segnaposto 192.168.0.1)
  • Port7090 (fisso dal protocollo KEBA)
  • Internal poll interval10000 ms per impostazione predefinita; il protocollo KEBA tollera intervalli più brevi ma consiglia almeno 5 s tra ripetizioni dello stesso comando

Dispositivi disponibili

Tutte le misurazioni derivano dal payload JSON report 3 restituito dal wallbox. Ogni valore si aggiorna ad ogni ciclo di polling; tutti i dispositivi sono in sola lettura.

Tensioni per fase
  • Phase 1 Voltage, Phase 2 Voltage, Phase 3 Voltage — tensioni di linea in volt, lette direttamente dai campi U1, U2, U3 della risposta report 3. Nelle installazioni monofase solo U1 riporta un valore significativo.
Correnti per fase
  • Phase 1 Current, Phase 2 Current, Phase 3 Current — correnti di ricarica in ampere, lette da I1, I2, I3 in milliampere e convertite in A (divise per 1000) dal template. I valori sono zero quando nessun veicolo sta ricaricando.
Energia di sessione ed energia totale

Il template espone due contatori di energia, entrambi condividono la stessa lettura di potenza attiva istantanea ($.P da report 3, riportato in mW e convertito in kW):

  • Present Power — potenza di ricarica istantanea (kW) più l’energia erogata nella sessione di ricarica corrente. Il contatore di energia di sessione (E pres, unità 0,1 Wh convertite in kWh) si azzera ad ogni inserimento di un nuovo cavo.
  • Total Power — potenza di ricarica istantanea (kW) più il contatore di energia cumulativa a vita (E total, unità 0,1 Wh convertite in kWh). Questo contatore persiste tra sessioni, riavvii e cicli di alimentazione e non si azzera mai.

Entrambi i dispositivi di energia mostrano la stessa lettura di potenza in tempo reale — il wallbox KEBA riporta un singolo valore di potenza attiva istantanea. I dispositivi differiscono solo nel contatore di energia che tracciano (per sessione vs. a vita). Questo consente in TapHome di rappresentare graficamente sia il totale di sessione in corso sia un trend energetico a lungo termine.

Risoluzione problemi

TapHome non mostra dati dal wallbox
  1. Verificare il codice prodotto del wallbox sulla targhetta. Solo KC-P20-xxxxxx2x-xxx (c-series) e KC-P20-xxxxxx3x-xxx (c-series+PLC) supportano UDP — le serie e-series e b-series non possono essere integrate via UDP indipendentemente dal firmware
  2. Confermare che la versione del firmware sia ≥ 2.5. I firmware più vecchi non rispondono a report 3. Gli aggiornamenti firmware sono disponibili nell’area download su keba.com/emobility
  3. Confermare DSW1.3 = ON — di gran lunga il problema di setup più comune, poiché i DIP switch si trovano sotto il coperchio del pannello connettori e sono facili da trascurare durante la messa in servizio. Dopo la commutazione, premere il pulsante di servizio per 1 secondo o effettuare un ciclo dell’interruttore
  4. Verificare che il cavo Ethernet sia collegato a uno solo tra X3 (RJ45) e X4 (LSA+), non a entrambi
  5. Assicurarsi che la porta UDP 7090 sia aperta tra il TapHome Core e il wallbox (nessun blocco VLAN / firewall)
  6. Confermare che l’interfaccia Modbus TCP sul wallbox non sia attiva — UDP e Modbus TCP si escludono a vicenda
L’indirizzo IP del wallbox cambia periodicamente

La modalità di indirizzamento predefinita è DHCP. Se il router rilascia e riassegna i lease, il wallbox può presentarsi con un IP diverso. Impostare nel router una riserva DHCP statica per l’indirizzo MAC del wallbox, oppure passare alla modalità IP fisso tramite DSW2 (per le stazioni singole raramente necessario).

La potenza legge zero anche se l’EV sta ricaricando

I campi P, I1/I2/I3, E pres vengono popolati solo durante una sessione di ricarica valida (Plug = 7, State = 3 in report 2). Se il cavo è collegato ma la ricarica non è iniziata, o se la ricarica è sospesa dal veicolo, P sarà zero. Questo è un comportamento previsto — confermare osservando il LED di stato del wallbox (verde fisso durante la ricarica attiva).

L’energia di sessione non corrisponde a un evento di ricarica

Il contatore E pres si azzera all’inizio di una nuova sessione (inserimento). Se l’EV si disconnette e si riconnette all’interno della finestra di logging, inizia una nuova sessione e il contatore riparte da zero. Per statistiche cumulative tra sessioni, utilizzare il contatore a vita (Total Power).

Dispositivi disponibili

Keba KeContact P20 Monitoraggio potenza Modulo
Variabili personalizzate

Keba KeContact P20 Power monitoring

Lettura (modulo)
SENDDATA("report 3");
Listener
VAR jsonString := TOSTRING(RECEIVEDBYTES);
VAR id := PARSEJSON(jsonString, "$.ID", 1);

IF(id = 3)
    report3 := jsonString;
END
Corrente fase 1 Variabile Solo lettura
numeric Unità: A json_path

Corrente fase 1

Listener
Va := PARSEJSON(report3, "$.I1", 1) / 1000.0
Corrente fase 2 Variabile Solo lettura
numeric Unità: A json_path

Corrente fase 2

Listener
Va := PARSEJSON(report3, "$.I2", 1) / 1000.0
Corrente fase 3 Variabile Solo lettura
numeric Unità: A json_path

Corrente fase 3

Listener
Va := PARSEJSON(report3, "$.I3", 1) / 1000.0
Potenza attuale Contatore elettrico Solo lettura

Potenza di ricarica istantanea (kW) ed energia erogata nella sessione di ricarica corrente (kWh) — si azzera all'inserimento

numeric Unità: kW / kWh json_path

Potenza attuale

Listener
Ed := PARSEJSON(report3, "$.['E pres']", 1) / 10000.0;
To := PARSEJSON(report3, "$.P", 1) / 1000000.0
Potenza totale Contatore elettrico Solo lettura

Potenza di ricarica istantanea (kW) e contatore di energia cumulativa a vita (kWh) — persistente tra sessioni e riavvii

numeric Unità: kW / kWh json_path

Potenza totale

Listener
Ed := PARSEJSON(report3, "$.['E total']", 1) / 10000.0;
To := PARSEJSON(report3, "$.P", 1) / 1000000.0
Tensione fase 1 Variabile Solo lettura
numeric Unità: V json_path

Tensione fase 1

Listener
Va := PARSEJSON(report3, "$.U1", 1)
Tensione fase 2 Variabile Solo lettura
numeric Unità: V json_path

Tensione fase 2

Listener
Va := PARSEJSON(report3, "$.U2", 1)
Tensione fase 3 Variabile Solo lettura
numeric Unità: V json_path

Tensione fase 3

Listener
Va := PARSEJSON(report3, "$.U3", 1)
Connessione: Packet Parser → UDP
Possibili miglioramenti (17)
  • Power Factor — Power factor (cosphi) reported as 0.1% units (0–1000). Present in the `report 3` JSON response but not mapped to any device in the template.
  • Serial Number — 8-character device serial. Available in `report 3` (and `report 1` / `report 2`) but not exposed by the template.
  • System Uptime — System clock seconds since last startup. Useful for reboot detection but not surfaced by the template.
  • Firmware / Product / Backend / timeQ — Basic device identification (Product, Serial, Firmware, COM-module, Backend, timeQ). Template polls only `report 3`; `report 1` would need to be added for identification diagnostics.
  • Charging State / Plug / Error / Max Curr / Input — Full operating state (State 0–5 = Startup/Not ready/Ready/Charging/Error/Interrupted, Plug 0/1/3/5/7, Error1/Error2, Max curr, Curr HW, Enable sys/user, Input X1). Required for any status-aware automation — template is measurement-only.
  • Charging Session History — Last 30 charging sessions (Session ID, E start, E pres, start/end timestamps, termination reason, RFID tag). Not applicable to real-time monitoring.
  • Set Charging Current (with delay) — Primary active-load-control command (non-permanent). Would allow TapHome to modulate charging current based on PV surplus. Template is read-only — no service action exposed.
  • Set Charging Current (permanent) — Permanent current override (6000–63000 mA). KEBA recommends `currtime` instead for regular use.
  • Enable / Disable Charging — Permanently disable (0) or enable (1) the station until reboot. Not implemented — template cannot pause charging.
  • RFID Start / Stop — Programmatic RFID authorization. Relevant only if AuthON = 1 and a whitelist is configured.
  • Set Energy Limit — Sets an energy limit for the active/next charging session (0.1 Wh units). Charging stops when reached.
  • Auxiliary Relay Output (X2) — Controls auxiliary relay terminal X2 (open / close / pulse). Requires DIP DSW1.2 = ON.
  • Unlock Socket — Unlocks the charging socket (requires charging to be stopped first). Useful after an interrupted session.
  • Show Display Text — P30 only — not functional on P20 (no display). Listed for reference.
  • Set Station Clock — Set the station clock via Unix epoch. Useful when NTP is unavailable.
  • Failsafe Configuration — Fallback current when communication is lost. Valuable safety feature for any load-control integration but not exposed by the read-only template.
  • Push Notifications on State Change — Station can push State, Plug, Input, Enable sys, Max curr and E pres changes to the last UDP sender without polling. Template uses polling only.

Fonti

  • KeContact P20 / P30 UDP Programmers Guide V 2.03
    sollis.de 2026-04-23
  • KeContact P20 / P30 Installation manual V 3.20
    www.keba.com 2026-04-23

Hai trovato un problema con questo template?

Dicci cosa non funziona, cosa manca o come dovrebbe comportarsi il template. Il tuo feedback ci aiuta a mantenere il catalogo accurato.

Verificato da TapHome

Vuoi usarlo nel tuo TapHome Core?

Apri questo template nel Customer Portal per applicarlo a una delle tue case, o crea una proposta di modifica e inviala al catalogo.

Apri nel portale