giovedì 2 luglio 2015

Arduino su internet! Parte 1

Ciao a tutti, in questo post illustrerò i miei primi passi per poter connettere Arduino a internet utilizzando il modulo ESP8266, dal costo esiguo di 5 euro...
Il modulo attualmente in mio possesso è questo ed è la versione 01, sono in attesa del modello 12:

La sua piedinatura è questa:


Dunque...se vogliamo collegarlo a Arduino ricordiamoci SEMPRE che Arduino lavora a 5v mentre il modulo purtroppo lavora a 3.3v, per cui non si può collegare direttamente Arduino all'ESP, pena, a lungo andare, la bruciatura del modulo stesso.
Per cui, per collegare Arduino al modulo ESP occorre utilizzare una conversione dei segnali da 5v a 3.3v, il metodo che ho utilizzato è quello dei DIODI 1N4148:





Bene, una volta effettuati gli opportuni collegamenti (la resistenza da 10k per me era obbligatoria), vado a caricare il seguente sketch, tramite l'interfaccia di Arduino:



#include <SoftwareSerial.h>
SoftwareSerial ESPserial(10, 11); // RX | TX
void setup() 
{
    Serial.begin(9600);     // communication with the host computer
    //while (!Serial)   { ; }
    // Start the software serial for communication with the ESP8266
    ESPserial.begin(9600);  
    Serial.println("");
    Serial.println("Remember to to set Both NL & CR in the serial monitor.");
    Serial.println("Ready");
    Serial.println("");    
}
void loop() 
{
    // listen for communication from the ESP8266 and then write it to the serial monitor
    if ( ESPserial.available() )   {  Serial.write( ESPserial.read() );  }
    // listen for user input and send it to the ESP8266
    if ( Serial.available() )       {  ESPserial.write( Serial.read() );  }
}


Una volta caricato su Arduino facciamo un reset di sicurezza e facciamo partire tutto.
Apriamo il monitor seriale e da li inviamo i comandi AT che vogliamo...
I comandi di prova che ho inviato sono:
AT (con risposta OK)
AT+RST(con risposta OK, più una stringa di caratteri "casuali")
AT+GMR(per sapere il numero di firmware, risposta 00200.9.4)

e ora...per quello che è stato costruito!
AT+CWLAP(restituisce l'elenco delle reti percepite)
AT+CWJAP="SSID","PASSWORD"(sostituendo SSID e PASSWORD con le proprie si connette alla rete)
AT+CIFSR(restituisce indirizzo IP e MAC address)

Una parte dei comandi è qui:
ESP8266ATCommandsSet

Il mio prossimo passo sarà far collegare Arduino alla rete restituendo una pagina HTML!
A presto, spero!

Nessun commento:

Posta un commento