ESP IDE changelog

Kompletní přehled verzí ze souboru changelog.txt.

Zpět na web
2.1.33_beta
  • Opraveno generování digitálních vstupů při použití proměnné nebo výrazu jako čísla GPIO. Nastavení pull-up/pull-down se provádí přímo na místě bloku, například uvnitř cyklu; čtení používá uložený objekt podle skutečného čísla pinu a zachovává nastavení vstupu. Pro pevná čísla GPIO zůstává původní generování zachováno.
  • Doplněna podpora proměnných a výrazů jako čísla pinu v ADC blocích pro ESP32, ESP32-C3, ESP32-S3, měření napětí a RP2040. Objekty ADC se vytvářejí až při použití a opakovaně využívají; dynamické čtení uplatňuje útlum a rozlišení požadované daným blokem. Zachovány původní přepočty hodnot a generování pro pevná čísla pinů.
2.1.32_beta
  • Přidána španělština (Español): celé jazykové balíčky UI a Blockly včetně vlastních ESP bloků, návrháře displeje a editoru fontů, samostatný editor obrázků, výběr jazyka a offline cache. Překlad porovnává hlavně český význam s anglickým kontextem; zachovává klíče, parametry a technické identifikátory.
  • Opraveny nalezené anglické překlady: barevná složka RGB místo složky souborů, osa Z místo FROM, periodický a jednorázový časovač, RTC, budič motoru a popis rychlosti gyroskopu. Sjednocen anglický popisek délky Bluetooth názvu a informace o ovládání simulátoru s češtinou.
2.1.30_beta
  • Po volbě USB v dialogu připojení při Spustit a následném zrušení výběru portu se nabídne otevření instalátoru MicroPythonu nebo zrušení připojování. Nabídka netvrdí, že firmware chybí; prohlížeč nerozlišuje prázdný seznam portů od běžného zrušení. Zachován kompaktní vzhled, informační ikona SweetAlertu, motivy a překlady CZ/EN/DE. Přímé připojení USB, Bluetooth a úspěšné připojení se nemění.
2.1.29_beta
  • Zpřesněna analytika spuštění a připojení: původní kontext projektu a transportu zůstává zachován i po odpojení, pokus má nejvýše jeden výsledek a chyby rozlišují fázi přípravy, zálohy, prostředků, uploadu a startu. Zrušený výběr zařízení se měří odděleně od chyby; neúspěšný USB zápis příkazu Run se již nevykáže jako úspěch.
  • Doplněno první úspěšné odeslání programu v načtené stránce, volby diagnostického dialogu a označení zdroje/verze měření. Připraven aktualizovaný denní GA4 report s oddělením nových dat, auditem historické aktivace, typy startu a ochranou před přepsáním dat při chybě dotazu. Nasazení reportu a kontrola pravidel v GA4 jsou samostatný krok.
2.1.28_beta
  • Měření editor_ready rozlišuje první načtení, opakovaný start stejné verze a aktualizaci. Doplněn celkový čas včetně automatického obnovení po aktualizaci, doba synchronizace Service Workeru a její výsledek. Původní ready_time_ms zůstává zachován; měření nepřidává síťové požadavky ani nemění cache nebo načítání. Výsledek je dostupný také lokálně v konzoli.
2.1.27_beta
  • Dialog Připojte zařízení nově zobrazuje nad nadpisem standardní animovanou informační ikonu SweetAlertu. Zachována kompaktní tlačítka USB / Bluetooth a Zrušit.
2.1.26_beta
  • Upraveny texty diagnostického dialogu: chyba komunikace s MicroPythonem, samostatné doporučení RESETu, vysvětlení požadovaného firmware a tlačítko Instalovat MicroPython. Doplněny překlady CZ/EN/DE.
2.1.25_beta
  • Diagnostika REPL nabízí nejprve výběr jiného zařízení, poté instalaci firmware a zavření. Před novým výběrem se uvolní původní USB/Bluetooth spojení a použije běžná cesta připojení. Stejný dialog se použije i při stávajícím selhání vstupu do Bluetooth raw REPL, bez změny příkazů či časování BLE.
2.1.24_beta
  • Hláška připojení USB se vypisuje na samostatném řádku před verzí MicroPythonu. Výzva >>> zůstává posledním řádkem konzole bez vloženého stavového textu; komunikační sekvence a ověření REPL jsou zachovány.
2.1.23_beta
  • USB připojení po stávající sekvenci Ctrl+C / Ctrl+B ověřuje čerstvou výzvu >>> bez dalších příkazů. Buffery se čistí před výběrem portu; čekání na REPL má nastavitelný limit connectReplTimeoutMs (výchozí 3000 ms). Při nepotvrzeném REPL se port uvolní a zobrazí doporučení RESETu / instalace firmware s animovanou výstrahou SweetAlertu.
2.1.22_beta
  • Při nepotvrzeném vstupu do USB raw REPL se přenos ihned zastaví a nabídne doporučení fyzického resetu nebo otevření stávajícího instalátoru. Stará odpověď REPL se nepoužije; běžná úspěšná komunikace nepřidává příkazy ani čekání. Pozdější timeout zůstává chybou přenosu, nikoli důkazem chybějícího MicroPythonu.
2.1.21_beta
  • Tlačítka USB a Bluetooth společně vyplňují stejnou šířku jako tlačítko Zrušit; kompaktní výška a schválený hover zůstávají zachované.
2.1.20_beta
  • Tlačítka USB a Bluetooth v dialogu připojení jsou menší (výška 38 px, ikony 24 px) a přebírají pozadí i výraznější hover/focus ze správce doplňků.
2.1.19_beta
  • Dialog připojení je kompaktní a vzhledově sladěný s uvítací nabídkou: neutrální barvy, krátký popis a rovnocenná tlačítka USB / Bluetooth s původními ikonami. Velká informační ikona byla odstraněna; upraveny překlady CZ/EN/DE.
