Stampa

 

Dopo aver studiato il mitico microcomputer raspberry pi ho deciso a dedicarmi a studiare i microcontroller della famiglia ESP8266 che nonostante il prezzo veramente irrisorio promette la realizzazione di infinti sistemi domotici per la casa e oltre.

ESP8266 in sintesi è un SOC che da un anno in qua sta facendo parlare molto di sè.
È stato utilizzato largamente nella serie di convertitori Wifi:arrowright:Seriale che prendono il nome di ESP-XX (dove al posto di XX potete mettere un numero da 01 a 12, a seconda del modello).
La versione più venduta è sicuramente l'ESP-01, quello che vedete nella foto, nonostante non sia il più versatile tra i modelli disponibili.


L'ESP8266 è anch'esso un System-On-a-Chip a 32 bit, prodotto daEspressif, che incorpora nativamente le funzionalità WI-Fi – inclusa la gestione intelligente dell'interfaccia radio – ma che rende disponibili anche una serie di risorse e di periferiche che gli permettono di assolvere pure i compiti di un comune microcontrollore, da usare seguendo tre ben distinte modalità operative:

1) un suo primo utilizzo come mero modulo di comunicazione WI-FI, collegabile alla porta seriale di un microcontrollore qualsiasi, da comandare per mezzo di comandi AT che vengono invocati dall'MCU esterno. Ciò è reso possibile dal caricamento di un firmware apposito, che rimane residente nell'ESP8266;

2) può essere usato come microcontrollore autonomo abilitato al WI-FI, programmabile in modo interattivo e immediato mediante il linguaggio discripting / interpretato Lua (il Python del mondo embedded). E' infatti disponibile un interprete Lua per ESP8266 e anche un semplice IDE ad esso dedicato, di complessità e con funzionalità intermedie fra l'IDE di Arduino e quelli basati su Eclipse o Visual Studio. Lua, tanto per fare un esempio, è comunemente utilizzato in ambito OpenWrt e, in pratica, in questa modalità, l'ESP8266 diventa una Yùn da 5-10 USD, a seconda della piedinatura della scheda;

3) infine può essere utilizzato sempre come MCU autonomo abilitato al WI-FI, ma programmabile in modo tradizionale in C/C++. Esso infatti supporta una toolchain completa basata su GCC e integrata in Eclipse, di cui - per ora - manca solo un supporto concreto al debugging, per il quale si brancola ancora nel buio.

Ecco la tabella dei vari tipi di moduli ESP e le loro caratteristiche principali:

esp8266 model comparisons

 

La differenza sostanziale oltre la dimensione è il numero di porte gpio disponibili e il quantitativo di memoria interna.

Nel prossimo post vi farò vedere in dettaglio le caratteristiche di tutti i modelli. 

 Moduli ESP8266 part2