ESP 01 8266

Raspberry, Arduino, Mini-PC a další

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
mjana
Příspěvky: 23
Registrován: 25 bře 2023, 01:00
Bydliště: Ostrava

ESP 01 8266

#1 Příspěvek od mjana »

Ahoj, snažím se připojit 8266 k Arduinu, ale zatím se mi to moc nedaří. Mám dva Arduina Mega2560 a Nano V3.0 R3. Cílem je připojení k Nano, ale jelikož se mi to tam nedaří zatím vůbec, pokračuji s pokusy na Mega.

Z toho, co jsem zatím vyčetl bych měl mít 8266 zapojeno:
  • S externím napájením 3.3V
    Logickým převodníkem 5V - 3.3V
Zatím jediné funkční řešení na Mega2560:
  • 3V3 a EN připojeno do 3.3V na Mega
    TX a RX připojeno přímo do Mega na TX, RX (ne do kříže)
    GND do Mega GND
Serial Monitor na 115200, zapíšu AT a dostanu odpověď OK.

Nicméně z toho, co jsem vyčetl není tohle správné zapojení a na cílovém Nano to do těch 3.3V ani zapojit nemůžu.

Dalším krokem je tedy použití externího napájení a převodníku, ale už u napájení s tím nehnu:
  • Pro napájení používám modul pro nepájivé pole s možností 5V, 3.3V + síťový adaptér 9V, 1A.
    3V3 a EN připojeno do 3.3V na nepájivém poli
    TX a RX připojeno přímo do Mega na TX, RX (ne do kříže, ale zkoušel jsem i přehodit)
    GND 8266 do nepájivého pole
    GND z arduina do nepájivého pole
Serial Monitor na 115200, zapíšu AT a nic se neděje.

Prosím o jakékoli rady, i ty které vám příjdou samozřejmé, protože jsem v elektrotechnice i arduinu úplný začátečník. Díky.

Uživatelský avatar
Cowley
Příspěvky: 3087
Registrován: 04 úno 2005, 01:00

#2 Příspěvek od Cowley »

Zkus toto.

Nicméně je to "syrové" propojení.

Ne žádné AT příkazy a podobně.

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#3 Příspěvek od Mahoney »

Cílem je mít dvě různá zařízení (každé jinde) která spolu komunikují, nebo mít jedno "duální" zařízení, tedy rozšíření o nové funkce (bluetooth/wifi)?

Uživatelský avatar
mjana
Příspěvky: 23
Registrován: 25 bře 2023, 01:00
Bydliště: Ostrava

#4 Příspěvek od mjana »

Mahoney píše:Cílem je mít dvě různá zařízení (každé jinde) která spolu komunikují, nebo mít jedno "duální" zařízení, tedy rozšíření o nové funkce (bluetooth/wifi)?
Momentálně je cílem vyzkoušet si připojit Arduino na WiFi. Ono to vypadá, že tam nějaká komunikace probíhá, protože po přehození RX a TX mi to tam sype hromadu znaků, ale nejde ho nakonfigurovat. Takže budu muset asi pořídit tohle https://www.gme.cz/v/1508520/usb-esp8266-adapter, pokud se dívám správně.

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#5 Příspěvek od Mahoney »

Arduino na WiFi si nejlíp vyzkoušíš tak, že si ten modul přes USB převodník připojíš k PC přímo a Megu či Nano z toho úplně vynecháš, uvnitř toho modulu je taky procesor (resp. je to SoC, ale to je celkem jedno) a je celkem slušně výkonný, dvoujádrový Tensilica Xtensa LX6 s 600 MIPS. Ten převodník co sis našel (našla?) je pro ESP-01, ten zřejmě nepotřebuješ, stačí ti úplně obyčejný USB to TTL RS232 - teda co máš vlastně přesně za ESP modul (pokud máš ESP-01, tak to v odkazu je správný převodník)?
Naposledy upravil(a) Mahoney dne 01 kvě 2023, 15:52, celkem upraveno 1 x.

