Web server přes SPIFFS

Odpovědět
KIko
Příspěvky: 13
Registrován: 28 úno 2021, 10:55
Reputation: 0

Web server přes SPIFFS

Příspěvek od KIko » 28 úno 2021, 11:07

Zdravím.
S něčim takovým uplně poprve tak dotaz.
Při patraní přes google jsem našel vice možnosti.
Někde se použivá pro komunikaci s web strankou knihovna ESPAsyncWebServer.h.
Někde to řeši bez ní.
Chtěl bych jít jen jednou cestou.
Ktera je lepši?
Děkují za radu.

martinius96
Příspěvky: 579
Registrován: 01 srp 2017, 19:29
Reputation: 0
Bydliště: Poprad
Kontaktovat uživatele:

Re: Web server přes SPIFFS

Příspěvek od martinius96 » 28 úno 2021, 11:21

Asynchrónny webserver je vhodný, ak máš na HTML stránke napríklad slider, ktorým si nastavuješ hodnoty 0 až 255 pre RGB ledku.
Async server to vie spracovať ihneď po zmene dynamicky, keď tým sliderom chodíš.
(Nepotrebuješ tu prepnúť a kliknúť na spracovanie HTML formuláru cez submit button, aby sa niečo udialo ako u klasického webservera).
Je ale na implementáciu trošku zložitejší ako klasický webserver, ale v tutoriáloch je to dobre vysvetlené a dá sa z toho výjsť.

Ak to má byť webserver s nejakým formulárom pre zápis hodnôt a, b, alebo výpis troch hodnôt, tak to úplne stačí aj klasický Webserver.
Jeden i druhý webserver dokáže spracovať i klasický formulár, prijať data cez GET / POST...
Napríklad tento termostat beží na klasickom webserveri pre ESP8266.
Obrázek
Do HTML formulára sa zapíšu dáta a odošle sa, vtedy sa spracujú, uložia do emulovanej EEPROM.
Celá stránka sa obnovuje cez Meta tag refresh každých X sekúnd.
Nezávisle na webserveri prebieha každých X sekúnd aj meranie z DS18B20, táto hodnota sa zapíše na webstránku pri jej refreshi.

Ak by som použil Async webserver, tak by som si na stránke iba prepísal hodnoty (nameranú z DS18B20, stav výstupu ZAP/VYP) bez nutnosti prekreslenia celej stránky.

KIko
Příspěvky: 13
Registrován: 28 úno 2021, 10:55
Reputation: 0

Re: Web server přes SPIFFS

Příspěvek od KIko » 28 úno 2021, 12:04

Dik, tak raději pujdu cestou bez toho Asynchrónny webserver.
Kde je prosím problem tady u tohoto?
https://www.arduinoslovakia.eu/blog/201 ... fs?lang=cs
Je tam i demo .
https://github.com/RoboUlbricht/arduino ... ive_spiffs

Mam to připojene a když zadam IP do prohližeče, tak mam prazdnou stranku a v ní napsane Not found: /

Flash size mam 4M(2M)

A SPIFFS připojene.

if (!SPIFFS.begin()) {
Serial.println("An Error SPIFFS");
return;
}

martinius96
Příspěvky: 579
Registrován: 01 srp 2017, 19:29
Reputation: 0
Bydliště: Poprad
Kontaktovat uživatele:

Re: Web server přes SPIFFS

Příspěvek od martinius96 » 28 úno 2021, 12:15

Partition table máš nastavené tak, že je tam i SPIFFS oddiel?
Nahral si si do SPIFFS tie jednotlivé html podstránky cez tool ESP8266FS?
Podľa toho, čo opisuješ tak máš SPIFFS oddiel prázdny, že tam tie .html súbory neboli nahraté.

Tu je návod popisujúci ako nahrať niečo do SPIFFS:
https://www.arduinoslovakia.eu/blog/201 ... tem-spiffs

jankop
Příspěvky: 1029
Registrován: 06 zář 2017, 20:04
Reputation: 0
Bydliště: Brno
Kontaktovat uživatele:

Re: Web server přes SPIFFS

Příspěvek od jankop » 28 úno 2021, 14:40

Otázce použití file systému a modifikace jeho dat jsem se věnoval v posledním příspěvku na svém webu.
https://www.fancon.cz/esp8266-humi-serv ... lient.html
Jde především o to, že v novějších aplikacích je doporučováno použití modernějšího LittleFS.

KIko
Příspěvky: 13
Registrován: 28 úno 2021, 10:55
Reputation: 0

Re: Web server přes SPIFFS

Příspěvek od KIko » 01 bře 2021, 08:05

Klucí, kde muže být problem?
https://www.arduinoslovakia.eu/blog/201 ... tem-spiffs
Nahrání souborů do SPIFFS.
Ten soubor esp8266fs.jar mám asi spravně.
Pokud ho smaznu v tools není přikaz ESP8266 Sketch Data Upload.
V adresaři, kde mám muj projekt jsem vytvořil adresař data a do něj dal HTML.
Spustim arduino ID. Otevřu muj projekt a Tools/ESP8266 Sketch Data Upload

Kód: Vybrat vše

Arduino: 1.8.13 (Windows 10), Vývojová deska: "Generic ESP8266 Module, 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), dtr (aka nodemcu), 26 MHz, 40MHz, DOUT (compatible), 4MB (FS:2MB OTA:~1019KB), 2, nonos-sdk 2.2.1+100 (190703), v2 Lower Memory, Disabled, None, Only Sketch, 115200"
SPIFFS Error: esptool not found!

pavelve
Příspěvky: 27
Registrován: 23 zář 2018, 10:10
Reputation: 0

Re: Web server přes SPIFFS

Příspěvek od pavelve » 01 bře 2021, 10:47

Osobně používám také ESPAsyncWebServer. Jeho výhoda se projeví, pokud 1 stránka potřebuje načíst více souborů. Například html + css + js soubory. Pokud se to řeší synchronně, tak to to ESP dost zaseká a měl jsme zkušenost, že se to né vždy vše načetlo, jak mělo.

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 15 hostů