# EMS – konsolidovaný seznam TODO Shrnutí otevřených bodů z `docs/06-open-questions.md`, checklistů v modulech a komentářů `TODO` / `TBD` / `[ ]` v repozitáři. Duplicitní témata jsou sloučena; u uvedených řádků jde o stav k poslední synchronizaci se soubory. **Role „kdo řeší“:** *majitel* = vlastník/provoz objektu a smluvní údaje; *programátor* = vývoj EMS; *Loxone programátor* = konfigurace Miniserveru a integrace v Loxone. --- ## Blokující – nutné před prvním spuštěním Věci bez kterých nelze bezpečně napojit fyzická zařízení, spustit smysluplný forecast nebo dokončit kritická rozhodnutí před implementací řízení. | Popis | Kde | Kdo | |-------|-----|-----| | Doplnit **GPS** (`latitude`, `longitude`) pro lokalitu `home-01` – vstup Open-Meteo. | `db/migration/V003__seed_site_home01.sql` ř. 11–17 (`INSERT` + komentáře TODO); `docs/06-open-questions.md` ř. 15–16 | majitel (souřadnice) → programátor (úprava seedu/SQL) | | Doplnit **skutečné IP** Waveshare (Deye), obou Teltonika WB, Samsung TČ a **Loxone**; ověřit **Modbus Unit ID** u zařízení. | `db/migration/V003__seed_site_home01.sql` ř. 27–30, 33–36, 39–41, 44–46, 49–52 (TODO komentáře); `docs/04-modules/telemetry.md` ř. 215 (ověření Unit ID) | majitel / instalatér (síť) → programátor (seed nebo `site_endpoint` v DB) | | Doplnit **azimut a sklon** FVE polí A a B pro přesný výpočet predikce. | `db/migration/V003__seed_site_home01.sql` ř. 125–132, 140–146; `docs/06-open-questions.md` ř. 13–14; `docs/04-modules/forecast.md` ř. 16–17 (tabulka TBD), 177 | majitel / projektant FVE → programátor | | Doplnit **model TČ**, **jmenovitý topný výkon (W)**, **COP rated**, **objem zásobníku TUV**, **odkaz na čidlo TUV** v seedu (`asset_heat_pump` má povinné numerické sloupce – bez platných hodnot nelze konzistentně plánovat / migrovat). | `db/migration/V003__seed_site_home01.sql` ř. 182–200 | majitel (datasheet) → programátor | | **Rozhodnout Teltonika: OCPP 1.6 vs REST API** před implementací EV řízení a sběru. | `docs/06-open-questions.md` ř. 9–10; `docs/04-modules/consumption.md` ř. 184 | majitel + programátor | | **Doplnit přesné Modbus registry** (čtení i zápis) pro Deye, Teltonika, Samsung – bez mapy registrů nejde napsat funkční `telemetry_collector` / `control_exporter`. | `docs/04-modules/telemetry.md` ř. 63, 76–105 (tabulky TBD), 212–214; `docs/04-modules/heat-pump.md` ř. 79–85, 102; `docs/04-modules/control.md` ř. 249–251; pseudokód `TBD_*_REGISTER` ř. 166–171, 192–197; `docs/loxone-integration.md` ř. 259–261 | majitel dodá PDF/šablony → programátor; část ověření s **Loxone programátor** | | Ověřit **Modbus registr Output Power Limit** (curtailment pole A) na Deye SUN-20K. | `docs/04-modules/planning.md` ř. 422 | programátor (+ dokumentace od majitele) | | Doplnit **skutečnou výši zeleného bonusu** (`green_bonus_czk_kwh`) dle smlouvy – aktuálně placeholder. | `db/migration/V005__planning_curtailment.sql` ř. 45–50 | majitel (smlouva) → programátor | --- ## Fáze 1 – základní provoz Potřebné pro reálný, stabilní provoz; lze část EMS otestovat bez nich (např. jen DB, část solveru). | Popis | Kde | Kdo | |-------|-----|-----| | **Kurz EUR/CZK:** fixní env vs denní stahování (ČNB) – ovlivní import cen. | `docs/06-open-questions.md` ř. 11–12; `docs/04-modules/market-prices.md` ř. 126; `docs/04-modules/consumption.md` (související ekonomika) | majitel + programátor | | **TUV výkon:** měřitelný příkon vs jen ON/OFF – dopad na baseline a plánování. | `docs/06-open-questions.md` ř. 21–22 | majitel + programátor | | **Pole B (ongrid)** v auditu: sledovat neřízenou výrobu vs ignorovat. | `docs/06-open-questions.md` ř. 23–24; `docs/04-modules/forecast.md` ř. 179 | majitel + programátor | | Filtrovat aktivní nabíječky **dle session** při zápisu setpointů (místo všech schedulable). | `docs/04-modules/control.md` ř. 153–155 (komentář TODO v pseudokódu) | programátor | | Dohodnout **Loxone Virtual Input** názvy a vytvořit je v projektu (soulad s HTTP exportem). | `docs/04-modules/control.md` ř. 222–232, 252 | Loxone programátor + programátor | | **Strategie rozdělení výkonu** mezi 2 nabíječky; chování při **selhání zápisu** jednoho zařízení (rollback?). | `docs/04-modules/control.md` ř. 253–254 | majitel + programátor | | Ověřit **Watchdog / Timer** bloky v konkrétní verzi Loxone Config. | `docs/loxone-integration.md` ř. 258 | Loxone programátor | | **Deye work mode** hodnoty (Self-Consumption, Grid-Charge, Backup) pro SELF_SUSTAIN / přepínání. | `docs/loxone-integration.md` ř. 259; `docs/04-modules/operating-modes.md` ř. 130 | programátor + dokumentace majitele | | Dohodnout zdroj **SoC pro SELF_SUSTAIN** v Loxone (čtení ze střídače vs pevný práh). | `docs/loxone-integration.md` ř. 262 | majitel + Loxone programátor | | **Přístup k logu** přepnutí watchdogu pro EMS po restartu. | `docs/loxone-integration.md` ř. 263 | Loxone programátor + programátor | | Implementace **Loxone watchdog** dle integračního dokumentu. | `docs/04-modules/operating-modes.md` ř. 131; celý `docs/loxone-integration.md` | Loxone programátor + programátor | | **Post-processing min_run/min_stop** TČ po výstupu LP (krátké ON/OFF). | `docs/04-modules/planning.md` ř. 419 | programátor | | **Zelený bonus** započítat do **auditního** výpočtu nákladů, ne jen do optimalizace. | `docs/04-modules/planning.md` ř. 420 | programátor | | **EV:** přesnější než agregát – sladit s `ev1_setpoint_w` / `ev2_setpoint_w` v DB a solveru. | `docs/04-modules/planning.md` ř. 421 | programátor | | **Test solveru** na reálných datech (výkon pro 36h / 144 slotů). | `docs/04-modules/planning.md` ř. 423 | programátor | | **Optimalizace čtení Deye** – jeden blok `read_holding_registers`. | `docs/04-modules/telemetry.md` ř. 216 | programátor | | Ověřit **min_run_duration / min_stop_duration** TČ z dokumentace Samsung. | `docs/04-modules/heat-pump.md` ř. 104 | programátor | | Doplnit **objem zásobníku TUV** pro výpočet doby ohřevu (nad rámec seedu). | `docs/04-modules/heat-pump.md` ř. 107 | majitel → programátor | | **TUV čidlo v Loxone** pro přesnější řízení / baseline. | `docs/04-modules/consumption.md` ř. 185 | Loxone programátor + programátor | | **Bazální spotřeba:** zpřesnit odečítání výkonu TČ/TUV (ON/OFF × čas vs pevný výkon). | `docs/04-modules/consumption.md` ř. 186 | majitel + programátor | | **PostgREST autentizace** (JWT, RLS, …) před produkcí. | `docs/06-open-questions.md` ř. 25–26 | majitel + programátor | | **Zálohování PostgreSQL** (pg_dump cron, replikace, …). | `docs/06-open-questions.md` ř. 27–28 | majitel + programátor | | OTE: poznámka k **sell vs buy raw** u jiných zdrojů než OTE. | `docs/04-modules/market-prices.md` ř. 128 | programátor | | Ověřit **Zoe max AC výkon** (7.4 kW vs podmínky instalace). | `docs/04-modules/ev-charging.md` ř. 281 | majitel + programátor | --- ## Fáze 2 – rozšíření | Popis | Kde | Kdo | |-------|-----|-----| | **Tesla API:** Tessie vs přímé API. | `docs/04-modules/ev-charging.md` ř. 280 | majitel + programátor | | **UI** pro deadline a target SoC před odjezdem. | `docs/04-modules/ev-charging.md` ř. 283 | programátor | | **Notifikace** při nesplnitelném deadline nabíjení. | `docs/04-modules/ev-charging.md` ř. 284; `docs/04-modules/operating-modes.md` ř. 132 (stale heartbeat) | programátor | | Ověřit **round-trip účinnost** baterie a **odhad SoC Zoe** z energie session na reálných datech. | `docs/04-modules/ev-charging.md` ř. 282, 285 | programátor | | **Kalibrace COP** modelu TČ na 4–6 týdnů historie. | `docs/04-modules/heat-pump.md` ř. 105 | programátor | | **pvlib** vs jednoduchý model FVE; **Solcast** jako alternativa k Open-Meteo. | `docs/04-modules/forecast.md` ř. 178, 180; `docs/06-open-questions.md` ř. 34 | programátor | | **Intraday** OTE ceny. | `docs/06-open-questions.md` ř. 35; `docs/04-modules/market-prices.md` ř. 127 | programátor | | **Sezónní korekce** predikce spotřeby. | `docs/06-open-questions.md` ř. 36; `docs/04-modules/consumption.md` ř. 187 | programátor | | **Více lokalit** – UI a správa. | `docs/06-open-questions.md` ř. 33 | programátor | | **Mobile / PWA notifikace.** | `docs/06-open-questions.md` ř. 37 | programátor | | **Reporting** k dodavateli elektřiny. | `docs/06-open-questions.md` ř. 38 | majitel + programátor | --- ## Architektonická rozhodnutí čekající na odpověď Otázky vyžadující rozhodnutí majitele systému (případně ve spolupráci s integrátory). | Popis | Kde | Kdo | |-------|-----|-----| | Teltonika **OCPP vs REST** (vliv na provoz, údržbu, bezpečnost). | `docs/06-open-questions.md` ř. 9–10 | majitel + programátor | | **EUR/CZK** strategie (fix vs API). | `docs/06-open-questions.md` ř. 11–12; `docs/04-modules/market-prices.md` ř. 126 | majitel + programátor | | **TUV** měření vs aproximace ON/OFF. | `docs/06-open-questions.md` ř. 21–22 | majitel + programátor | | **Audit a plán:** jak nakládat s výrobou **pole B** a zeleným bonusem v reportingu. | `docs/06-open-questions.md` ř. 23–24; `docs/04-modules/forecast.md` ř. 179 | majitel + programátor | | **PostgREST / API bezpečnost** pro produkci. | `docs/06-open-questions.md` ř. 25–26 | majitel + programátor | | **Zálohy a DR** PostgreSQL. | `docs/06-open-questions.md` ř. 27–28 | majitel + programátor | | **Přímý Modbus TCP k TČ** vs řízení přes Loxone jako prostředníka. | `docs/04-modules/heat-pump.md` ř. 106 | majitel + Loxone programátor + programátor | | **pvlib vs jednoduchý** solární model – investice do přesnosti. | `docs/04-modules/forecast.md` ř. 178 | majitel + programátor | | **Rollback / částečný selhání** zápisu setpointů napříč zařízeními. | `docs/04-modules/control.md` ř. 254 | majitel + programátor | | **SoC zdroj** a prahy pro autonomní režimy v Loxone. | `docs/loxone-integration.md` ř. 262 | majitel + Loxone programátor | --- ## Poznámka k údržbě Po vyřešení položky ji aktualizuj v **původním** souboru (smaž nebo přeškrtni `[ ]` / TODO) a zde v `05-todo.md` položku odstraň nebo přesuň do changelogu, ať zůstane jeden zdroj pravdy.