Chromium má už několik let Web Serial API, přes které se webová stránka po vašem svolení připojí na sériový port stejně jako desktopová aplikace. Tím padá hlavní důvod, proč by tyhle drobné nástroje měly být programy. Každý z nich je jedna HTML stránka: komunikace probíhá mezi prohlížečem a deskou, na server neputuje nic, ani nahrávaný firmware, a nastavení se ukládá jen do localStorage prohlížeče. Všechny tři mají stejný vzhled, přepínač češtiny a angličtiny i tmavý a světlý režim.
Serial Monitor: výstup z desky a graf v jednom
Klasický sériový monitor, jaký znáte z Arduino IDE, jen s několika věcmi navíc. Vyberete rychlost přenosu, kliknete na Připojit, prohlížeč se zeptá na port a od té chvíle vidíte, co deska posílá.

- Baud rate od 9600 po 921600 plus vlastní hodnota. Změna se projeví až po novém připojení, nástroj na to upozorní.
- Formát příjmu ASCII, HEX nebo BIN. U ASCII se dá zvolit kódování (UTF-8, ISO-8859-2, Windows-1250), což oceníte u starších zařízení sypajících diakritiku ve Windows-1250.
- Časové značky vypnuté, u každého řádku, nebo na samostatném řádku po zvoleném intervalu. Ta třetí varianta se hodí u rychle chodících dat.
- Filtr schová řádky bez hledaného textu a shody ve zbylých podbarví. Se zaškrtnutým Regex vytáhnete třeba jen chyby přes
^(E|ERROR|CHYBA). Neplatný výraz filtr jen vypne. - Odesílání s historií pod šipkami, volbou konce řádku (LF, CR, CRLF, žádný) a přepínačem ASCII versus HEX. V režimu HEX napíšete
DEAD BEEFa odejdou čtyři bajty. - Reset zařízení pulzuje DTR a RTS, takže deska restartuje bez vytahování USB. Oba signály jdou držet i ručně.
- Export výstupu do
.txtnebo.csvs časovými značkami v milisekundách i v ISO tvaru.
Plotter: číselná data rovnou do grafu

Záložka Plotter kreslí čísla přicházející po sériové lince do grafu. Stačí je posílat oddělené středníkem:
Serial.printf("teplota:%.2f;vlhkost:%.1f;rosny_bod:%.2fn", t, h, dp);
Názvy sérií jsou volitelné, 23.5;60;1013 funguje taky. Výchozí středník má důvod: čárka pak zůstává volná jako desetinná, takže projde i 23,5. Osa Y se přizpůsobuje sama, ale dá se zafixovat, a graf jde uložit jako PNG nebo vyexportovat do CSV.
Dvě věci, které je dobré vědět dopředu. Plotter si vezme každé číslo, které v řádku najde, takže bootovací log ESP32 mu nadělá série z ničeho. A nemíchejte veličiny s hodně odlišnými rozsahy: tlak kolem 1013 hPa udělá z teploty kolem 23 °C rovnou čáru u dna.
Serial Monitor najdete https://serialmonitor.chiptron.cz/
ESP32 Web Flasher: nahrání firmwaru bez esptoolu
Nahrát do ESP32 hotový .bin je pořád zbytečně krkolomné. Buď instalujete Python a esptool.py, nebo v Arduino IDE otevíráte projekt, který kompilovat nechcete. A hlavně musíte znát offsety, na které jednotlivé soubory patří – u původního ESP32 leží bootloader jinde než u novějších S3 a C3, což je nejčastější důvod, proč deska po ručním flashování naběhne do restartové smyčky. Flasher stojí na esptool-js, oficiálním JavaScriptovém portu esptoolu od Espressifu, a tohle za vás pohlídá: offsety dosadí sám podle vybraného čipu a po připojení si z hardwaru přečte, co je na desce doopravdy, takže při neshodě s vaším výběrem zápis vůbec nespustí. Kroky jsou čtyři a další se odemkne vždy až po tom předchozím.