2.1.18_beta
  • USB tlačítko používá ikonu item_usb_disconnected.png.
  • Tlačítka připojení v dialogu Spustit nyní používají existující ikony USB a Bluetooth z nového menu. Lokalizované popisky a podpora motivů zůstávají zachované.
2.1.16_beta
  • Při spuštění bez připojeného zařízení se zobrazí přehledný dialog s přímým připojením přes USB nebo Bluetooth podle možností procesoru a prohlížeče. Dialog používá standardní animovanou informační ikonu SweetAlert, respektuje světlý i tmavý motiv a překlady CZ/EN/DE; po připojení uživatel program spustí znovu.
  • Běžná výzva k připojení a volba uživatele se měří odděleně (run_connect_prompt / run_connect_choice), bez započítání do run_attempt a run_error. Diagnostika nepřipraveného simulátoru zůstává zachována.
2.1.15_beta
  • Přegenerován media.pak s aktuální ikonou uvítací nabídky. Manifest balíčku a verze offline cache byly aktualizovány, aby se nová ikona načetla i v PWA.
2.1.12_beta
  • Při úplně prvním spuštění se zobrazí lokalizovaná uvítací nabídka s volbou blikající LED, kompletního projektu PONG nebo prázdného projektu. Oba příklady používají vestavěný simulátor a nevyžadují připojenou vývojovou desku.
  • Uvítací nabídku lze později znovu otevřít z konce menu Projekt. Má vlastní ikonu, skutečné náhledy, ploché pozadí bez dekorativního pruhu, nenápadnější zavírací tlačítko a podporuje světlý i tmavý motiv.
  • Volba prázdného projektu zachovává dva výchozí programové bloky stejně jako nově načtená stránka.
  • Náhledy a nová ikona jsou zahrnuté v media.pak, manifestu asset-packs.json i generovaném fallback seznamu Service Workeru; při selhání balíčku se použijí původní PNG soubory.
  • Přidána jediná telemetrická událost welcome_choice pro první volbu uživatele; ruční pozdější otevření nabídky ji znovu neodesílá.
  • Příklad PONG byl aktualizován a česká varianta byla kompletně přeložena včetně názvů proměnných, popisků a komentářů v blocích.
2.1.8_beta
  • Nové menu během načítací obrazovky čeká na dokončení přípravy assetů Service Workerem. Při chybě balíčku se dál bezpečně použijí původní soubory; URL projektu, simulátor ani Electron se nemění.
2.1.7_beta
  • 175 malých PNG, GIF, SVG a MFNT assetů se při sestavení sdružuje do balíčků media.pak a display_designer.pak; aplikace nadále používá jejich původní URL.
  • Service Worker ověřuje SHA-256, manifesty, offsety, délky a MIME typy a ukládá rozbalené soubory do verzované offline cache se strategií cache-first.
  • Pokud chybí nebo je poškozený index či některý balíček, automaticky se použijí původní soubory. Neúplná nová cache se neaktivuje a předchozí funkční verze zůstane zachována.
  • Přidán deterministický build skript, kontrolní režim a regresní testy binární shody, MIME typů a všech fallback scénářů.
2.1.6_beta
  • Rozšířena produktová telemetrie Google Analytics o stavové milníky připravení editoru, první úpravy, otevření projektu nebo příkladu, spuštění programu, připojení zařízení a uložení projektu.
  • Nový milník aktivace rozpozná uživatele, který projekt skutečně upravil a následně úspěšně spustil v simulátoru nebo na zařízení.
  • Události spuštění rozlišují simulátor a fyzické zařízení, použitý transport a normalizovanou kategorii chyby; rychlost načtení editoru se měří také v pásmech do 3 s, 3–8 s a nad 8 s.
  • Telemetrie neodesílá zdrojový kód, názvy soukromých souborů, obsah chyb ani identifikátory zařízení. Odesílání je asynchronní, v Electronu je vypnuté a respektuje uložené odmítnutí analytiky.
  • Veřejné ukázkové projekty lze v přehledech porovnávat podle jejich katalogového ID; automatické načtení projektu se nepočítá jako ruční editace.
2.1.1_beta
  • Při prvním spuštění bez uloženého nastavení se ESP IDE otevře anglicky; parametr ?lang=cs nadále vynutí češtinu.
  • Načítací obrazovka a dialog načítání sdíleného projektu mají český, anglický a německý fallback přímo v HTML, takže při pomalém načítání nezobrazí klíč překladu.
  • Simulator Lite přebírá stejnou APP_VERSION až do Workeru a virtuálního filesystému; nová verze obnoví distribuční soubory, zachová vlastní soubory a konfliktní úpravy zazálohuje.
  • Izolace ESP IDE používá COEP require-corp kompatibilní s WebKitem, aby v Bluefy mohly živé vstupy používat SharedArrayBuffer.
2.1.0_beta
  • Do nabídky Příklady byla přidána kategorie Hry s projekty Dodge 3 Lanes, Flappy Bird, Pong, Arkanoid a Space Invaders.
  • Všech pět her je dostupných v české i kompletní anglické verzi se zachovanou logikou, zapojením, bitmapami a komentáři.
  • Opravený příklad regulace jasu LED rotačním enkodérem byl doplněn také v angličtině včetně přeložených komentářů, proměnných a scény Display Designeru.
  • Obrázek přepínače Blockly/Python zachovává českou grafiku v češtině; angličtina, němčina a ostatní jazyky používají novou anglickou grafiku ve světlém i tmavém motivu.
  • Obě anglické varianty obrázku přepínače jsou součástí offline cache aplikace.
2.0.211
  • Target Simulator je v seznamu hned za Generic; při prvním spuštění bez uložené volby se jako výchozí target použije Generic.
2.0.210
  • Simulator Lite: LED jsou menší a posunuté výše v kartě; popisek zobrazuje LED a GPIO na samostatných řádcích.
