Sikerélmény: LUA helyett Arduino

ESP8266, ESP32 chipek és az ESP-xx modulok. Programozási nyelvek, trükkök, hardware tippek.
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Róbert:
Beleolvastam az Ajax-ba. Azt kell mondjam gondolat olvasó vagy.
Miközben JS-t írogattam pont ezen gondolkodtam, hogy elég kellemetlen a folyamatos oldalfrissítés, és hogy ezt meg kellene oldani.
Köszi a tippet. :)
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Ajax használható. :)
https://youtu.be/hJAGUqB_670

Szerintem idei évre befejezem a csodák felfedezését ebben az új ESP világban.
Jó volt újra olvasgatni régi és új fórumtársak/cimborák "pihent" ötleteit. :)
Idén a "bármit megtehetek mert működik" éve volt,
2016 pedig a "mi is történik tulajdonképpen" jegyében fog eltelni.
Szerintem.

BÚÉK. :wink:
happy555
Biztosítékgyilkos
Hozzászólások: 51
Csatlakozott: 2013. augusztus 16. péntek, 12:45

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: happy555 »

Köszönjük, hogy töröd előttünk a jeget!
BUÉK!
vargham
Chipgyilok
Hozzászólások: 308
Csatlakozott: 2014. január 8. szerda, 8:32

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: vargham »

SanyiSay írta: Egy baja van hogy kizárólag 2.0.0-ás ESP board verzióval fut az új fejlesztés alatt állóval nem. (2.0.0-rc2/)
Ha mégis elkerülhetetlen a rc2 használata akkor a WiFiManager.h-t kell használni. Azt is teszteltem megy.
A 2.0.0-rc2 az RÉGEBBI, mint a 2.0.0.

Ezek tölthetőek le ZIP fájlként.
Ha közvetlenül a GIT repository-t használod, akkor kapod a legújabb, fejlesztés alatt álló forrást.

;-)

Lásd itt:
https://github.com/esp8266/Arduino/releases
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Köszi a linket nézegetem.

Belefutottam pár dologba ami csak az egyiken, vagy másikon futott, de közben tovább is futottam a webes programozás felé, nem jutottam el még a komolyabb átlátásig.
Neked van esetleg letisztult stabil tapasztalatod a témában?
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Közben tettem fel két mintaprogramot ami már egész használható szerintem. :)
Kapu átnézné tuti találna benne még rendbeszedni valót bőven. :mrgreen:

_ESP8266WebServer
_ESP8266WebServer_AJAX mappákban.

<ESP8266WebServer.h> könyvtárral valósítja meg a webszervert, amit azért jó mert wifis fájlfeltöltők is ezt használják, így "könnyen" be tudjuk építeni őket saját szerverünkbe.

Első:
Két weboldal között válthatunk gombal, és van +2 LED gomb az egyik GET a másik POST metódussal küldi az adatokat az ESP felé mindkettő a GPIO2 es portot invertálgatja. GPIO2 re meg a led miatt esett a választás. :)
LED gombnyomás után új Web oldalon kiírja az ESP által kapott adatokat. onnan vissza már csak címsorba írt ip címmel jutunk a kezdőlapra.
Címsorban nyomon lehet követni mindezt.
Hasznos, ha egyéb készülékről szeretnénk vezérelni, vagy másik ESP-vel.

Második kicsit bonyolultabb.
Program ugyanaz csak már soros porton küldi az ESP által kapott adatokat. (nem ez az atrakció :) )
Led gombok nyomása után marad az oldal, nem vált kiíró képernyőre.
2 es Weblapon AJAX adatcsere bemutatása történik.
Pontosabban csak a szerver küld a kliens másodpercenkénti kérésére adatokat. Az ESP bekapcsolása óta eltelt időt kapja vissza. Az úgy is folyton változik, ezért azt.

Az még nincs tesztelve hogy Kliens és szerver válaszolgassanak egymásnak.
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Vagy ez már mehetett volna a tutoriálok témába? :)
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Kimaradtak a források.
AJAX mintát itt találtam:
https://github.com/masterl1nk/arduinoAj ... hermo2.ino
Szerver minta pedig Arduino/példák/ESP8266WebServer alatti mintákból.
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

