Zdrojové složky:


1. Shrnutí jednou větou

Verze 601 je dual-board firmware (ESP32 Dev + ESP32-S3) s web OTA, zálohou SPIFFS (ZIP), ručním testem PWM, opraveným OLED handlerem a silnějším stahováním OTE/ČNB.
Oproti 302 je odpojeno forecast.solar (/solar*) a SPIFFS partition je menší — při flashi je nutná záloha dat a správná volba desky / pinů.


2. Základní identifikace

Položka 302 601
Hlavní soubor ESP32-Grid-Load-Vypocet302 ESP32-Grid-Load-Vypocet601
Řetězec verze firmware S3.0302 (jen S3) S3.0601 nebo 32.0601 podle desky
Přibližný počet řádků .ino cca 13800+ cca 14500+ (+ cca 700)
Velikost .ino (bajty) cca 682KB cca 697KB
Cílová deska prakticky jen ESP32-S3 (pevné piny S3) ESP32 Dev Module nebo ESP32-S3 (compile-time mapa pinů)
Předkompilované BIN není ve složce jako easun*.bin easun32.bineasunS3.bin

3. Soubory ve složce projektu

3.1 Společné / podobné moduly

  • spotove_ceny — spotové ceny OTE (v 601 rozšířené o ČNB logiku a novou URL)
  • teploty-esp-now — ESP-NOW teploty
  • nastaveni — průvodce nastavením (v 601 delší, SPIFFS ZIP)
  • weather_aplikaceweather_solar — weather (v obou aktivní, obsahově shodné)
  • vypocet01vypocet02pajo
  • TestRezim_WiFi_AP.htestovaci_rezim (soubor existuje, ale v .ino typicky není includován)
  • partitions — obsah se liší (viz kapitola o partitions)

3.2 Jen ve verzi 302

  • prehled-funkci
  • ESP32-Vypocet300-vs-302-zmeny
  • Aktivní #include a web pro solar_aplikace (forecast.solar)

3.3 Jen ve verzi 601

  • zapojeni-esp — zapojení pinů ESP32 / ESP32-S3
  • popis-mereni — popis měření / záložek
  • spotove-ceny — manuál spotů a další vývoj - připravujeme
  • easun32.bineasunS3.bin - download
  • složka build/ (artefakty kompilace)
  • soubor solar_aplikace.h může ve složce zůstat, ale není includován (forecast.solar odpojeno)

4. Podpora desek a pinové mapy

4.1 Verze 302

  • Firmware string: S3.0302
  • Piny odpovídají ESP32-S3 (I2C 8/9, PWM 10, SSR 4/5/6/7, DHT 11, PZEM 15/16, RTC 12/13/14)
  • RGB NeoPixel na GPIO 48 (vždy)
  • Lokální DS18B20 default často GPIO 13 — kolize s RTC IO na S3

4.2 Verze 601

  • Výběr pinů při kompilaci: #if CONFIG_IDF_TARGET_ESP32S3 / CONFIG_IDF_TARGET_ESP32
  • Špatná deska → #error
  • FW: S3.0601 (S3) nebo 32.0601 (classic ESP32)
  • NeoPixel jen na S3 (BOARD_HAS_RGB_NEOPIXEL); classic ESP32 bez RGB

4.3 Tabulka pinů 601

Funkce ESP32 classic (32.0601) ESP32-S3 (S3.0601)
I2C SDA / SCL 21 / 22 8 / 9
PWM (SSR výkon) 32 10
SSR výstupy 15, 2, 0, 4 4, 5, 6, 7
DHT 14 11
Lokální DS18B20 13 17 (oprava kolize s RTC)
PZEM RX / TX 16 / 17 15 / 16
RTC DS1302 CLK / IO / RST 33 / 25 / 26 12 / 13 / 14
RGB NeoPixel není GPIO 48

Migrace: při přechodu 302 → 601 na S3 zkontrolujte zapojení DS18 (GPIO 17).
Na classic ESP32 použijte mapu jako u starších Vypocet32, ne S3 piny. Podrobnosti: zapojeni-esp.html ve složce 601.


5. Spotové ceny (OTE) a kurz ČNB