2.0.209
  • Simulator Lite: Všechny karty komponent používají stejnou barvu povrchu ve světlém i tmavém režimu.
  • Simulator Lite: Plocha je ve výchozím stavu průhledná a konfigurace podporuje volitelnou bitmapu pozadí s režimy auto, contain a cover.
2.0.208
  • Simulator Lite: Panel je skutečný měnitelný pravý dock, takže již nepřekrývá textové záložky ani terminál; lze jej skrýt nebo odpojit do přesouvatelného okna.
  • Simulator Lite: Hlavička je kompaktní, tovární reset FS je v nabídce a celý panel včetně iframe respektuje světlé i tmavé schéma ESP IDE.
  • Simulator Lite: Před nahráním programu se obnoví pouze Worker a RPC runtime; iframe, scéna a načtené assety zůstávají zachované. Úplný reload slouží jen jako nouzová obnova.
  • Simulator Lite: Tovární soubory se mezi restarty berou z verzované cache a OLED canvas je znovu sladěný s geometrií bitmapy 800×800.
  • Simulator Lite: NeoPixel má nový podklad s osmi přesně definovanými pozicemi LED, enkodér kompaktnější rozložení ovládání a plocha scény průhledné pozadí.
  • Simulator Lite: Režim serva lze přepínat za běhu, barvu LED měnit kliknutím a popisky DC motorů zobrazují GPIO na samostatném řádku.
2.0.170
  • Přidána podpora pro desku ESP32-S3 Robotic Board včetně nového toolboxu, povoleného Bluetooth a vyhrazených bloků digitálního i analogového pinoutu.
  • Do jádra Blockly integrovány bloky a Python generátory pro gyroskop a akcelerometr MPU6500 s podporou Madgwick filtru.
  • Doplněny české, anglické a německé překlady pro nové bloky i popisky v toolboxu.
2.0.159
  • Anglické verze pěti příkladů aktualizovaných 15. 8. 2026 byly znovu vytvořeny z českých zdrojů a mají přeložené nové komentáře, texty a názvy proměnných.
2.0.158
  • Ikony štětce, gumy a koše z Display Designeru jsou nyní přednačítané do offline cache aplikace.
2.0.157
  • Položka Příklady v novém menu používá novou samostatnou ikonu, která je zahrnutá také v offline cache aplikace.
2.0.156
  • Všech 12 ukázkových projektů je nově dostupných také v anglické verzi ve složce examples/en.
  • Anglické projekty mají přeložené komentáře, textové výstupy, názvy proměnných a podprogramů; zapojení, piny a logika zůstávají shodné s českými originály.
2.0.155
  • Menu Příklady nyní načítá lokální .blk projekty přímo ze serveru namísto dřívějších share kódů.
  • Katalog obsahuje kategorie Základy, Senzory a Displeje a na jednom místě propojuje přeložené názvy s relativními cestami projektů.
  • Čeština používá složku examples/cs s anglickým fallbackem; angličtina, němčina a další jazyky používají examples/en.
  • Stažený soubor se před otevřením kontroluje a při chybě zůstane aktuální projekt beze změny. Online se načítá aktuální verze, dříve otevřené příklady zůstávají dostupné z PWA cache i offline.
  • Šipky u položky Příklady a kategorií v jejím podmenu jsou nyní přesně výškově vystředěné.
2.0.152
  • Textové bloky pro získání znaku, podřetězce, hledání, změnu velikosti písmen a ořezání mezer nyní bezpečně převádějí číselný vstup na text.
  • Bloky délky a kontroly prázdné hodnoty nově přijímají čísla, přičemž zachovávají původní chování pro texty, seznamy a další kolekce.
  • OLED bloky pro výpis běžným a malým písmem nyní dovolují připojit číselný blok; generovaný MicroPython hodnotu automaticky převede na text.
  • Distribuční Blockly bloky a Python generátor byly znovu sestaveny.
2.0.151
  • Do Nastavení byla přidána volba automatické zálohy Blockly projektu do /backup.blk.gz s režimy Nikdy, Jen přes USB a Vždy.
  • Menu Projekt umí otevřít poslední zálohu ze zařízení a při chybějící nebo poškozené záloze zobrazí srozumitelnou chybu.
  • Nabídka Projekt nyní využívá dostupnou výšku obrazovky, takže se na běžném displeji zobrazí celá bez posuvníku.
  • Nově ukládané a sdílené Blockly projekty obsahují pouze skutečně použité doplňky; při chybějící závislosti se neúplný projekt neuloží.
  • Chybějící modul závislostí při neúplné aktualizaci už nezastaví načtení toolboxu; ukládání projektu zůstane bezpečně zablokované do dokončení aktualizace.
  • Ikony kategorií toolboxu se nyní správně doplní i při pomalejším načtení překladů z webového serveru.
2.0.148
  • Blok „Vykreslit návrh OLED“ má nové výchozí zapnuté zatržítko „Překreslit displej“.
  • Zapnutá volba přidá `display.show()` až za vykreslení statického pozadí i všech dynamických vrstev. Po vypnutí zůstává možné do framebufferu dokreslit dalšími bloky a displej překreslit samostatně.
  • Doplněny české, anglické a německé překlady a znovu sestaveny distribuční Blockly bloky i Python generátor.
2.0.147
  • Volba bílé/černé barvy vybrané vrstvy byla přesunuta z přeplněného pravého sloupce do kontextové lišty pod displejem.
  • Nákres zobrazuje barvu pouze jednou ve své liště štětce; obecná barva vrstvy se pro nákres ani při aktivním kreslicím nástroji nezobrazuje.
  • Každý nový obdélník, elipsa, čára, text a bitmapa vzniká vždy bílý bez ohledu na dříve zvolenou barvu jiné vrstvy nebo štětce.
  • Uvolněné místo v pravém panelu bylo vráceno seznamu vrstev.