Uživatelský avatar
samec
Příspěvky: 3692
Registrován: 19 pro 2017, 01:00

#6 Příspěvek od samec »

serial monitor? RX TX? ktoré piny? Tie isté, čo používa USB pripojené do počítača?

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#7 Příspěvek od Mahoney »

samec, vždyť už odpověděl(a)… Je blbost zkoušet připojit nějaký nevýkonný MCU a zkoušet zkrze něj ovládat ESP modul, když přímo v tom modulu je daleko výkonnější procesor, který to obstará úplně v pohodě celé i se spoustou dalších věcí a to Arduino IDE ho navíc podporuje přímo. Tady může tak maximálně být to Nano/Mega jako pomocný procesor (např pro rozšíření počtu I/O pinů, nějaká měření apod), a ne naopak, to by bylo mrhání časem, penězi i prostředky (výkon/spotřeba).

Uživatelský avatar
pocitujlasku
Příspěvky: 1757
Registrován: 12 pro 2005, 01:00

#8 Příspěvek od pocitujlasku »

Ty vies nasypat arduino kod priamo do toho esp. V arduino IDE si doinstaluj podporu pre esp. a potom si len v menu vyberies konkretnu dosku esp. Pre 01 ja osobne pouzivam generic esp. Pri nahravani ale musis urobit jednu vec. Dat gpio0 na 0 - ja som si na tom adapteri prirobil na boku malicky spinac, ktorym len prepojim gnd a gpio0. To sa pouziva len pri nahravani, ak chces spustit kod, tak gpio0 musi byt v log. 1
a mas arduino s wifi, navodou je potom kopec, ako sa pripojit, ako zistit svoju ip, vies si tam rozbehat vlastny webserver...
Ale bacha, neviem, ci to len ja mam take stastie, ale tie esp 01 mi obcas po zapnuti zacali strasne hriat a potom uz boli nefunkcne. S esp 12, alebo 07 sa mi to za par rokov nestalo ani raz.
No vidis, a tak si sa bal

Uživatelský avatar
mjana
Příspěvky: 23
Registrován: 25 bře 2023, 01:00
Bydliště: Ostrava

#9 Příspěvek od mjana »

Objednal jsem si ten TTL převodník, abych mohl to ESP-01 8266 nastavit přes něj. Risknul jsem to a nastavil ho prozatím přes to Mega bez logického převodníku a funguje mi, připojilo se mi do sítě. Teď jsem si ho zapojil na to Nano (už s logickým převodníkem a samostatným 3.3V napájením) a chtěl bych si přes něj zavolat REST API (POSTem, GETem), které jsem si spustil na PC. Můžete někdo prosím poradit, jak to nejlépe udělat? Počítám, že na to bude nějaká knihovna.

Uživatelský avatar
mjana
Příspěvky: 23
Registrován: 25 bře 2023, 01:00
Bydliště: Ostrava

#10 Příspěvek od mjana »

Mahoney píše:Arduino na WiFi si nejlíp vyzkoušíš tak, že si ten modul přes USB převodník připojíš k PC přímo a Megu či Nano z toho úplně vynecháš, uvnitř toho modulu je taky procesor (resp. je to SoC, ale to je celkem jedno) a je celkem slušně výkonný, dvoujádrový Tensilica Xtensa LX6 s 600 MIPS. Ten převodník co sis našel (našla?) je pro ESP-01, ten zřejmě nepotřebuješ, stačí ti úplně obyčejný USB to TTL RS232 - teda co máš vlastně přesně za ESP modul (pokud máš ESP-01, tak to v odkazu je správný převodník)?
Vím, že můžu to ESP-01 naprogramovat zvlášť, ale cílem je ho použít v kombinaci s Nano a volat REST API z NANO a to ESP-01 použít jen jako WiFi modul.

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#11 Příspěvek od Mahoney »

