Příspěvek
od jankop » 09 úno 2025, 15:11
Dík za pomoc gilhade. Zrušil jsem tu deklaraci, protože to nejspíš fatální chyba byla. Ale stejně to nefungovalo. Někde jsem právě teď narazil na zmínku, že RTC_DATA_ATTR uchovává data při DeepSleep a až RTC_NOINIT_ATTR uchová data i při restartu. A faktem je, že s RTC_NOINIT_ATTR mi to konečně funguje. Tohle moc zdokumentované není. Strávil jsem s tím spoustu času.
U ESP8266, který jsem doposud výhradně používal, je mechanizmus RTC mem. poněkud jiný. S ESP32 se teprve seznamuji a portoval jsem na něj program právě z ESP8266.
Dovolím si přidat pár postřehů.
1. Narazil jsem na Sonoff BasicR4, WiFi switch, který je založen na ESP32 C3. Protože kompletní zařízení v krabičce bylo za cca 170Kč, tak jsem si ho pořídil.
2. Ještě než jsem ho měl doma, jsem zjistil, že prázdný skech má po kompilaci velikost asi 266kB. V reálu pak program portovaný z ESP8266 na ESP32 C3 byl 3x delší.
3. Doba kompilace se mi jeví příšerně dlouhá i když mám docela slušný počítač. Naštěstí z toho člověka ruce nebolí.
4. Předchozí generace Sonoff Basic dovolovala bezprostředně aplikovat OTA bez potřeby sériové linky. U Sonoff BasicR4 jsem marně několik hodin pátral po této možnosti a nakonec jsem potupně sáhl po sériovém adaptéru.
5. V hardwarové konstrukci tohoto BasicR4 je jedna zásadní změna, kterou je třeba bezvýhradně respektovat. Je to skutečnost, že je vybaven stepdown měničem, ale tento měnič nemá transformátor a tedy je zařízení trvale galvanicky spojeno se sítí. Holt šetří se všude. Proto není možné připojovat k tomuto zařízení žádné senzory a externí doplňky. Programování musí pochopitelně také probíhat při odpojené síti, pouze s napájením z USB/Serial adaptéru. Nerspektování tohoto faktu může zničit váš NB/PC nebo vás (neberme si servítky) také přizabít. Na druhé straně takový měnič bez trafa z 230V na 3.3V může být docela zajímavý.
6. Program, který jsem přenášel, jsem měl na ESP8266 hodně vyladěný. Je to docela náročný http server. Musel jsem tam sáhnout i k fintám s životností souborů v cache prohlížeče. Snad proto musím konstatovat, že rozdíl ve výkonu těchto dvou zařízení na stejném jobu je sotva patrný. Dokonce pozoruji u ESP32 jakasi drobná zamrznutí. To by údajně mohlo souviset s power-managementem tohoto RISC procesoru. To chci ještě identifikovat a doladit.
7. Aktivoval jsem IPv6 a v prvním přiblížení se jeví pěkně funkční.V tomhle kontextu jsem si vzpomněl, že O2 chce za statickou IPv6 s prefixem /64 120Kč.
8. Co můžete při pořízení Sonoff BasicR4 čekat? Je to trocha bižuterie a pak procesor ESP32 C3, relé, modrá LED a tlačítko. Bez nástrojů demontovatelná krabička. Pak stačí připájet čtyřpinový hřebínek pro 3V3, Rx,TX a GND. Flashování přímo z Arduino IDE. Stačí stisknout tlačítko a připojit USB/serial adapter do počítače. LED začne svítit cca polovičním svitem, to je aktivní bootloader.
9. K BasicR4 je k dispozici firemní software eWelink, který dovede mnohé. Ovšem, když si BasicR4 flashnete, tak původní software už tam nedostanete. Na záruku můžete také zapomenout. Můžete ale zařadit tuhle hračku do své chytré domácnosti třeba pomocí software Tasmota.