2.0.146
  • Všechny obdélníky, elipsy, čáry, texty a bitmapy mají jednotnou volbu bílé nebo černé barvy; staré inverzní texty se automaticky převedou na černou.
  • Nákres používá samostatnou bílou a černou 1bitovou masku, takže v jedné vrstvě podporuje bílé pixely, černé pixely i skutečně průhlednou gumu. Staré nákresy zůstávají kompatibilní.
  • Generátor kreslí černé jednoduché tvary přímo barvou 0. Černé rasterizované objekty a dynamické nákresy používají transparentní blity a druhá maska se vytváří jen tehdy, když obsahuje černé pixely.
  • Otevření grafického editoru nyní zruší výběr zdrojového Blockly bloku a přesune focus do dialogu, takže klávesa Delete nemůže omylem odstranit blok pod editorem.
2.0.145
  • Nákres má nyní výběrový obrys podle skutečně nakreslených pixelů a lze jej za tento obrys uchopit, táhnout myší nebo přesouvat změnou X/Y.
  • Přesun nákresu pouze mění souřadnicový posun jeho vrstvy; zabalená 128×64 bitmapa se nepřevzorkovává a další tahy štětcem správně používají její lokální souřadnice.
2.0.144
  • Živý náhled používá pro Bluetooth samostatný šetrný profil: 48bajtové části framebufferu, transportní úseky nejvýše 20 znaků, 90ms mezery uvnitř příkazu, 140ms mezery mezi příkazy a výrazně delší timeouty.
  • Inicializační Python se již neposílá ani nekompiluje jako jeden velký blok. Je rozdělen do několika menších RAW REPL příkazů a každý příkaz se na všech typech připojení odesílá po omezených částech.
  • USB zůstává rychlé se 128bajtovými částmi framebufferu, ale také získalo mírné dělení dlouhých inicializačních příkazů pro procesory s menší RAM.
2.0.143
  • Přepnutí viditelnosti vrstvy nyní okamžitě plánuje aktualizaci živého náhledu.
  • Aktivní náhled jednou za sekundu znovu porovná vyrastrovanou scénu s posledním potvrzeným snímkem. Beze změny neodesílá nic; při změně používá stejnou sekvenční frontu, takže nemohou vzniknout souběžné REPL přenosy.
2.0.142
  • Živý náhled se nyní aktualizuje také při přesouvání vybraných objektů šipkami, včetně rychlého opakování klávesy a kroku 5 px se `Shift`.
  • Přímé psaní do textové vrstvy rovněž plánuje překreslení připojeného displeje; společný debounce stále chrání REPL před zahlcením.
2.0.141
  • Návrhář OLED displeje dostal živý náhled na připojeném ESP přes stávající USB, BLE nebo WebREPL komunikaci bez úprav REPL driverů.
  • Pomocné funkce se instalují pouze do RAM pomocí RAW REPL; framebuffer se následně přenáší bezpečnými tisknutelnými Base64 příkazy po 128 bajtech a vykreslí se až samostatným voláním `show()`.
  • První náhled odešle celý framebuffer, další změny pouze upravené bloky. Debounce, sekvenční fronta a prodlevy mezi příkazy zabraňují zahlcení pomalejší desky.
  • Doplněny srozumitelné chyby pro nepřipojenou desku, chybějící framebuffer, chybějící `display.show()`, nesprávnou velikost framebufferu, odmítnutá data a timeout zařízení.
2.0.140
  • Nenápadná ikona tužky v bloku Návrháře OLED displeje byla nahrazena výrazným lokalizovaným CTA tlačítkem „Otevřít grafický editor“ na samostatném řádku bloku.
2.0.139
  • Opraven dynamický inverzní text na monochromatických framebufferech: knihovna nyní obrací masku přímo ve svém opakovaně používaném bufferu a vykresluje černé pixely pomocí transparentního klíče 1.
  • Oprava nepoužívá paletu ani další framebuffer a opakované stejné znaky znovu využívají již obrácenou masku.
  • Panel vlastností textu dostal více výšky na úkor menší části seznamu vrstev, takže nové zatržítko nepřetéká mimo svůj box.
2.0.138
  • Každý řádek v seznamu vrstev má vlastní lokální ikonu koše. Smazání jedné vrstvy vyžaduje potvrzení a lze je vrátit funkcí Undo.
  • Textové vrstvy podporují inverzní barvy pro vykreslení černých znaků přes světlé pozadí, a to i při dynamickém textu nebo souřadnicích.
  • Inverzní dynamický text používá původní jednobitovou masku fontu bez kopie fontu nebo dalšího framebufferu znaků.
2.0.137
  • Čáry v Návrháři OLED displeje mohou mít volitelnou šířku 1, 2, 3 nebo 5 px; stejný pixelový výsledek se používá v náhledu, statickém framebufferu i generovaném kódu.
  • Obdélníkům lze nastavit zaoblení rohů od 0 px až do poloviny kratší strany, a to pro obrysovou i vyplněnou variantu.
  • Jednopixelové čáry a obdélníky s ostrými rohy nadále používají rychlé funkce MicroPython `line()`, `rect()` a `fill_rect()`. Silnější čáry a dynamické zaoblené obdélníky se předem rastrují a vykreslují jako zarovnané transparentní bitmapy.
