Wemos D1 Mini ESP8266 – Cos’è e come utilizzarlo – Parte 1

Buongiorno a tutti, con questo articolo voglio introdurvi ad un aspetto della programmazione web che mi entusiasma e mi appassiona e cioè l’interfacciamento tra il mondo web e il mondo reale grazie alla scheda Wemos d1 mini ESP8266.

Questa connessione tra vita reale e web viene chiamata IoT  (Internet of Things) ossia “Internet delle cose” ed  è un aspetto sempre più presente nelle nostre vite. Dai primi dispositivi wearable agli smartwatchci siamo abituati all’idea di essere sempre perennemente connessi in Rete.

In questi anni ho provato diverse soluzioni e dispositivi in grado di collegrasi ad internet fino a che non ho scoperto i moduli ESP8266 prodotti dalla cinese Espressif che incorporano un potente sistema WiFi IEEE 802.11 b/g/n, stack TCP/IP e autenticazione WEP/WPA.

Più nel dettaglio ho trovato da subito molto comoda e semplice da usare la scheda WeMos D1 mini e cioè una  una board compatta ed economica che monta appunto un modulo ESP8266 e tutto quello che serve per il suo utilizzo e programmazione attraverso l’IDE e le librerie di Arduino.

Specifiche tecniche:

  • 11 I/O digitali, tutti i pin sono provvisti di interrupt e supportano PWM, I2C , One-Wire (D1-SCL-D2 -SDA)
  • Un Pin analogico (tensione massima di ingresso 3.2V)
  • Connessione Micro USB per programmazione e alimentazione
  • Compatibile con IDE Arduino

Questo il Pinout della scheda:

 

Cosa possiamo realizzare con queste piccola scheda dipende dalla nostra fantasia.

Io personalmente lo utilizzo per collegarmi a servizi web o a pagine da me realizzate e visualizzare su display lcd 16×2 I2C oppure su matrici LED le informazioni in tempo reale (o quasi).

 

Per poter iniziare ad utilizzare la scheda con l’IDE Arduino dobbiamo installare i driver di compatibilità per la nostra scheda con chip ESP8266:

Dopo aver scaricato ed installato l’IDE Arduino, dalla schermata “Impostazioni” dovrete aggiungere l’URL
http://arduino.esp8266.com/stable/package_esp8266com_index.json
nel campo “URL aggiuntive per il Gestore schede:”
e poi, da “Strumenti” -> “Scheda XXX” -> “Gestore schede” si cerca e si installa ESP8266:
A questo punto, in “Strumenti” troviamo un elenco di schede con il chip ESP8266 tra cui la nostra WeMos D1 mini:
Io personalmente non utilizzo la versione ufficiale della scheda ma un clone acquistato non ricordo neppure più dove ma comunque su Amazon o Ebay si trovano moltissime di queste schede con prezzi che vanno dai circa 8€ in su.
Link di esempio :
D1 Mini  ESP8266 Prezzo:EUR 7,99 | Spedizione 2 giorni AMAZON
Una volta acquistata la scheda e configurato l’IDE non vi rimane che caricare un programma di esempio come il seguente che proverà a collegarsi alla vostra wifi e visualizzerà lo stato sul monitor seriale dell’IDE Arduino.
#include <ESP8266WiFi.h>
// Setup WiFi connection
const char* ssid = ""; //SSID Della vostra Wifi
const char* password = ""; // Password Della vostra Wifi

void connectToWifi() {
  WiFi.begin(ssid, password);
 
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
 
  WiFi.begin(ssid, password);
 
  while (WiFi.status() != WL_CONNECTED) {
    Serial.print(".");
    delay(250);
  }
  Serial.println("");
  Serial.println("WiFi connected");  
}
void setup() {
  Serial.begin(115200);
  delay(10);

  connectToWifi();
}

void loop() {
  while(WiFi.status() != WL_CONNECTED) {
     connectToWifi();
  }
}


Ok, per la prima parte abbiamo finito. Nella seconda parte inizieremo a vedere qualcosa di un pò più IoT e cioè 
collegheremo il nostro D1 Mini ad un matrice di LED MAX7219 8x32 e visualizzeremo i like della nostra pagina Facebook in tempo reale.

Buona giornata a tutti e al prossimo post.

Michele