Da diverso tempo colleziono dispositivi Iot (RaspBerry, Arduino, Pine64, ESP8266 …) ma non ho mai il tempo di giocarci!
Approfitto quindi di pochi giorni di vacanza per dilettarmi con uno di questi dispositivi: l’ESP8266!
Di cosa si tratta? Si tratta di un piccolo micro controllore che integra al suo interno un chip wifi che gli consente di collegarsi ad internet in maniera semplice e veloce.

E cosa ci posso fare? Beh è l’ideale per progetti di Iot che prevedano la necessità di leggere dati da sensori di vario genere (luce, temperature, gas..), pilotare relè per l’home automation ma può essere usato anche come interfaccia wifi per dotare arduino di connettività.
In realtà può fare quello che fa arduino e molto di più!

Trattandosi di un micro controllore è più simile ad arduino (anche se molto più potente) che non a Raspberry (che è di fatto un PC su scheda!). Per i dettagli vedete qua.

A livello hardware sono disponibili diverse versioni che variano essenzialmente per numero di pin GPIO disponibili e memoria onboard, sul link di wikipedia precedentemente menzionato trovate i dettagli.
Il dispositivo in sé è proprio minuscolo e per programmarlo serve un interfaccia USB-UART (tipo CH340 o CP2102).
Funziona a 3.3V pertanto attenzione a quello che fate: non va a 5V come Arduino e Raspberry pertanto se lo sovra alimentate sarà molto probabile che lo fondiate!
Consuma veramente pochissimo (esiste una modalità detta deep sleep mode in cui il chip è in stand-by e consuma appena 20mA!) e si può alimentare anche con pile stilo o batterie lipo.
Soprattutto nella fase iniziale consiglio caldamente l’acquisto di un dev kit che semplificherà di molto i primi esperimenti in quanto provvisto di interfaccia UART e appositi riduttori di tensione per alimentare correttamente il chip.

Vista l’esistenza di un infinità di nuovi dispositivi Iot perché scegliere proprio l’ESP8266?

Alcuni punti a favore:

  • rispetto ad arduino è più potente, più piccolo, meno costoso e nasce dotato di wifi
  • ha consumi bassissimi e si può tranquillamente alimentare con diverse tipologie di batterie
  • è in giro dal 2014 quindi è disponibile diversa documentazione (anche in italiano)
  • esistono diverse aziende (sparkFun, Adafruit, Olimex, Wemos) che forniscono kit medianti i quali iniziare è veramente semplice!

mah.. scendendo sul pratico, come si programma sto coso?
Esistono una moltitudine di linguaggi supportati e di IDE (più o meno specifici) disponibili.

I linguaggi principalmente usati sono:

  • LUA su firmware NodeMCU
  • in C usando l’apposito SDK fornito dalla principale ditta produttrice (EXpressif)
  • Wiring, ovvero il subset del C usato da arduino (una volta caricate le apposite librerie)
  • in C++ usando diversi framework disponibili (uno su tutti Sming)
  • perfino in javascript tramite il firmware Espruino
  • in basic mediante ESP8266 Basic
  • ..vari ed eventuali nati nel frattempo!

Per quanto riguarda gli IDE segnalo invece:

  • Arduino Ide tramite questo progetto
  • ESPlorer
  • tramite Atom.io usando platformIO
  • …vari ed eventuali nati nel frattempo!

In rete è disponibile un infinità di documentazione, tutorial, forum pertanto iniziare ad usare questo giocattolino è veramente alla portata di tutti.

Beh… io continuo a giocarci, appena possibile posterò un nuovo articolo con i risultati dei miei esperimenti!
Bye!

Primi esperimenti con ESP8266 – che cosa è e cosa ci si può fare

Lascia un commento

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