2.0.136
  • Přidán integrovaný Blockly blok Návrhář OLED displeje pro grafický návrh monochromatických scén 128×64 px; kompletní editovatelná scéna se ukládá přímo do mutace bloku a zůstává součástí projektu.
  • Návrhář podporuje obdélníky, čáry, elipsy, text, importované bitmapy a ruční nákresy štětcem nebo gumou o několika velikostech.
  • Objekty lze vybírat jednotlivě i ve skupinách, přesouvat myší nebo šipkami, měnit jejich velikost za rohy, duplikovat, kopírovat a vkládat přes `Ctrl+C`/`Ctrl+V`, zarovnávat a rovnoměrně rozmísťovat.
  • Vrstvy lze pojmenovat, skrýt, duplikovat, smazat a přesouvat šipkami v pořadí; dynamické vrstvy zůstávají automaticky nad statickým pozadím.
  • Doplněna místní historie změn s Undo/Redo, ochrana před zavřením s neuloženými změnami a zachytávání klávesových zkratek, aby se současně nekopíroval nebo nemazal blok pod dialogem.
  • Rozhraní návrháře respektuje světlý i tmavý motiv, má kontrastnější aktivní tlačítka, úsporné responzivní rozložení, zvětšený režim a stabilní panel vlastností a vrstev bez nežádoucího poskakování a vnořených posuvníků.
  • Pixelová mřížka používá samostatný canvas a celočíselné fyzické měřítko, takže jsou všechny pixely stejně velké a čáry zůstávají ostré i při DPI škálování; kurzor štětce a gumy ukazuje skutečnou velikost zásahu.
  • Tlačítko Bitmapa otevírá přímo systémový výběr PNG, JPEG, BMP nebo WebP. Import nabízí změnu rozměrů, práh černé, inverzi, dithering a volbu, zda černé pixely překreslí pozadí, nebo budou průhledné.
  • Textový nástroj nabízí integrované bitmapové fonty s předgenerovaným náhledem `ABCabc123`, výchozím fontem 5×8 a přímou editací obsahu textu; vlastní importované fonty se řadí na konec nabídky.
  • Přidán pokročilý editor monospace fontů s pixelovou editací 96 znaků, náhledem textu, změnou rozměru buňky, globálním posunem znaků X/Y, importem a exportem MFNT a generováním z fontů dostupných v systému.
  • Font editor umí načítat bitmapové fonty BDF, PSF1/PSF2, PSFU a jejich gzip varianty včetně Unicode tabulek; přidán také nástroj pro bezztrátový převod bitmapových OTB fontů do MFNT.
  • MFNT v1 se nově exportuje v procesorově výhodném formátu `MONO_VLSB` s výškou zarovnanou na celé osmipixelové stránky. Všechny náhledy a renderery dodržují povinnou mezeru 1 px mezi znaky.
  • Připravena firmware knihovna `/lib/espide_monofont.py`; generovaný kód používá běžný import `from espide_monofont import MonoFont`, cache instancí fontů a bezpečně nahrazuje nepodporované znaky mezerou bez seeku mimo soubor.
  • Statické vrstvy se ve výchozím stavu předpočítají v prohlížeči do jediného framebufferu. Dynamické texty, souřadnice X/Y a viditelnost lze volitelně vystavit jako vstupy mutace Blockly bloku a vykreslují se až nad statickým pozadím.
  • Přidán volitelný projektový režim ukládání všech neprázdných statických scén do jediného raw souboru `/gfx/scene.dat`; před spuštěním se spolu s potřebnými vlastními fonty odešle do zařízení a scény se načítají rychlým `seek()` a `readinto()`.
  • Prázdné a čistě dynamické scény již nevkládají ani neodesílají 1024 nulových bajtů, ale pouze vyčistí existující framebuffer. Generovaný kód používá kratší identifikátory a jednorázové souřadnice zapisuje přímo do kreslicích volání.
  • Sjednoceno bajtové zarovnání všech lokálních framebufferů, ošetřeny záporné souřadnice a objekty přesahující displej; ořez probíhá až při výsledném vykreslení a skryté části objektu zůstávají editovatelné.
  • Upravená sada nyní obsahuje 33 vzájemně odlišných integrovaných fontů a jejich lokální náhledy; nepoužívané podobné fonty 8×8, 8×16, 16×32 a 28×64 byly odstraněny také z offline cache.
  • Zrychlen start aplikace: počáteční jazyk Blockly se načítá ještě před registrací bloků, takže již nevznikají desítky falešných hlášení `No message string for %{BKY_...}` s nákladnými výpisy zásobníku.
2.0.72
  • Doplněna německá lokalizace rozhraní, Blockly bloků a editoru obrázků.
  • Přepínač jazyků nyní bezpečně obsluhuje češtinu, angličtinu a němčinu; rychlé změny se zpracují ve správném pořadí.
  • Dvojjazyčné doplňky bez německých textů používají v německém režimu anglický překlad místo českého výchozího textu.
  • Německé jazykové soubory jsou součástí offline cache a vlastní Blockly dialogy používají aktivní lokalizaci.
  • Německé rozhraní prošlo korekturou rodilého mluvčího; názvy, stavové texty a technická terminologie jsou přirozenější a oslovení je sjednocené na „du“.
  • Načítací obrazovka používá správný jazyk také během aktualizace offline verze, ještě před načtením hlavního jazykového balíčku.
  • Opraveny německé popisky souřadnic `x`/`y` u bloků displeje a grafu: chybné `j` bylo nahrazeno `y` a obě osy mají shodně malá písmena.
2.0.66
  • Verze aplikace, verzovanych assetu a offline cache se nastavuje pouze jako `APP_VERSION` v `index.html`; Service Worker ji prebira z registracni URL.
  • Precache stahuje nejvyse osm souboru paralelne, ma pevny timeout a nova verze se aktivuje jen po kompletnim ulozeni vsech offline souboru.
  • Hotova cache stejne verze se znovu nestahuje a staticke soubory se jiz zbytecne nerevaliduji na pozadi.
  • Aktualizace zustava pod loading obrazovkou, ale pri chybe nebo timeoutu pokracuje predchozi aktivni verze bez pozdejsiho necekaneho prevzeti stranky.
  • Opraven hard reload, pri kterem muze byt spravny Service Worker aktivni, ale aktualni dokument nema `navigator.serviceWorker.controller`.
  • `index.html` a `sw.js` se na serveru vzdy revaliduji; Service Worker CacheStorage a offline spusteni tim nejsou omezeny.
