OTA programování ESP8266

ESP8266 je 32-bitový mikroprocesor s integrovaným WiFi a TCP/IP stackem. Přestože o něm bylo už mnoho publikováno, pokusím se pro zdejší ucelenost o krátký popis.

Je vyráběn firmou Espressif Systems a prodává se v mnoha provedeních, která kromě samotného ESP čipu a několika pasivních součástek obsahují ještě flash paměť programu, případně další podpůrné obvody jako stabilizátor 3V3, USB - UART převodník, micro USB konektor a další.

Na úvodním obrázku jsou tři varianty, které používám. Vlevo ESP-01 s omezeným počtem vyvedených GPIO, vpravo ESP-12E a uprostřed praktické NodeMCU, které je již osazené všemi potřebnými součástkami a stačí ho jen připojit pomocí USB kabelu k PC a začít programovat.

Možnosti programování

Primárně je ESP8266 určen k doplnění síťové konektivity do stávajících či nových zařízení. Je připravený pro ovládání AT příkazy, existují ale dva dobré důvody, proč je často využíván trochu jinak.

  1. Je několik způsobů, jak do čipu nahrát vlastní software.
  2. Čip je natolik výkonný, že kromě obsluhy WiFi a TCP/IP zvládá s přehledem i další úlohy.

Použitelnými programovacími jazyky jsou např. Lua (NodeMCU), Micropython či Wiring (Arduino IDE). S jazykem Lua jsem se pral jen do té doby, než jsem zjistil omezení v minimální délce impulzu na výstupech. Lua byla tak pro mé aplikace nepoužitelná. Dál jsem už neexperimentoval a volil rovnou oblíbené Arduino IDE prostředí a u něho i zůstal. Dál se proto budu zabývat jen prostředím Arduino IDE a jazykem Wiring.

Implementace ESP8266 do Arduino IDE

Toto prostředí umožňuje programovat nejen Arduino. Jiné desky je ale třeba nejprve do IDE nahrát. Celý proces je velmi jednoduchý. Stačí dva kroky:

  1. Instalace prostředí Arduino IDE.
  2. Instalace nadstavby pro ESP8266.

Prvním krokem bude tedy stažení Arduino IDE v jeho aktuální verzi ze stránek Arduino Home. Zvolte si instalační balíček dle svého operačního systému a na další stránce pokračujte volbou just download, pokud tedy nechcete přispět vývojářům libovolnou částkou. Po stažení program nainstalujte.

Druhý krok - instalaci ESP8266 provedete takto:

Spusťte Arduino IDE a jděte do Sobor - Vlastnosti.

V následujícím dialogu do řádku Správce dalších desek URL: vložte tuto cestu:

http://arduino.esp8266.com/stable/package_esp8266com_index.json

a potvrďte OK.

Pokračujte volbou Nástroje - Vývojová deska - Manažer desek...

Zde vyhledejte esp8266 by ESP8266 Community a zvolte Instalace.

Po dokončení stačí zvolit příslušnou desku s ESP a lze začít programovat. To probíhá prakticky stejně jako pro Arduino, jen je nutné načítat ty správné knihovny. Za základní dokumentaci pro programování ESP8266 v Arduino IDE bych považoval ESP8266 Arduino Core, a není na škodu čerpat ani z originálního datasheetu.

Přestože lze podobných (a lepších) návodů dohledat hodně, snažím se tímto stručným popisem o určitou informační ucelenost a návaznost vzhledem k projektům, které zde publikuji nebo připravuji. No a hlavně to tady mám popsané, až budu zase po přeinstalaci počítače hledat ten odkaz ;).