A přes jaký protokol a od jaké služby (serveru) chceš to REST API volat? Já se obávám že sis vybral úplně špatně, a jestli to není jen nějaká velmi jednoduchá služba ke které se potřebuješ připojit a napíšeš si to sám, tak na to bude existovat knihovna možná tak na nějaký 32bit, ne na ATmega328.

Uživatelský avatar
mjana
Příspěvky: 23
Registrován: 25 bře 2023, 01:00
Bydliště: Ostrava

#12 Příspěvek od mjana »

Mahoney píše:A přes jaký protokol a od jaké služby (serveru) chceš to REST API volat? Já se obávám že sis vybral úplně špatně, a jestli to není jen nějaká velmi jednoduchá služba ke které se potřebuješ připojit a napíšeš si to sám, tak na to bude existovat knihovna možná tak na nějaký 32bit, ne na ATmega328.
To REST API si píšu sám. Doufal jsem, že pro Arduino je něco jako HTTPClient něco takového používám v C#, Jave. Který jen zavolám a postnu přes něj JSON s nějakým infem do toho api. Případně si v nějakém intervalu GETem zavolám to api a podle toho co mi příjde udělám nějakou akci.

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#13 Příspěvek od Mahoney »

Nějaký jednoduchý HTTP klient na to určitě je, ale ty to vůbec nemusíš řešit přes HTTP, těch dat nebude mnoho (nějaká čidla tipuju), stačí když zůstaneš o úroveň níž a pošleš si to jako TCP/UDP packety přes nějaký port, které si v PC odchytneš. Ale můžeš (ty to chceš posílat do webbrowseru?), jen si musíš uvědomit, že paměť toho MCU není velká, takže tam té omáčky okolo nenacpeš moc. JInak se to řešilo hned ve vedlejším vlákně nedávno…
Naposledy upravil(a) Mahoney dne 02 kvě 2023, 13:30, celkem upraveno 1 x.

Uživatelský avatar
mjana
Příspěvky: 23
Registrován: 25 bře 2023, 01:00
Bydliště: Ostrava

#14 Příspěvek od mjana »

Mahoney píše:Nějaký jednoduchý HTTP klient na to určitě je, ale ty to vůbec nemusíš řešit přes HTTP, těch dat nebude mnoho (nějaká čidla tipuju), stačí když zůstaneš o úroveň níž a pošleš si to jako TCP/UDP packety přes nějaký port, které si v PC odchytneš. Ale můžeš (ty to chceš posílat do webbrowseru?), jen si musíš uvědomit, že paměť toho MCU není velká, takže tam té omáčky okolo nenacpeš moc.
To je pravda, ale to API je takové univerzálnější. Zatím nevím, kolik mi celý ten program zabere, ale doufal jsem, že restový klient + nějaké jednoduché volání toho moc nesežere. Zatím vidím hodně příkladů, kde píšou ten POST, GET přímo do toho ESP-01, ale to bych právě nechtěl a chtěl bych to mít přímo v Arduinu a jak už jsem říkal, použít to ESP jen jako WiFi modul.
Naposledy upravil(a) mjana dne 02 kvě 2023, 13:34, celkem upraveno 1 x.

Uživatelský avatar
Mahoney
Příspěvky: 347
Registrován: 26 říj 2019, 02:00

#15 Příspěvek od Mahoney »

Než jsem to zeditoval, stihl jsi odepsat… Já ti rozumím, ale na straně MCU si to musíš co nejvíc zjednodušit, veškerý komfort si pak obstaráš na straně serveru v PC (a bude se ti to tam i líp psát). A nebo to můžeš naložit nějakému dělu, ESP12F (nebo ESP32 C3) s tím problém mít nebudou a nebudeš tam tolik omezen pamětí. Oni to mají dobře, poslat osmibitem surová data a zabalit je do omáčky v ESP je daleko rozumnější, než to rvát celé do osmibitu (a záhy zjistit, že to tam stejně nenarveš).
Naposledy upravil(a) Mahoney dne 02 kvě 2023, 13:39, celkem upraveno 1 x.

Odpovědět

Zpět na „Miniaturní počítače (Arduino, Raspberry a další)“