2.0.65
  • Zmensena typografie kategorii a nazvu projektu v bocnim panelu Priklady.
2.0.64
  • Do noveho menu Projekt byla mezi automaticke spusteni a otevreni z PC pridana polozka Priklady.
  • Priklady jsou zobrazeny v bocnim stromu se ctyrmi vyukovymi kategoriemi a nacitaji existujici sestiznakove share kody.
  • Katalog prikladu je ulozen samostatne v `js/examples_catalog.js` a podporuje preklady i svetly/tmavy motiv menu.
2.0.63
  • MCP browser bridge je ve vychozim stavu vypnuty a bezne otevreni ESP IDE se uz nepokousi pripojit k `ws://127.0.0.1:8765`.
  • AI bridge lze zapnout explicitne parametrem `?espide_mcp=1` nebo funkci `ESPIDE_AI_MCP_BRIDGE.enable()`.
  • Odstraneny nekonecne opakovane pokusy o WebSocket pripojeni pri vypnutem nebo ukoncenem MCP serveru.
  • Navysena verze aplikace a Service Worker cache, aby se opraveny bridge nacetl misto starsi cachovane verze.
2.0.62
  • Blockly automatizacni helper byl vyclenen z `index.html` do verzovaneho API `js/espide_ai_api.js` se zachovanim zpetne kompatibility.
  • Pridany nastroje pro cteni stavu IDE, seznamu a popisu bloku, Blockly workspace, vygenerovaneho kodu, terminalu, nastaveni a metadat doplnku.
  • Doplneny udalosti zmen workspace, pripojeni, jazyka, toolboxu a terminalu.
  • Pridano transakcni `apply_workspace_patch` s nahledem `dryRun`, kontrolou revize, validaci, automatickym rollbackem a funkci Undo.
  • Pridan lokalni MCP server a loopback browser bridge pro ovladani ESP IDE z Codexu bez OpenAI API klice ve webove aplikaci.
  • Pridana projektova Codex pravidla, workflow pro vyvoj doplnku, automaticke testy `.newblk` a podpora primych CZ/EN textu v blocich a toolboxu.
2.0.61
  • SPI inicializace OLED displeju pouziva i pin MISO, ktery MicroPython vyzaduje pro vytvoreni `SoftSPI`.
  • Upraveny popisky SPI OLED bloku a diagnosticke hlasky s piny.
  • Navysena verze aplikace a Service Worker cache, aby se aktualizovaly `sw.js`, Blockly JavaScript soubory a preklady.
2.0.60
  • Lokalne nacitane JS a CSS soubory v `index.html` se nyni verzuji jednotne podle verze aplikace.
  • Opraveno nacitani `js/new_menu.js` a `css/new_menu.css`, ktere zustavalo na stare query verzi `2026-05-29` a mohlo na nekterych zarizenich drzet starou podobu menu.
2.0.59
  • Jazykove JSON soubory `i18n/*.json` a Blockly prekladove soubory `js/{lang}.js` se nacitaji s verzovacim parametrem podle aktualni verze ESP IDE.
  • Service worker u statickych souboru respektuje query parametr, takze zmena `?v=` spolehlive vynuti nacteni nove verze.
  • Do offline cache doplnen soubor `js/en.js`.
2.0.58
  • Pri zapnuti automatickeho pridavani startovacich bloku se zobrazi dotaz, zda je uzivatel chce pridat i do aktualniho projektu.
  • Dotaz se zobrazi jen tehdy, kdyz na Blockly plose jeste neni blok `program_start` ani `program_loop`; vlozeni existujici program nenahrazuje.
2.0.57
  • Bloky `program_start` a `program_loop` jsou ve vsech toolboxech presunuty na zacatek sekce Program.
2.0.56
  • Opraveno poradi generovani startovnich programovych bloku.
  • Kod spusteny jednou se nyni generuje pred nekonecnou smyckou i tehdy, kdyz je blok smycky na plose umisten vyse.
2.0.55
  • Pri cistem otevreni editoru se na prazdnou Blockly plochu automaticky vlozi startovni bloky pro kod spusteny jednou a nekonecnou smycku.
  • Automaticke vlozeni se neprovadi pri nacteni hotoveho programu z odkazu nebo pri otevreni existujiciho projektu.
  • Do Nastaveni pridana volba pro zapnuti/vypnuti startovnich programovych bloku. Nastaveni se uklada do `localStorage` a vychozi stav je zapnuto.
  • Doplneny CZ/EN texty a pripraveno cachovani ikony `item_auto_start_blocks.png`.
2.0.54
  • Pridany programove bloky pro styl `setup()` / `loop()`: kod spusteny jednou a nekonecna smycka.
  • Blok nekonecne smycky generuje `import utime` a v kazde iteraci vola `utime.sleep_ms(0)`, aby se mohla obslouzit preruseni a dalsi ulohy.
  • Doplneny CZ/EN preklady a bloky jsou dostupne v kategorii Program pro vsechny toolboxy.
2.0.53
  • Ukladaci dialogy si nove pamatuji posledni pouzity nazev projektu.
  • Nazev se po ulozeni nebo nacteni souboru propise do dialogu pro ulozeni do PC i do ESP.
  • U textovych souboru se do projektovych dialogu uklada nazev bez pripony, aby pri pozdejsim ulozeni Blockly projektu nevznikaly dvojite pripony.
2.0.52
  • Doplnky s `toolbox_mode: addon_only` se uz neprepnou automaticky bez potvrzeni.
  • Pri nacteni takoveho doplnku se zobrazi dialog, kde lze zvolit nahradu celeho toolboxu nebo jen pridani bloku k beznemu toolboxu.
  • Volba uzivatele se uklada k doplnku a respektuje se i pri dalsim obnoveni toolboxu, nacteni projektu nebo instalaci z katalogu.
  • Doplneny CZ/EN texty dialogu pro rozhodnuti o rezimu toolboxu.