Oblast 302 601
Režim zdrojů OTE-only (spotovaelektrina.cz vypnuto) stejně OTE-only
URL OTE API staré …/denni-trh/@@chart-data?date=… (může vracet HTTP 301) nové …/pw-data/chart-data/01?language=cs&date=… (+ follow redirects)
Timeouty HTTPS OTE kratší (řádově jednotky–12 s) delší (connect ~20 s, read ~30 s, TLS handshake, body až ~90 s)
Persist cache cen OTE na SPIFFS typicky aktivní default Spot_OTE_PERSIST_PRICE_CACHE_SPIFFS 0 (ceny hlavně v RAM)
Kurz EUR/CZK (ČNB) stažení + cache /eurczk_cache.ea rozšířeno: datum v URL, denní marker /eurczk_fetchday.ea, manuální override jen s checkboxem, log [CNB EUR/CZK], route /spot-eurczk-update
Limity Low/Medium/High Kč/MWh ukládání na /spot-config stejně (řízení distributora podle limitu — vývojový manuál spotove-ceny.html; Spot Gate jako další krok)
Menu Spot závisí na verzi UI odkaz Spot v horní navigaci

Webové cesty Spot společné v obou (s drobnými rozdíly UI): /spot/spot-ote/spot-ote-zitra/spot-config/spot-updating/spot/update. Nové v 601: /spot-eurczk-update.


6. Měření teplot, baterie, OLED, ESP-NOW

6.1 Společné

  • ESP-NOW teplotní vysílače: PMK, mód, seznam MAC
  • Routes: /teplota/temp-pmk/temp-mode/temp-senders, mapování senzorů
  • /batt — nastavení baterie

6.2 Rozdíly ve verzi 601

  • Stránka měření rozdělena na záložky / podstránky: teploty /teplota, baterie /batt, OLED /oled, ESP-NOW formuláře (PMK / Mód / Vysílače) — méně monolitická HTML stránka, méně tlaku na heap při OTE.
  • Oprava: v 302 mohl být handler /oled špatně / zaměněný s logikou /batt; v 601 je /oled samostatně.
  • Mapování teplot: podpora DHT22 přes ESP-NOW (kódy mapování 254/255).
  • S3: lokální DS18 na GPIO 17 místo 13.
  • HTML cache měření se uvolňuje před OTE fetch (freeMereniHtmlCachesForOte).

7. Webové routes — co přibylo a co zmizelo

7.1 Jen ve verzi 601

  • /oled — správný OLED handler
  • /pwm/api/pwm-manual/api/pwm-manual-set — ruční test PWM (v menu místo Solar)
  • /spiffs-backup/spiffs-export.zip/spiffs-import — záloha / obnova SPIFFS
  • /firmware-update (POST) — OTA upload firmware z webu
  • /spot-eurczk-update — ruční stažení kurzu ČNB

7.2 Jen ve verzi 302 (v 601 odstraněno / odpojeno)

  • /solar/getsolar
  • /solar_data/solar_test/solar_update/solar_download
  • /solar_history/solar_history_manage

Důvod: modul forecast.solar (solar_aplikace.h) není v 601 includován. Weather API zůstává.

7.3 Klíčové společné routes (výběr)

  • / Home, /wifi/mqtt/web
  • /teplota/batt/serial/reset/restart
  • /system-modes/ai-fve-pv/ai-live
  • /spot/spot-ote/spot-config
  • /weather*/graph/api/data/api/status/health
  • průvodce /nastaveni-krok*

8. PWM, distributor, AI FVE, systémové režimy

8.1 Ruční PWM (nové v 601)

  • Stránka /pwm — ruční nastavení výkonu
  • SPIFFS: /pwm_web_manual.ea/pwm_web_value.ea
  • Při zapnutém manuálu se přeskočí automatický výpočet PWM (větev v vypocet01.h / OvladaniPwmSSR)
  • V horní navigaci 601: odkaz PWM (v 302 byl typicky Solar)

8.2 Distributor Min / Max W

  • 302: na /teplota viditelná pole Distr. Min/Max; při nule často fallback kolem 50 / 200 W.
  • 601: editace Min/Max ve formuláři často zakomentovaná; defaulty typu 200 / 300 W a solar práh 300 W (SPIFFS / konstanty); hodnoty se mohou auto-zapsat při „unset“.

8.3 AI FVE a režimy

  • Obě verze: /system-modes/ai-fve-pv (odhad FVE z U×I MQTT), AI live
  • Zásadní změna API MQTT nenalezena — stejná rodina ArduinoMqttClient