Přetáhnete .bin soubory do plochy a nástroj si přečte jejich hlavičku. Obraz firmwaru začíná bajtem 0xE9, partition tabulka dvojicí 0xAA 0x50, bootloader se od aplikace pozná velikostí. Sloučený obraz (firmware.factory.bin z esptool merge_bin) se pozná podle partition tabulky uvnitř sebe na 0x8000, zapisuje se celý na 0x0 a nástroj k němu odmítne přidat další soubory. V hlavičce je na offsetu 12 také chip_id, takže firmware pro cizí čip neprojde.
Soubor boot_app0.bin hledat nemusíte. Arduino IDE ani PlatformIO ho neexportují, přitom bez něj se deska s OTA rozdělením nemusí rozjet. Je to 8 kB vyplněných hodnotou 0xFF, tedy prázdný OTA oddíl, a flasher ho má vestavěný.
Před zápisem se dá spustit kontrola bez zápisu, která projede všechna pravidla a vypíše plán, ale do desky nezapíše. Volitelně se po nahrání porovná kontrolní součet MD5 a spustí se sériový monitor. Tlačítko Zálohovat stávající přečte celou flash do souboru, což se vyplatí u desky s firmwarem, který už nikde jinde nemáte. U 4 MB to trvá kolem minuty.
A jedna uklidňující věc na závěr: špatným firmwarem desku nezničíte. Flash paměť jde vždycky přepsat znovu. Nevratně zabít ESP32 lze jen zápisem eFuse pojistek, do kterých tento nástroj nikdy nesahá.
ESP32 flasher najdete na https://esp32flasher.chiptron.cz/
Převodník soustav: DEC, BIN, HEX, ASCII a bitové masky
Nejmenší ze tří a používám ho nejčastěji. Čtyři pole, do kteréhokoliv napíšete hodnotu a zbylá se dopočítají. Podstatná je volba šířky 8, 16, 32 nebo 64 bitů: hodnota se pak chová jako registr, co se nevejde, se ořízne, a nástroj to hlásí. Přepnutí na Signed ukáže zápornou interpretaci ve dvojkovém doplňku, přičemž bitový vzor zůstává stejný. To je přesně ten okamžik, kdy člověku docvakne, proč 0xFF je jednou 255 a jednou minus jedna.

Záložka Prefix a C typy vypíše tutéž hodnotu ve tvarech, které se dají vložit rovnou do kódu (0xFF, 0b11111111, 0o377, $FF, %11111111) a přidá odznaky C typů, do kterých se vejde. Bitová kalkulačka umí AND, OR, XOR, NOT a posuny, formát výsledku se řídí operandem A. A Bitmask helper je ta část, kvůli které jsem převodník psal:
uint16_t mask = 0x8421; // (1U << 0) | (1U << 5) | (1U << 10) | (1U << 15)
// Nastavit bity: reg |= mask;
// Vymazat bity: reg &= ~mask;
// Přepnout bity: reg ^= mask;
// Test bitů: if (reg & mask) { ... }
Šířku si můžete nastavit i mimo obvyklé hodnoty, třeba na 24 bitů, a nastavené bity zůstanou zachované. Všechno se kopíruje jedním kliknutím a výsledek jde sdílet odkazem, protože se stav ukládá do adresy stránky.
Převodník mezi soustavami najdete na https://hexdecbin.chiptron.cz/
Co potřebujete
Serial Monitor i Flasher stojí na Web Serial API, které podporují jen prohlížeče postavené na Chromiu: Chrome, Edge a Opera na počítači. Firefox a Safari ho nepodporují, na Androidu se podpora teprve rozjíždí a závisí na verzi Chromu i na zařízení, na iOS není vůbec. Převodník je čistý JavaScript a běží všude.
Pokud se deska v dialogu portu vůbec neobjeví, skoro vždy za to může kabel. Spousta USB kabelů umí jen napájení a nemá datové vodiče, takže se deska rozsvítí, ale počítač o ní neví. Když to nepomůže, chybí ovladač převodníku CP2102 nebo CH340. Desky s nativním USB (ESP32-S3 a C3) žádný nepotřebují.
Nástroje jsou zdarma a bez reklam. Když vám některý ušetří večer hledání, kde je chyba, potěší mě kafe.








Žádné sociální komentáře k dispozici.