2.0.51
  • Servo knihovna ma vyrazne presnejsi rizeni polohy diky modernejsimu PWM zapisu.
  • Doplneny souvisejici toolboxy, cache a preklady pro aktualni beta build.
2.0.50
  • Pridany bloky pro ukladani a nacitani hodnot promennych do INI souboru.
  • Nova knihovna `pvstore.py` zachovava datove typy a chyby vypisuje do konzole.
2.0.49
  • OLED bloky umi vybrat typ displeje: automaticky, SSD1306, SSD1309 nebo SH1106.
  • Doplnena SPI varianta OLED driveru a lepsi podpora SH1106 offsetu.
2.0.48
  • Bluetooth pripojeni bylo upraveno pro lepsi kompatibilitu s Apple zarizenimi.
  • Vylepseno hlaseni chyb a stabilita prenosu pri BLE spojeni.
2.0.47
  • Pridan WebSocket ovladac pro desktopovou aplikaci ESP IDE.
  • Upraveno pripojovani desktopove aplikace bez zavislosti na WebSerial/WebBluetooth.
2.0.22
  • Stabilizovana instalace doplnku v Electronu pres `postMessage` transport.
  • Katalog doplnku se v Electronu otevira s `transport=postmessage`.
  • Webova instalace pres `localStorage` zustava beze zmen.
  • Zachovana kompatibilita se starsimi verzemi IDE (`espide.install.done` fallback).
2.0.21
  • Opraven update flow Service Workeru bez samovolneho restartu UI.
  • Pri nesouladu verze SW zustane loading aktivni, update se dokonci a reload probehne jeste pred otevrenim UI.
  • Pridano zjistovani verze SW pres zpravu `GET_VERSION`.
  • Offline/PWA: doplnen `toolbox_ESPBIT.xml`, manifest pouziva relativni `start_url`/`scope` a cesty ikon.
2.0.20
  • BLE na iOS/Bluefy: ciselne chyby (napr. `2`) se mapuji na srozumitelne hlasky + CZ/EN i18n.
  • Sjednoceny cache-busting `?v=` parametry v hlavnim HTML.
  • SW registrace pouziva relativni `sw.js` a scope odvozeny z aktualni URL (bez beta cesty).
  • Opravy `filemanager.html` a doplneni chybejicich souboru do SW precache.
2.0.14
  • Pridano komprimovane ukladani Blockly projektu do ESP (`.blk.gz` v `/BLK/`).
  • Pridan dialog `save_esp_dialog`; textovy rezim uklada soubory stejne jako drive (bez komprese).
  • File Manager umi otevrit komprimovane Blockly soubory (`.blk.gz` i `.xml.gz`).
  • Vylepsen vykon overlaye (odebran `backdrop-filter`).
  • SW: navysena verze cache a do precache pridan `js/pako.min.js`.
2.0.13
  • Nasazen novy system horniho menu (`css/new_menu.css`, `js/new_menu.js`, `media/new_menu/`).
  • Pridana 3 rozlozeni menu (`layout1`, `layout2`, `original`) s kompatibilitou k puvodnimu `more_menu`.
  • Stabilizovan `modeSwitch`, osetren konflikt s quick panelem a zlepsena responzivita topbaru.
  • Menu Zarizeni/Nastaveni prepracovano (USB/BLE stavove radky, vyber tematu, `autoRunOnBootDefault`, toolbox ikony).
  • Aktualizovany i18n texty, sjednocen vzhled/citelnost a optimalizovan `syncState()` (throttle 50 ms).
  • SW: doplnena precache o assety noveho menu.
2.0.12
  • Stabilizovano navazani USB REPL po pripojeni.
  • Vylepsena sekvence a casovani vstupu do RAW REPL (USB i BLE sjednoceno).
  • Pridan novy C-shaped blok `program_section` (popis + aktivace/deaktivace cele sekce).
2.0.11
  • Opraven orez offscreen screenshotu workspace (bez prazdneho mista vlevo).
  • Zpresnen vypocet bounding boxu + paddingu.
  • Ostatni screenshot rezimy zustaly beze zmen.
2.0.10
  • Stabilizovano full-workspace snimani pri vetsim Blockly zoomu.
  • Offscreen snimani bezi na stabilnim meritku 1.0, rozliseni se zvysuje render scale.
  • Zachovany puvodni souradnice top-level bloku (bez preskladani).
  • Odebrany docasne debug nastroje pro screenshoty.
2.0.9
  • Screenshoty Blockly do PNG maji transparentni pozadi jako vychozi.
  • Pridana volba bileho pozadi (`whiteBackground: true` / `background: "white"`).
  • Opraveno vykresleni pozadi pro `visible` i `offscreen` rezim.
  • Offscreen screenshot celeho workspace respektuje aktualni zoom.
  • `Ctrl+Shift+S` nyni defaultne exportuje transparentni screenshot.
2.0.8
  • Pridan univerzalni toolbox `toolbox_Generic.xml` pro obecna MicroPython zarizeni.
  • Doplneny toolboxy pro ESP32C6 a RP2350.
  • U ESP32 doplneno mereni napeti pres ADC v mV i V.
2.0.7
  • USB init neprepisuje existujici `run_code()` a `stop_code()` (zachovana logika v `boot.py`).
  • Rozsirena diagnostika chyb v `idecode` (typ vyjimky, traceback, tipy, lepsi handling `MemoryError`).
  • Pridany screenshot funkce Blockly (visible/offscreen, export PNG, hromadne snimani toolboxu).
  • Doplneny i18n texty pro screenshoty (CZ/EN).
  • Opraveno kodovani `index.html` na UTF-8 bez BOM.