9. Weather / Solar forecast / test režim

Modul 302 601
Weather (weather_aplikace) aktivní aktivní (shodný obsah)
forecast.solar (solar_aplikace) includováno + web /solar* odpojeno (soubor může zbýt, include chybí)
testovaci_rezim soubor ve složce, typicky bez include v .ino stejně

10. OTA, SPIFFS, partitions

10.1 OTA

  • 302: web OTA nenalezeno (bez Update/firmware-update)
  • 601: #include , UI na /reset, POST /firmware-update, stavy na LCD/OLED, binárky easun32.bin / easunS3.bin
  • První přechod 302 → 601 stále obvykle USB flash; další aktualizace už mohou jít OTA (stejná rodina 601)

10.2 SPIFFS záloha (nové v 601)

  • Export ZIP: /spiffs-export.zip
  • Import: /spiffs-import
  • Také napojení ve wizardu nastaveni
  • Ochrana: mazání SPIFFS spíš POST-only (proti prefetch GET)

10.3 partitions.csv (breaking)

Oblast 302 (typicky) 601 (typicky)
Aplikace (app0/app1) cca 0x1E0000 (~1,875 MB) cca 0x1F0000 (~1,938 MB)
SPIFFS cca 0x30000 (192 KB) cca 0x10000 (64 KB) — menší

Důsledek: flash s novou partition table obvykle smaže SPIFFS. Před upgradem zálohujte nastavení (WiFi, MQTT, limity, ESP-NOW…). V 601 pak import ZIP.


11. Serial / diagnostika

  • Obě: úrovně výpisů přes WebSerialAno a stránku /serial (SPIFFS /serial1.ea)
  • 601: výrazné tagy [CNB EUR/CZK] pro kurz; po Fázi Spot Gate plánován tag [SPOT GATE] (viz spotove-ceny.html)
  • 601: při startu log pinové mapy / FW string podle desky

12. Co zůstalo koncepčně stejné

  • Async web server, SPIFFS konfigurace (*.ea)
  • MQTT odběr solár / síť / baterie, řízení SSR + PWM
  • ESP-NOW teplotní síť
  • Systémové režimy a AI větev (včetně FVE·AI)
  • Weather
  • Spot OTE jako zdroj cen (OTE-only)
  • Průvodce prvním nastavením

13. Checklist migrace 302 → 601

  1. Zvolte v Arduino IDE správnou desku: ESP32 Dev Module nebo ESP32S3 Dev Module.
  2. Zálohujte SPIFFS / nastavení z 302 (poznámky, screenshoty, export pokud máte).
  3. Flashněte 601 se správnou partitions.csv (očekávejte prázdné SPIFFS).
  4. Obnovte WiFi, MQTT, limity Spot, ESP-NOW PMK/MAC, mapování teplot.
  5. Na S3: DS18 na GPIO 17; ověřte RTC, pokud ho používáte.
  6. Ověřte Serial: FW S3.0601 nebo 32.0601.
  7. Ověřte /spot-ote (HTTP 200, ne 301) a kurz ČNB ([CNB EUR/CZK]).
  8. Bookmarky na /solar* nefungují — použijte weather / jiné predikce.
  9. Distributor Min/Max: zkontrolujte hodnoty ve SPIFFS (defaulty se mohly změnit).
  10. Ruční /pwm po testu vypněte, ať neblokuje automatiku.
  11. Další upgrady v rámci 601 můžete zkoušet přes OTA na /reset → firmware update (správný .bin pro desku).

14. Související dokumentace ve složce 601

  • zapojeni-esp — piny ESP32 / ESP32-S3
  • popis-mereni — měření / záložky
  • spotove-ceny — spotové ceny, limity, plán Spot Gate - připravujeme

15. Poznámka k přesnosti

Porovnání vychází z analýzy zdrojových souborů ve složkách projektů (řádkové počty, #includeserver.on, pinové mapy, spotove_ceny.hpartitions.csv, dokumentace).
Drobné lokální úpravy v „kopie“ složkách 601 nejsou předmětem tohoto dokumentu — referenční je hlavní složka ESP32-Grid-Load-Vypocet601.

 

4 zobrazení

Diskuze

Zatím žádný příspěvek. Buďte první, kdo se k článku vyjádří.

Přidat příspěvek

Příspěvek se zobrazí po schválení.