Esp8266 – Metti le ali alla tua fantasia

Esp8266

esp8266_01

 

L’ esp8266 è un “System-On-a-Chip” a 32 bit, prodotto da Espressif, che incorpora in maniera nativa le funzionalità WI-Fi in maniera intelligente e mette a disposizione 2 o piu’ GPIO secondo il modello

GPIO :Il General Purpose Input/Outpu -(anche noto come GPIO- è un’interfaccia disponibile su alcuni dispositivi elettronici .

Un dispositivo microprocessore, microcontroller o interfaccia può avere una o più connessioni GPIO su un’interfaccia con dispositivi e periferiche esterne .

Queste possono agire come input, per leggere i segnali digitali dalle altre parti del circuito, o output, per controllare o segnalare agli altri dispositivi.

GPIO sono spesso collocati in gruppi, tipicamente di 8 pin – una porta GPIO – che usualmente hanno GPIO individuali configurabili o come input o come output – WK.

Il wifi del modulo in questione è inoltre configurabile sia come soft access point che come client wifi e anche in modalità mista !!!.

esp8266_modelli
esp8266

 

 

1) un suo primo utilizzo come mero modulo di comunicazione WI-FI.  E’ 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 di scripting. / 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)

Un po di caratteristiche:

  • 32-bit RISC CPU: Tensilica Xtensa LX106 running at 80 MHz
  • 64 KiB of instruction RAM, 96 KiB of data RAM
  • External QSPI flash – 512 KiB to 4 MiB (up to 16MiB is supported)
  • IEEE 802.11 b/g/n Wi-Fi
  • Integrated TR switch, balun, LNA, power amplifier and matching network
  • WEP or WPA/WPA2 authentication, or open networks
  • 16 GPIO pins
  • SPI, I²C,I²S interfaces with DMA (sharing pins with GPIO)
  • UART on dedicated pins, plus a transmit-only UART can be enabled on GPIO2
  • 1 10-bit ADC

Ad aprile 2015, la community esp8266.com ha presentato una versione modificata dell’Arduino IDE, che estende il supporto del linguaggio Wiring all’ESP8266.  Sfrutta il microcontrollore interno al chip per ospitare programmi come se fosse una board Arduino.

Il modello pù conosciuto e’ ESP8266-01

esp8266-pinout1
esp8266-pinout1

In rete si possono trovare centinaia di progetti, e con pochi euro si puo’ dare libero sfogo alla fantasia.