Modulo ESP8266 con l’IDE di Arduino

In questo articolo tratteremo i famosi moduletti WiFi a basso costo bastai sul microcontroller ESP8266. Tali moduli vengono normalmente forniti con un firmware precaricato che ne permette l’utilizzo tramite comandi fonriti esternamente via seriale, comandi del genere AT. Da un lato tale scelta permette di affiancare il modulo a dei progetti già esistenti, dotandoli di una espansione WiFi, dall’altro rappresentano una sorta di “spreco” di materiale in quanto tali moduli sono dotati di memoria Flash da 512K (alcuni 1M) ed il microcontrollore a bordo è in grado, da solo, di gestire tutte le procedure necessarie per comandare gli ingressi, le uscite, le chiamate TCP/IP, etc… etc…
A tale proposito sono stati realizzati come Open Source altri firmware liberamente scaricabili ed installaibili sui moduli. Uno di questi firmware è il NODEMCU che permette di programmare il modulo in LUA. Tale approccio presenta vantaggi e svantaggi. Tra i vantaggi la possibilità di inserire più listati nel processore e usare quello che più aggrada selezionandolo con l’apposita interfaccia. Un altro vantaggio è quello di avere a disposizione diversi sistemi per sviluppare in gradi di gestire il caricamento/scaricamento/annullamento/avviamento dei programmi inseriti nel modulo, via interfaccia seriale. Uno dei più grossi svantaggi è, però, l’enorme dispendio in termini di consumo di memoria flash da parte dell’interprete LUA che si traduce nell’impossibilità di caricare programmi complessi. Il fatto poi che il LUA sia interpretato penalizza anche la velocità di esecuzione.
Di diverso approccio è il firmware ESPBASIC che permette di programmare il modulo in un BASIC-like, interpretato. Con tale firmware i programmi si possono scrivere direttamente nell’interfaccia web gestita interamente dal modulo stesso, così come si avviano e si fermano sempre dal server web del modulo. Anche in questo caso valgono le stesse considerazioni viste sopra per il LUA.
In questo articolo, dunque, parleremo del firmware interamente gestito dall’IDE di Arduino. A tale scopo è sttao sviluppato un apposito “CORE” che permette di usare i moduli ESP8266 come se fossero un moduletto Arduino, quindi stessa interfaccia, stesse modalità di creazione degli sketch, stesse (o molto simili) librerie, stessa modalità di flashing. Chi già usa Arduino non avrà particolari difficoltà a gestire l’ESP8266.
Per installare correttamente l’estensione per l’ESP dovrete aprire l’IDE di arduino, poi selezionate il menù “File->Impostazioni” ed immettete alla voce “Additional Board’s manager URLs” questo indirizzo

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

esp01

Successivamente aprite il menù “Strumenti->Scheda-Boards Manager”, rintracciate nella lista il riferimento all’ESP8266 e premete il pulsante “Install” per installare l’ambiente di sviluppo, automaticamente. Alla fine avrete, tra la lista delle schede disponibili, anche l’ESP8266

arduinoesp8266_ide1

arduinoesp8266_boardsmanager1

Normalmente dovremo selezionare nelle schede il modello “Generic ESP8266 module”.

A questo punto tutto è pronto per iniziare. Con questo ambiente l’ESP8266 si programma proprio come se fosse una scheda Arduino, quindi valgono le stesse regole sintattiche e di forma. Avremo a disposizione quasi tutte le librerie già presenti per Arduino e, come sappiamo, realizzare un programma attorno alle due principali routine (setup e loop).

Se avete un modulo ESP8266 già dotato di propria presa USB non dovrete fare null’altro se non selezionare la corretta porta, sempre dal menù “Strumenti”, altrimenti dovrete dotarvi di un apposito programmatore.

Buona programmazione.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.