2.0.6
  • Pridan binarni BLE protokol pro upload souboru (MAGIC/SEQ/LEN/CRC8) s window ACK.
  • Implementovano obnoveni prenosu (retry, NAK resync, status expected SEQ) + CANCEL.
  • Pred uploadem se zastavuje bezici kod (Ctrl+C), doplneno vyjednani MTU/chunk pres BLE Config.
  • Pri nedostupne podpore je fallback na legacy REPL upload.
  • Zlepseno BLE pripojovani (timeouty GATT kroku + dusledny cleanup po chybe).
2.0.5
  • Pridan dialog Bluetooth nastaveni v menu (vcetne CZ/EN textu).
  • Validace nazvu zarizeni: 3-8 znaku, zakladni ASCII.
  • Cteni/ulozeni jmena v `/cfg/ble_name.cfg`, pri vypnuti Bluetooth se konfigurace smaze.
  • Opraveno zavirani dialogu a osetreny kolize REPL behem cteni/ukladani.
  • Stabilizovana aktualizace Service Workeru.
2.0.4
  • Pridany volby motivu a jazyka v menu (ukladani do localStorage).
  • Stabilizovano nacitani prekladu (I18N) a automaticke nacitani sdilenych projektu z URL.
  • Vylepsen toolbar ve Spravci souboru (responzivita a adaptivni tlacitka).
  • Vylepsen update Service Workeru + pridany startovni volby (force toolbox, lock processor, skryti File Manageru).
  • Instalator: opravy pro ESP8266 flash a binarni upload knihoven `.mpy`.
2.0.3
  • Pridan tmavy rezim s prepinacem v menu (ulozeni do localStorage).
  • Upravene UI, ACE editor i terminal pro svetly/tmavy motiv.
  • Pridana nacitaci obrazovka s logem a spinnerem.
  • Podpora `dark_*` assetu a automaticke prepinani motivu.
  • Upravene styly File Manageru + aktualizovana SW cache pro nove assety.
2.0.2
  • Drobné opravy ve správci souborů a načítání jeho knihovny
  • Upravena funkce pro zastavení programu pro lepší spolehlivost
2.0.1
  • Opraveny nefunkční dialogy po otevření správce souborů
  • Opraven nefunkční správce souborů po znovupřipojení zařízení
  • Odstraněny duplicitní importy javascriptu ve správci souborů
  • Při zavření správce souborů úklid a povolení REPLu
2.0.0
  • Opraveny dialogy ve správci souborů pro desktop verzi
  • Upravena funkce bluetooth připojení v desktop verzi
  • Úprava práce s cache pro desktop aplikaci
  • Zakázání tlačítek joysticku a instalace FW pro desktop verzi
2.0.0_beta
  • Přepracován výpočet velikosti okna na mobilních zařízeních
  • Opraveny chyby ve správci souborů
  • Do bluetooth knihovny doplněn kruhový buffer
1.13.6
  • Přidání správce souborů
  • Přepsání Bluetooth knihovny kvůli chybě v Micropythonu
  • Přidán hack pro zastavování programu v Bluetooth režimu
  • Doplněny funkce pro ukládání souborů do ESP
1.13.5
  • Optimalizace uživatelského rozhraní pro mobilní zařízení
  • Upscale grafiky pro lepší zobrazení displejích s vysokým PPI
  • Ošetření přepínání mezi USB a Bluetooth připojením
  • Doplnění textového režimu s panely
  • Ukládání obsahu textových editorů do localstorage
1.13.4
  • Přidána podpora pro Bluetooth low energy
  • Oprava některých dialogů na mobilních zařízeních
1.13.3
  • Do projektu se ukládají rozšíření jako komentář v xml
  • Načítání projektu ze souboru nastaví procesor a integruje doplňky
  • Načítání projektu z URL: nastaví procesor a integruje doplňky
  • Doplněn seznam změn a verzování editoru do rozbalovacího menu
1.13.2
  • Přidána podpora pro procesory ESP8266
1.13.1
  • Přidána funkce pro instalaci knihoven do procesoru pomocí USB
1.13.0
  • Přidána podpora pro procesory RP2040
1.12.0
  • Vydána USB - Serial verze ESP IDE V1.12
  • Přidána podpora pro ESP32S3
  • Přidány bloky pro souborový systém
  • Přidány bloky pro laserový dálkoměr VL53L0X
  • Přidány bloky pro expandér portů PCF8574
  • Přidány bloky pro UART komunikace
  • Úprava rozložení toolboxu.
1.11.0
  • Přepracovány funkce pro načítání toolboxu
  • Optimalizován webserver
  • Doplněn správce souborů
  • Komprimace uživatelských projektů pro úsporu FLASH paměti
1.10.0
  • Optimalizován kód webserveru
  • Přepracována inicializace I2C rozhraní.
  • Opraveny chyb
1.10.0
  • Nasazen nový kód pro webserver
  • Rozšířeny bloky pro ovládání DC motorů pomocí PWM
  • Přidány bloky pro 5x5 neopixel matici
  • Optimalizováno uživatelské rozhraní pro mobilní zařízení
1.08.0
  • Přidána podpora pro ESP32C3
  • Nové rozhraní pro správu uživatelských bloků
  • Implementován HTTP request blok
  • Try Catch a další funkce.
1.7.0
  • Virtuální joysticky pro snadné ovládání robotických vozítek
1.6.0
  • Implementována podpora ESP Now komunikace mezi procesory
  • Optimalizován webserver.
1.05.0
  • Přidán blok pro čtení ADC pinů pro joystick
  • Přidána podpora pro senzor TCS34725
  • Přidána podpora pro Rotační enkodéry
  • Přidána podpora pro gyroskop MPU6050
  • Přidána podpora pro ovládání modelářských servomotorů
1.03.0
  • Vytvoření editoru obrázků pro OLED Display
  • Experimentální podpora pro ESP8266.
1.02.0
  • Přidán vzdálený náhled na OLED Display.
1.01.0
  • Rozšířeny bloky pro ovládání robota
  • Optimalizován kód webserveru
  • Opraveny chyby.
1.0.0
  • Vydána první verze ESP IDE.