Se ti piace il mio lavoro e vuoi che continui nello sviluppo, puoi offrirmi un caffè.
Non dimenticare di seguirmi sui social:
Integrazione custom per Home Assistant per monitorare il sistema di accumulo EP Cube tramite API non ufficiale (la stessa usata dalle app iOS/Android ufficiali).
- 📡 Dati live con intervallo di aggiornamento configurabile (default: 30 secondi)
- 📊 Statistiche giornaliere, mensili e annuali
- Disabilitate di default per ridurre il carico
- Abilitabili singolarmente o tutte insieme dalla configurazione
- 🎛️ Modalità operative (Autoconsumo, Tariffazione, Backup) con controllo da Home Assistant
- 📅 Service TOU per gestire gli orari di tariffazione direttamente da Home Assistant
- ⚙️ Entità di configurazione e diagnostica integrate
- 🧩 Completamente integrato con la UI di Home Assistant (config flow, device info, icone)
- 🔐 Richiede un Bearer token valido (generazione token tramite reverse engineering, QUI)
- Apri Home Assistant
- Vai su HACS > Integrazioni > Repository personalizzati
- Aggiungi:
https://github.com/Bobsilvio/epcubecon tipoIntegrazione - Cerca
EPCubee installalo - Riavvia Home Assistant
- Vai su Impostazioni > Dispositivi e servizi e aggiungi l'integrazione
- Account EP Cube
- Bearer token (QUI)
L'integrazione supporta 3 modalità di funzionamento del dispositivo EP Cube:
- Massimizza l'autoconsumo dell'energia solare
- La batteria carica quando c'è eccesso di solare
- Configurabile: SoC Riserva Autoconsumo (default: 5%)
- Configura diverse fasce orarie di prezzo (picco, semi-picco, fuori picco)
- Supporta ora legale con orari differenti
- Supporta fasce separate per giorni lavorativi e festivi
- Gestibile direttamente da Home Assistant con il service
set_tou_schedule
- Priorità al backup in caso di blackout
- Configurabile: SoC Backup Riservato (default: 50%)
Il service epcube.set_operating_mode permette di passare tra Autoconsumo e Backup.
Per la modalità Tariffazione usa invece epcube.set_tou_schedule (vedi sezione successiva).
| Parametro | Tipo | Descrizione | Default |
|---|---|---|---|
mode |
Stringa | Modalità: "1" = Autoconsumo, "3" = Backup |
"1" |
backup_power_reserve_soc |
Numero | SoC riserva backup % (solo mode=3) | 50 |
self_consumption_reserve_soc |
Numero | SoC riserva autoconsumo % (solo mode=1) | 5 |
entry_id |
Stringa | ID configurazione (auto se non specificato) | — |
# Attiva modalità Backup con SoC riserva 54%
service: epcube.set_operating_mode
data:
mode: "3"
backup_power_reserve_soc: 54# Attiva modalità Autoconsumo con SoC riserva 5%
service: epcube.set_operating_mode
data:
mode: "1"
self_consumption_reserve_soc: 5Il service epcube.set_tou_schedule permette di configurare gli orari di tariffazione del tuo EP Cube direttamente da Home Assistant.
Ogni fascia oraria è una stringa nel formato "HH:MM_HH:MM_prezzo":
"08:00_13:00_0.31" → dalle 08:00 alle 13:00, prezzo 0.31 €/kWh
"20:00_23:00_0.25" → dalle 20:00 alle 23:00, prezzo 0.25 €/kWh
⚠️ Inizio e fine sono obbligatori. Se manca uno dei due, il service restituisce errore.
service: epcube.set_tou_schedule
data:
peak_times:
- "08:00_13:00_0.31"
- "20:00_23:00_0.31"
mid_peak_times:
- "13:00_18:00_0.25"
off_peak_times:
- "00:00_08:00_0.15"
- "18:00_20:00_0.15"
- "23:00_24:00_0.15"
switch_to_mode: true| Parametro | Tipo | Descrizione | Default |
|---|---|---|---|
peak_times |
Lista stringhe | Fasce orarie picco | [] |
mid_peak_times |
Lista stringhe | Fasce semi-picco | [] |
off_peak_times |
Lista stringhe | Fasce fuori picco | [] |
peak_times_non_workday |
Lista stringhe | Fasce picco (giorni festivi) | [] |
mid_peak_times_non_workday |
Lista stringhe | Fasce semi-picco (festivi) | [] |
off_peak_times_non_workday |
Lista stringhe | Fasce fuori picco (festivi) | [] |
daylight_peak_times |
Lista stringhe | Fasce picco (ora legale) | [] |
daylight_mid_peak_times |
Lista stringhe | Fasce semi-picco (ora legale) | [] |
daylight_off_peak_times |
Lista stringhe | Fasce fuori picco (ora legale) | [] |
active_week |
Lista interi | Giorni lavorativi (1=Lun … 5=Ven) | [1,2,3,4,5] |
active_week_non_workday |
Lista interi | Giorni festivi (6=Sab, 7=Dom) | [6,7] |
daylight_active_week |
Lista interi | Giorni lavorativi (ora legale) | [1,2,3,4,5] |
daylight_active_week_non_workday |
Lista interi | Giorni festivi (ora legale) | [6,7] |
tou_type |
Intero | Tipo tariffazione | 0 |
self_consumption_reserve_soc |
Intero | SoC riserva autoconsumo % | 5 |
allow_charging_from_grid |
Intero | Permetti ricarica da rete (0/1) | mantiene impostazione attuale del dispositivo |
daylight_saving_time |
Booleano | Attiva supporto ora legale | false |
switch_to_mode |
Booleano | Passa a modalità Tariffazione | false |
entry_id |
Stringa | ID configurazione (auto se non specificato) | — |
service: epcube.set_tou_schedule
data:
peak_times:
- "08:00_13:00_0.31"
- "20:00_23:00_0.31"
off_peak_times:
- "00:00_08:00_0.15"
- "13:00_20:00_0.15"
- "23:00_24:00_0.15"
active_week: [1, 2, 3, 4, 5]
off_peak_times_non_workday:
- "00:00_24:00_0.15"
active_week_non_workday: [6, 7]
switch_to_mode: trueservice: epcube.set_tou_schedule
data:
# Orari invernali
peak_times:
- "08:00_13:00_0.31"
- "20:00_23:00_0.31"
off_peak_times:
- "00:00_08:00_0.15"
- "13:00_20:00_0.15"
- "23:00_24:00_0.15"
# Orari estivi (ora legale)
daylight_peak_times:
- "09:00_14:00_0.31"
- "21:00_24:00_0.31"
daylight_off_peak_times:
- "00:00_09:00_0.15"
- "14:00_21:00_0.15"
daylight_saving_time: true
switch_to_mode: trueautomation:
- id: 'tou_winter_schedule'
alias: 'Tariffazione Invernale'
trigger:
platform: time
at: '03:00:00'
condition:
- condition: template
value_template: '{{ now().month < 4 or now().month > 10 }}'
action:
service: epcube.set_tou_schedule
data:
peak_times:
- "08:00_13:00_0.31"
- "20:00_23:00_0.31"
off_peak_times:
- "00:00_08:00_0.15"
- "13:00_20:00_0.15"
- "23:00_24:00_0.15"
switch_to_mode: trueL'integrazione crea automaticamente sensori di configurazione che mostrano le fasce orarie impostate:
sensor.epcube_orari_piccosensor.epcube_orari_semi_piccosensor.epcube_orari_fuori_piccosensor.epcube_orari_luce_piccosensor.epcube_orari_luce_semi_piccosensor.epcube_orari_luce_fuori_picco
| Regione | Endpoint |
|---|---|
| 🇪🇺 EU | https://monitoring-eu.epcube.com/api |
| 🇺🇸 US | https://epcube-monitoring.com/app-api |
| 🇯🇵 JP | https://monitoring-jp.epcube.com/api |
L'integrazione crea automaticamente sensori per:
- Batteria: SoC, Energia in/out (totale e giornaliera), potenza istantanea
- Fotovoltaico: Potenza, Energia (AC/DC)
- Rete: Potenza, Energia (prelevata/immessa)
- Carichi Backup: Potenza, Energia
- Carichi Principali: Potenza, Energia
- EV: Potenza, Energia
- Generatore: Potenza, Energia
- Statistiche: Alberi equivalenti, CO₂ risparmiata
- Configurazione TOU: Fasce orarie, giorni attivi, SoC riserve
- Diagnostica: Stato sistema, firmware, connettività
Questo progetto non è affiliato né approvato da EP Cube o Canadian Solar. Usare a proprio rischio. L'API utilizzata non è documentata né supportata ufficialmente.