ESP8266 mint FTP kliens:
ESP fájlrendszeréről, FTP szerverre fájlokat tölthetünk fel és onnan le.
Itt megtalálható a kód.
http://www.rudiswiki.de/wiki9/WiFiFTPServer
Itt az FTP parancsok magyarázata.
http://www.nsftools.com/tips/RawFTP.htm#DELE
Nekem szinte csak a másolandó fájl típusát kellett módosítanom és működött. :)
Arduino kód lett átírva ESP-re ebben az esetben is, így aki ott már használta annak gondolom nem lesz idegen.
Minta kis hibája szerintem, hogy nem veszi külön a küldött és a fogadott fájlok nevét és elérési útját.
Azt is át kellett írni.
Valamint ha nem találta a másolásra megnevezett fájlt az ESP gyökerébe akkor hibával leáll, de mondjuk ezek apróságok, mire megtalálja az ember ezeket legalább átnézi kicsit a kódot.
Újabb feladatként az FTP használatát kell áttanulmányozni.
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Lehet ez csak nekem nagy felfedezés, de talán másnak is, így megosztom.
Eddig így tettem össze a programban egy HTML oldalt.

Kód: Egész kijelölése

void lap_1() {
  char lap1_htm[] = "<!DOCTYPE html>\n\
               <html>\n\
                 <head>\n\
                   <meta charset=\"utf-8\">\n\
                   <title>JS Bin</title>\n\
                 </head>\n\
                 <body>\n\
                 </body>\n\
               </html>";
  server.send ( 200, "text/html", lap1_htm);
}
Kellett minden sor végére a \n\ hogy ha böngészőben az oldal forrását megnézem, akkor is ugyanígy lássam a html kódot. valamint minden ( " ) elé kellett ( \" ).

Következő módszerrel mindez elhagyható jóval egyszerűbb egy html szerkesztőből átemelni a kódot, és persze eljutottam odáig is, hogy használjam a PROGMEM áldásos hatását. :)

Kód: Egész kijelölése

static const char PROGMEM lap1_htm[] = R"=====(
  <!DOCTYPE html>
  <html>
   <head>
     <meta charset="utf-8">
     <title>JS Bin</title>
   </head>
   <body>
   </body>
  </html>
)=====";

void lap_1() {
  server.send ( 200, "text/html", lap1_htm);
}

Egy kérdés is lenne egyből.
Progmem használatánál van jelentősége hogy a static bekerül a const elé?
Azt tapasztaltam, hogy ha függvényen belül hozom létre a progmem konstansot akkor kötelező kitennem a static-ot elé. Persze felötlött bennem is, erre nem valószínű hogy szükség lenne :)
happy555
Biztosítékgyilkos
Hozzászólások: 51
Csatlakozott: 2013. augusztus 16. péntek, 12:45

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: happy555 »

Ezt nem ismertem!
Mindig 5db = kell? :)
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Nem tudom. ezt így láttam egy kódban. a forrás még nincs meg.
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Frissítettem az wifi_ap_sta.ino minta fájlt a tárolómon.
Változások:
- kicsit letisztultabb
- AP és STA stabil váltás

Maga a program 10 mp-enként váltogatja(teszteli) az STA és AP módot minözben AP nevet vált.
Wifi 14 es csatornát elvileg tudja használni, nálam egyenlőre csak 13 ig működött, ez lehet a teszteléshez használt egyéb készülékeim korlátai miatt.
Avatar
SanyiSay
Elektronbűvölő
Hozzászólások: 1031
Csatlakozott: 2009. február 28. szombat, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: SanyiSay »

Majdnem a legfontosabbat elfelejtettem.
Mivel már majd minden készülékünk küld üzenetet régebben sms manapság mail, rájöttem hogy ez még egy lap funkció.
Nem nagyon találtam konkrét kódot a neten, de kiszaszeroltam. :)
Persze itt is rengeteg még a kérdés, és letisztázni való de összességében megjött az első ESP Email.
Gmail SMTP Send .. pipa. :D

Ha van rá érdeklődés közzé tehetem.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10191
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Sikerélmény: LUA helyett Arduino

Hozzászólás Szerző: Robert »

Van :)
Minden kód jól jön....
Válasz küldése