You are on page 1of 40

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

BLOG FILIPEFLOP: TUTORIAIS E PROJETOS COM ARDUINO E


RASPBERRY PI

BROWSE

BLOG FILIPEFLOP WIRELESS TUTORIAL MDULO WIRELESS ESP8266


COM ARDUINO

TUTORIAL MDULO
WIRELESS ESP8266
COM ARDUINO
23 DE JUNHO DE 2015
WIRELESS
67 COMENTRIOS
6

Com o Mdulo Wireless ESP8266 voc pode conectar o


seu Arduino nas redes wireless 802.11 b/g/n, enviando e
recebendo dados nos modos AP (Access Point/Ponto de
acesso) e STA (Station), e neste tutorial vamos mostrar
como configurar esse mdulo como web server,
enviando dados para um browser.

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Esse mdulo se comunica com o microcontrolador


utilizando interface serial e seu firmware pode ser
atualizado, se necessrio. Possui ainda 2 pinos GPIO
(General Purpose Input Output, ou Entrada e Sada
de uso geral), permitindo que o mdulo seja
programado diretamente e a GPIO acionada sem a
necessidade de uso de um microcontrolador.
Outras caractersticas do Mdulo Wireless ESP8266:
Conexo redes padro 802.11 B/G/N
Alcance aproximado: 91 metros
Tenso de operao : 3.3 VDC
Comunicao serial: pinos TX e RX
Modos de operao : Cliente, Access Point,
Cliente+Access Point
Modos de segurana wireless :
OPEN/WEP/WPA_PSK/WPA2_PSK/WPA_WPA2_PSK.
Suporta comunicao TCP e UDP, com at 5
conexes simultneas
O mdulo possui antena embutida e um conector de 8
pinos, alm dos leds indicadores de funcionamento
(vermelho) e comunicao (azul):

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Ateno para o nvel de sinal utilizado pelo mdulo, que


de 3.3V, assim o pino RX (Recepo serial) no pode
ser ligado diretamente ao Arduino. Voc pode montar
um divisor de tenso com dois resistores, utilizando o
calculador deste link.

LIGAO DO MDULO ESP8266 AO


ARDUINO
Na ligao do ESP8266 com o Arduino usamos um
resistor de 1K entre o Vcc (3.3V) e o pino CH_PD (Chip
Enable). Para o divisor de tenso, utilizamos 2 resistores
de 10K, o que diminuiu a tenso do nvel de sinal para
um valor suficiente para os testes. Os dois push-buttons
do circuito sero utilizados para enviar informaes
uma pgina web, utilizando um web server. Os
resistores utilizados nos botes tambm so de 10K.

Recomendamos a utilizao de uma fonte externa para


alimentao do mdulo, pois dependendo da situao
ele pode exigir at 300mA de corrente, e o limite do
Arduino de 50mA.

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

PROGRAMA WEB SERVER ESP8266


Antes de carregarmos o programa do web server, vamos
alterar a velocidade de comunicao (baud rate) do
mdulo, que por padro est setada em 115200
(firmware verso 0.9.5). Nessa velocidade, a biblioteca
Software Serial no foi capaz de realizar a comunicao
adequadamente, por isso alteramos a velocidade para
19200, utilizando o programa abaixo.
Na linha 17 colocamos a velocidade padro (115200), e
na linha 25 setamos a nova velocidade (19200):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51

// Programa: Versao firmware modulo


ESP8266 e
// mudanca de baud rate
// Autor : FILIPEFLOP

#include <SoftwareSerial.h>

//RX pino 2, TX pino 3


SoftwareSerial esp8266(2, 3);

#define DEBUG true

void setup()
{
Serial.begin(9600);
// Configure na linha baixo a
velocidade inicial do
// modulo ESP8266
esp8266.begin(115200);
sendData("AT+RST\r\n", 2000, DEBUG);
delay(1000);
Serial.println("Versao de firmware");
delay(3000);
sendData("AT+GMR\r\n", 2000, DEBUG);
// rst
// Configure na linha abaixo a
velocidade desejada para a
// comunicacao do modulo ESP8266
(9600, 19200, 38400, etc)
sendData("AT+CIOBAUD=19200\r\n",
2000, DEBUG);
Serial.println("** Final **");
}

void loop() {}

String sendData(String command, const


int timeout, boolean debug)
{
// Envio dos comandos AT para o
modulo
String response = "";
esp8266.print(command);
long int time = millis();
while ( (time + timeout) > millis())
{
while (esp8266.available())
{
// The esp has data so display
its output to the serial window
char c = esp8266.read(); // read
the next character.
response += c;

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

}
}
if (debug)
{
Serial.print(response);
}
return response;
}

Nesse programa, mostrado no serial monitor a verso


de firmware do mdulo e tambm se os comandos foram
processados com sucesso:

No
programa
vamos
utilizar
a
biblioteca
SoftwareSerialpara efetuar a comunicao com o
mdulo usando os pinos 2 (RX) e 3 (TX). Assim,
podemos utilizar o serial monitor para acompanhar o
envio dos comandos ao mdulo.Na linha 18 do
programa, substitua as informaes de SSID (nome da
rede wireless)e SENHApelas informaes da rede
qual o mdulo ir se conectar.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

// Programa: Web Server com modulo ESP8266


// Alteracoes e adaptacoes: FILIPEFLOP

#include <SoftwareSerial.h>

//RX pino 2, TX pino 3


SoftwareSerial esp8266(2, 3);

#define DEBUG true

void setup()
{
Serial.begin(9600);
esp8266.begin(19200);

sendData("AT+RST\r\n", 2000, DEBUG); //


rst
// Conecta a rede wireless
sendData("AT+CWJAP=\"SSID\",\"SENHA\"\r\
2000, DEBUG);
delay(3000);
sendData("AT+CWMODE=1\r\n", 1000, DEBUG
// Mostra o endereco IP
sendData("AT+CIFSR\r\n", 1000, DEBUG);
// Configura para multiplas conexoes

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87

sendData("AT+CIPMUX=1\r\n", 1000, DEBUG


// Inicia o web server na porta 80
sendData("AT+CIPSERVER=1,80\r\n", 1000,
DEBUG);
}

void loop()
{
// Verifica se o ESP8266 esta enviando
dados
if (esp8266.available())
{
if (esp8266.find("+IPD,"))
{
delay(300);
int connectionId = esp8266.read() 48;

String webpage = "<head><meta httpequiv=""refresh"" content=""3"">";


webpage += "</head><h1><u>ESP8266 Web Server</u></h1><h2>Porta";
webpage += "Digital 8: ";
int a = digitalRead(8);
webpage += a;
webpage += "<h2>Porta Digital 9: ";
int b = digitalRead(9);
webpage += b;
webpage += "</h2>";

String cipSend = "AT+CIPSEND=";


cipSend += connectionId;
cipSend += ",";
cipSend += webpage.length();
cipSend += "\r\n";

sendData(cipSend, 1000, DEBUG);


sendData(webpage, 1000, DEBUG);

String closeCommand = "AT+CIPCLOSE="


closeCommand += connectionId; // app
connection id
closeCommand += "\r\n";

sendData(closeCommand, 3000, DEBUG);


}
}
}

String sendData(String command, const int


timeout, boolean debug)
{
// Envio dos comandos AT para o modulo
String response = "";
esp8266.print(command);
long int time = millis();
while ( (time + timeout) > millis())
{
while (esp8266.available())
{
// The esp has data so display its
output to the serial window
char c = esp8266.read(); // read th
next character.
response += c;
}
}
if (debug)
{
Serial.print(response);
}
return response;
}

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Acompanhe

no

serial

monitor

as

informaes de

conexo ao access point (AP) e tambm o endereo IP


obtido pela placa.

Para testar o funcionamento do circuito, abra um


browser (Chrome, Firexox, etc) e digite na barra de
endereos o endereo IP que foi mostrado no passo
anterior, no nosso caso, 192.168.0.27:

Acione os botes do circuito para que as informaes


correspondentes sejam enviadas ao browser. Devido
taxa de atualizao, as informaes podem demorar
alguns segundos para aparecer na tela. Abaixo, temos
uma imagem do circuito que utilizamos para montar este
post:

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Gostou? Ajude-nos a melhorar o blog atribuindo uma


nota a este tutorial(estrelasno final doartigo) e visite
nossa lojaFILIPEFLOP!

45 VOTOS, 4.71 CLASSIFICAO


MDIA (94% PONTUAO)

COMPARTILHE ESTE POST

Tweetar

67 COMENTRIOS
Guilherme - 24 de setembro de 2015
Boa tarde, gostaria de saber se o mdulo
esp8266 possibilita conexo atravs de DNS
(domain name system), ou apenas com
endereo de ip?
Grato.

Responder ao comentrio

FILIPEFLOP - 25 de setembro de 2015


Bom dia Guilherme,
Aceita sim, s vai depender da sua

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

configurao de rede.
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Lucas Dal Ponte Feliciano - 19 de


setembro de 2015

Ol, uma duvida com relao a comunicao


SPI, como realizada? Voc j possui algum
tutorial sobre?
Grato

Responder ao comentrio

Fbio Nakano - 12 de setembro de 2015


Ol!
Parabns pelos servios, muito bons e
eficientes!
Recebi os ESP8266 ontem. Vi que muita
gente est com dificuldade para por para
funcionar. Avancei um pouco consegui
verificar que o ESP est funcionando.
Para isso conectei o ESP ao mdulo FTDI e
enviei/recebi informao usando o monitor
serial da IDE. Baseei-me nas orientaes de
http://rancidbacon.com/files/kiwicon8/ESP826
6_WiFi_Module_Quick_Start_Guide_v_1.0.4.p
df e fiz algumas melhorias.
Ligaes:
1-) colocar o jumper do FTDI para 3.3V
(IMPORTANTE!!!)
2-) Tx do FTDI com Tx do ESP
3-) Rx do FTDI com Rx do ESP
4-) CH_PD do ESP com pull up (4k7) para
Vcc do ESP
5-) GND do FTDI no GND do ESP
6-) *Vcc (5V) do FTDI num regulador de
tenso 3.3V, sada do regulador no Vcc do
ESP

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

* quando liguei o ESP direto no 3.3V do FTDI


e conectei o FTDI na USB ficava conectando
e desconectando. Interpretei que o ESP
puxava mais corrente que o regulador do
FTDI podia fornecer, ento o conjunto
desligava inteiro, religava e desligava, em um
loop. Por isso montei o regulador de tenso,
que resolveu o problema.
Configuraes:
1-) Abrir o monitor serial do Arduino IDE;
2-) Ajustar baud rate para 115200;
3-) Ajustar line ending para both NL & CR
Texto apresentado no monitor serial (meus
comandos esto marcados com >>
Ai-Thinker Technology Co. Ltd.
ready
>>ATat
ERROR
>>AT
OK
>>AT+RST
OK
ets Jan 8 2013,rst cause:4, boot mode:(3,7)
wdt reset
load 0x40100000, len 816, room 16
tail 0
chksum 0x8d
load 0x3ffe8000, len 788, room 8
tail 12
chksum 0xcf
ho 0 tail 12 room 4
load 0x3ffe8314, len 288, room 12
tail 4
chksum 0xcf
csum 0xcf
2nd boot version : 1.2
SPI Speed : 40MHz
SPI Mode : QIO
SPI Flash Size : 4Mbit

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

jump to run user1


r
Ai-Thinker Technology Co. Ltd.
ready
>>AT+GMR
AT version:0.21.0.0
SDK version:0.9.5
OK
>> AT+CWJAP=,
ERROR
>> AT+CWJAP=,
ERROR
>> AT+CWJAP=,
ERROR
>> AT+CWJAP?
No AP
OK
>>AT+CWLAP
ERROR

Responder ao comentrio

Fbio Nakano - 12 de setembro de 2015


Mais
O ESP veio configurado como Access Point
(d para ver com o comando AT+CWMODE?
que retorna 2, que significa AP) link para
comandos AT do ESP:
http://www.google.com.br/url?
sa=t&rct=j&q=&esrc=s&source=web&cd=2&ca
d=rja&uact=8&ved=0CCoQFjABahUKEwjyy7u
n9fLHAhUJkQ0KHaeEAho&url=http%3A%2F
%2Fwww.pridopia.co.uk%2Fpidoc%2FESP8266ATCommandsSet.pdf&usg=
AFQjCNFhQKwZr74NA5KWmJzb05HG_8pSf

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

A
Ento usei meu celular para procurar os APs
prximos e l estava AI-THINKER_A473F5.
Abs,

Responder ao comentrio

rafael - 20 de setembro de 2015


Ol Fbio, vc consegui mudar o nome do
AP?

Responder ao comentrio

Fbio - 21 de setembro de 2015


Ol, Rafael,
No testei os comandos AT abaixo pois
pretendo desenvolver para o ESP usando
NodeMCU.
Quando o ESP est configurado para AP, o
comando AT para consultar o nome do AP
AT+CWSAP?
Segundo a mesma referncia, para setar o
nome:
AT+CWSAP=ssid,pwd,ch,ecn
A referncia https://room15.github.io/blog/2015/03/26/esp8266-atcommand-reference/
Abs.

Responder ao comentrio

rafael - 21 de setembro de 2015


Blz Fbio consegui mudar atravs deste
comando, valew cara.

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

FILIPEFLOP - 14 de setembro de 2015


Bom dia Fbio,
Legal, realmente o ESP8266 se mostrou
instvel nos testes. Acho que uma coisa que
pode ajudar na comunicao com o arduino
utilizar um mdulo de conversor de nvel
lgico 3.3V-5V, ao invs do divisor de tenso
com resistores: http://www.filipeflop.com/pd14770b-conversor-de-nivel-logico-3-3-5vbidirecional.html
Abrao!
Adilson Equipe FILIPEFLOP

Responder ao comentrio

MABSON - 11 de setembro de 2015


Bom dia,
Parabns, excelente post, gostaria de saber
se com este mdulo possivel criar um app
em android para enviar comandos ao
ARDUINO de ascender LEDS, RELES,
Servos etc. ?
Abrao.
Mabson Vinicius

Responder ao comentrio

FILIPEFLOP - 11 de setembro de 2015


Bom dia,
Obrigado. No temos nenhum exemplo de
controle do ESP8266 utilizando Android, mas
possvel criar um app para isso.
Abrao

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Adilson Equipe FILIPEFLOP

Responder ao comentrio

Amaral - 11 de setembro de 2015


Rapaz extraordinrio esse site, parabns!!!
eu como todo principiante estou com algumas
duvidas mas hj s vou perguntar uma blza
rs..
qual a diferena entre esse projeto e o do
(COMO COMUNICAR COM O ARDUINO
ETHERNET SHIELD W5100)??? ambos
esto no site
pra simplificar minha duvida vou dizer o que
estou querendo, ja tenho o arduino UNO e
preciso agora me comunicar usando meu
celular android, sendo q ja tenho o shield
bluetooth v1.3 mas no serve pois s
funciona com verses do bluettoth 2.0 e meu
celular e a maioria hj em dia 4.0 certo?!
estressei com esses bluettoth, tem q ter um
pra cada tipo de celular rs.
ento qual seria a melhor soluo o wireless
ou o ethernet?
esse wireless poder ser conectado de uma
rede por exemplo criada a partir do roteador
wifi do meu celular q usa dados mveis ou
apenas do ip da rede local???
seja qual for a melhor opo no seu ponto de
vista vou comprar aki, pois o preo justo e
tbem vou comprar o rtc DS3231 para
programar tarefas se tiver disponvel e ai vir
as prximas perguntas blza. rs.
forte abrao e sucesso!
aguardo seu retorno

Responder ao comentrio

FILIPEFLOP - 11 de setembro de 2015


Bom dia,

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

A utilizao da soluo via wireless ou


ethernet vai depender do seu projeto. O
W5100 um shield simples de usar, e utiliza
a biblioteca nativa da IDE do Arduino. O
ESP8266 vai exigir um pouco mais de
esforo na parte de programao, e a
tendncia que o programa fique um pouco
mais pesado, j que algumas funes de
rede so programadas na prpria biblioteca.
Abrao e obrigado!
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Amaral - 11 de setembro de 2015


ok, acho q entendi..!
vou ficar com o W5100 ento pra facilitar rs..
pelo q percebi no tem muito segredo com
toda a explicao mas qquer duvida te
procuro Adilson.
qto ao DS3231 vi uma postagem aki msmo
dizendo q ele seria mais estvel q as verses
anteriores, vdd???
bom, vou esperar chegar o W5100 pra
concluir a primeira fase do meu projeto e
depois vou adquirir o DS3231 e nesse vou
precisar de ajuda blza rs.
muito obrigado pela ajuda amigo! forte
Abrao e sucesso!!!

Responder ao comentrio

FILIPEFLOP - 14 de setembro de 2015


Bom dia Amaral,
Realmente o DS3231 mais estvel do que o
DS1307. Pelo que eu pesquisei, ele menos
sensvel s oscilaes de temperatura, que

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

fazem com que os outros modelos atrasem


alguns segundos.
Abrao!
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Amaral - 14 de setembro de 2015


Perfeito, j comprei
Obrigado mesmo!

THIAGO - 10 de setembro de 2015


Adilson,
Se eu ligar uma fonte 12v 1A no jack do
arduino vai suprir a necessidade de 300mA
do mdulo? Ou devo ligar a fonte direto no
mdulo?
Obrigado

Responder ao comentrio

FILIPEFLOP - 10 de setembro de 2015


Boa tarde Thiago,
Alimente direto o mdulo.
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Thiago - 10 de setembro de 2015


Diretamente no mdulo com uma fonte 12v

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

1A?

Responder ao comentrio

FILIPEFLOP - 10 de setembro de 2015


Boa tarde Thiago,
No, o mximo suportado pelo ESP8266
3.3V, voc pode aplicar essa tenso
diretamente no mdulo.
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Joo Guilherme Reiser de Melo - 8 de


setembro de 2015

Algum por acaso sabe se esse mdulo


consegue se conectar a uma rede Ethernet j
existente, com servidor prprio?

Responder ao comentrio

Edmilson - 2 de setembro de 2015


Gostaria de saber mais sobre esses modulos

Responder ao comentrio

Eder - 30 de agosto de 2015


Ol,
Gostaria de saber se tem como comunicar
dois arduinos com este modulo.
Se sim onde encontro material ?

Responder ao comentrio

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Luiz - 16 de agosto de 2015


Ol Filipe, queria parabenizar pelo post, mais
estou com um problema. Comprei o mdulo
em sua loja e segui seu tutorial a risca porm
no obtive resultados positivos.
Fazendo o upload do primeiro cdigo aparece
isto no serial monitor:
ets Jan 8 2013,rst c`use:4, boov mode:(3,7)
wdt reset
load 0x40000000, len 816, room 16
tail 0
chksum 0x8d
load 0x3ffe8000, l8tail 12
u 8aco2 dSMuslVersao de firmware
ets Jan 8 2013,rst cX]Y jBbJj
wdt reset
lo
ets Jan 8 3013,rst cause:4, boot mode:(3,7)
wdt reset
load 0x40100000, len 817, room 16
tail 0
chksum 0x8d
load 0x3fge8000, lrtail 13
t02 I 4 sl**Final**
No retornando a verso de Firmaware nem
nada parecido como o seu tutorial, mas como
apareceu o **Final** continuei o tutorial e fiz o
upload do cdigo seguinte obtendo :
qXzC!1)CCa *
I!a5 )ICa5 Jr0IN K!C !
r_H(Thinker Technology Co. Ltd.
ready
qXzC!1)CCa* I!c5 )KCa7
Jr0KH K!CqXzC!1)CCa *
I!a5 )ICa5 Jr0IN K!C !
r_H(Thinker Technology Co. Ltd.

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

ready
No cosegui fazer nada com este mdulo. O
qu eu fao ?

Responder ao comentrio

FILIPEFLOP - 17 de agosto de 2015


Boa tarde Luiz,
Isso parece algum problema na configurao
da velocidade da serial, por favor tente outras
velocidade (9600, 19200, etc).
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Rafael Nunes - 30 de agosto de 2015


Tenho o mesmo problema do Luiz, ja testei
vrias velocidades de comunicao e o erro
persiste.

Responder ao comentrio

Jonas - 7 de agosto de 2015


Ola Adilson atravez deste modulo wireless e
posivel encaminhar as posioes do giroscopio
para o labview e matlab. Utilizando o arduino
Leonardo?
grato
Jonas

Responder ao comentrio

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

FILIPEFLOP - 11 de agosto de 2015


Boa tarde Jonas,
Ainda no fiz esse tipo de comunicao, mas
pelo que pesquisei possvel sim.
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

jagoris - 30 de julho de 2015


Para duvidas deste componente, sugiro que
deem uma olhada em
http://RandomNerdTutorials.com/esp8266web-server
e tambem no livro feito pelo autor.

Responder ao comentrio

Roger - 29 de julho de 2015


Algum tem algum exemplo de cdigo para
acionar as portas do UNO atravs desse
Mdulo?
J tentei de muitas formas mais at agora
sem sucesso.

Responder ao comentrio

MARCUS - 29 de julho de 2015


Boa tarde, tenho uma duvida sobre esse
mdulo. quero fazer um sistema com rel,
sensor de toque e uma comunicao. pensei
nesse mdulo, mas gostaria de saber se
posso fazer isso utilizando apenas ele ou se
preciso usar o arduino junto. Valeu.

Responder ao comentrio

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

FILIPEFLOP - 7 de agosto de 2015


Boa tarde Marcus,
Voc pode fazer isso s com o sensor, j que
ele possui portas de comunicao (GPIO),
mas voc ter que construir algum circuito
auxiliar.
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Ricardo Cardoso Felipe - 28 de julho de


2015

Infelizmente no consegui fazer funcionar o


mdulo ESP, no da resposta nenhuma no
monitor serial, porm acende o led azul
indicando que est recebendo algum dado,
segui tudo que est neste tutorial bem como
no site arduino e cia. Tem mais algum teste
pra fazer ou meu mdulo veio com defeito?
Atenciosamente,
Ricardo Cardoso Felipe

Responder ao comentrio

Rafael dos Santos Gomes - 27 de julho


de 2015

Ol, belo tutorial esto de parabns, porm


me deparei com o problema citado pelo
Gabriel que ocorre n primeiro programa
quando se testa a verso do firmware.
Apareceu para mim o seguinte:

Versao de firmware
** Final **

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Acredito que seja a verso do firmware que


diferente.
Procurei na internet e vi alguns tutoriais
sobre a atualizao, mas todos utilizam placa
FTDI. A pergunta ento como atualizar o
firmware? Posso atualizar o firmware do 8266
sem a ter uma placa FTDI a disposio ou
terei que comprar uma?
Obrigado.

Responder ao comentrio

FILIPEFLOP - 27 de julho de 2015


Boa tarde Rafael,
Ainda no temos um post falando sobre o
upgrade de firmware dessa placa. Por favor
d uma olhada neste link:
https://www.ukhas.net/wiki/esp8266_firmware
_update
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Helder - 23 de julho de 2015


Estou tendo problemas com esta
programao:
O numero do IP no aparece, e aparece esta
informao no lugar:
ready
AT+CWJAP=REDE_Helder,123456
AT+CWMODE=1
busy p
AT+CIFSR
busy p
AT+CIPSERVER=1,80
busy p

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Tenho que fazer alguma configurao no


meu Roteador?

Responder ao comentrio

FILIPEFLOP - 23 de julho de 2015


Boa tarde Helder,
Acredito que no, pois essa informao
tambm apareceu algumas vezes nos nossos
testes. No caso, o mdulo no conseguia se
conectar seguidas vezes ao roteador (por
exemplo, quando reiniciamos o Arduino no
meio da comunicao).
Tente desligar o Arduino por alguns
segundos e depois tentar novamente.
Abrao.
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Helder - 23 de julho de 2015


Infelizmente continua na mesma, vc teria um
outro programa para testar este modulo?
Grato
Helder

Responder ao comentrio

FILIPEFLOP - 24 de julho de 2015


Bom dia Helder,
Tente este post, por favor:
http://www.arduinoecia.com.br/2015/03/arduin
o-modulo-wireless-esp8266.html
Abrao

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Adilson Equipe FILIPEFLOP

Responder ao comentrio

Caroline Silva - 19 de julho de 2015


no funcionou, perguntei para o grupo do
arduino brasil e estavam tendo problemas
com esse tipo de mdulo.

Responder ao comentrio

Luiz - 21 de julho de 2015


Seguir esse tutorial e no tive problemas. Fiz
apenas alguns ajustes pois uso um mega.

Responder ao comentrio

Ricardo Cardoso Felipe - 28 de julho de


2015

Quais foram os ajustes que voc fez para


usar no arduino Mega?

Responder ao comentrio

Mario Souza - 16 de julho de 2015


Alguem tem as ligaes e programa do Wifi
ESP8266MOD(12) ?
Grato

Responder ao comentrio

SINEIR - 22 de agosto de 2015


Mario neste link
http://blog.squix.ch/2015_03_01_archive.html
tem algumas pinagens. O que muda o

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

nmero de IOs, o exemplo exposto aqui


funcionar da mesma naneira

Responder ao comentrio

Breno - 14 de julho de 2015


Prezados,
Acredito que estou tendo dificuldades de
fazer funcionar o sistema abordado neste
artigo, pois a alimentao do notebook no
est sendo suficiente para o
arduino+wireless.. Como fao para ligar a
fonte externa no mdulo wireless, conforme
comentado no artigo?

Responder ao comentrio

FILIPEFLOP - 16 de julho de 2015


Boa tarde Breno,
Utilize os pinos GND e 3.3V do mdulo. No
esquea que 3.3V a tenso mxima
suportada.
Abrao.
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Luiz - 21 de julho de 2015


Alimentao do meu esp foi via fonte de 3.3V
do meu arduino mega 2560. Sem problemas.

Responder ao comentrio

Igor - 9 de julho de 2015


Boa noite

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

adorei o tutorial! Tenho apenas duas dvidas


referente a esse produto:
-Como esse mdulo se comportaria com
outros iguais se conectando na mesma rede?
Geraria algum tipo de conflito ou algum tipo
de sobrecarga na comunicao? Ou vrias
unidades podem funcionar paralelas sem
acarretar problema ou perda de velocidade?
-A taxa de transferncia dele mesmo de
19200, identica a comunicao bluetooth ?
Pergunto pois tenho uma aplicao que
utiliza transmisso bluettooth porem gostaria
de mudar pra rede wifi para possibilitar varias
conexes simultaneas. Meu unico medo
que a minha atual aplicao necessita de
respostas em tempo real (ou prximo disso).
Queria saber se possvel com algum tipo
de aplicao chegar nesse cenrio;
Obrigado

Responder ao comentrio

FILIPEFLOP - 10 de julho de 2015


Boa tarde Igor,
Pelo tipo de ligao do mdulo (comunicao
serial), possvel utilizar mais de um ao
mesmo tempo no Arduino, mas no temos
informaes sobre conflitos e/ou sobrecarga.
Quanto taxa de transferncia, ela
configurvel, e aqui conseguimos utilizar em
19200 e 115200.
Abrao
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Fabio Oliveira - 8 de julho de 2015

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

possvel conectar esse mdulo wireless em


uma rede no roteador?

Responder ao comentrio

FILIPEFLOP - 9 de julho de 2015


Bom dia Fbio,
Sim, esse programa de exemplo j faz uma
conexo via wireless com o roteador.
Abrao.
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Gabriel - 8 de julho de 2015


Ol Filipe, queria parabenizar pelo post, mais
estou com um problema, preciso
urgentemente fazer comunicao entre
arduino mega + esp8266, porm estou
tentando usar seu codigo e no aparece nem
a verso para mim, aparece apenas :
Verso de firmawe
** Final **

Responder ao comentrio

Carlos Alberto - 13 de julho de 2015


Tambm estou tendo o mesmo problema,
algum poderia esclarecer?

Responder ao comentrio

tiago hidalgo - 27 de julho de 2015


Tb Estou c o mesmo problemas. Alguem da
uma ajuda aew pliz?

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Responder ao comentrio

Rodrigo S - 14 de agosto de 2015


Tive este problema tambm, e resolvi da
seaguinte forma:
Alimentei o mdulo com fonte independente
de 3.3 V, ligando o terra ao arduino
Ainda assim, no consegui comunicao do
arduino com o modulo pois ele no
reconhecia baud rate de 115200. Mudei a
baud rate para 19200 utilizando um terminal
do PC ligado ao modulo, no meu caso, com o
picocom

Responder ao comentrio

Paulo Fernando - 23 de agosto de 2015


Estou com o mesmo problema!

Responder ao comentrio

Adriano Freitas - 31 de agosto de 2015


Idem ao Paulo Fernando, fico na mesma,
algum conseguiu resolver, ou sabe o que ?

Responder ao comentrio

Williams - 17 de setembro de 2015


Tambm estou com o mesmo problema e
no consigo resolver! Se algum conseguir
d um retorno ae! wgfarias@gmail.com,
obrigado.

Responder ao comentrio

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

fabio - 17 de setembro de 2015


Desconfio que softwareserial instvel a
115200. Talvez a soluo do Rodrigo S
(acima, 14.ago) funcione. Mas se vc tem um
mega, pode usar uma serial para comunicar
com o pc e outra para ligar com o esp8266.
Tente http://www.instructables.com/id/noobsguide-to-ESP8266-with-Arduino-Mega-2560or-U/ (por sua prpria conta e risco
abs!

Responder ao comentrio

Williams - 19 de setembro de 2015


descobri que meu mdulo wifi tem a verso
de firmware 0.2! Provavelmente seja isso;
estou comprando uma placa FTDI para poder
atualiz-lo, pois no consegui faz-lo
somente com o arduino.

Responder ao comentrio

Andreas Schutz - 2 de julho de 2015


Pessoal, a pgina no est carregando as
imagens (ERRO 404).
obrigado

Responder ao comentrio

FILIPEFLOP - 3 de julho de 2015


Boa tarde Andreas,
Est normal, sem erros.
Abrao.
Adilson Equipe FILIPEFLOP

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP


Responder ao comentrio

teste - 27 de junho de 2015


[code]
/*
SensorNode > Canal ThingSpeak via
Ethernet
Autor: Pedro Cndido do Nascimento Filho
Email: pedrocnf@gmail.com
Criado em Junho de 2015
O client ThingSpeak eh projetado para que o
Arduino, atravs da
placa Ethernet possa atualizar um canal de
grficos com dados
analgicos, lidos atravs do API
ThingSpeak usando HTTP POST.
O Arduino usa DHCP e DNS para uma
simples configurao de rede.
O cdigo tambm utiliza um recurso de
computao autonmica, que
uma funo que reseta o Arduino caso
a comunicao seja interrompida,
implementeando o preceito de Auto-Cura.
Este procedimento garante
que o Arduino pode ser recuperar caso
depois de desligado de forma
intencional e no intencional.
O monitor serial permite acompanhar todo o
processo.
*/
//BIBLIOTECAS USADAS NO CODIGO
#include //BIBLIOTECA DE PROTOCOLOS
DE REDE E INTERNET
#include //BIBLIOTECA DE
COMUNICAO COM O SHIELD
ETHERNET
#include DHT.h //BIBLIOTECA DO
SENSOR DE TEMPERATURA E HUMIDADE
//CONFIGURACOES DO SENSOR DE
HUMIDADE E PRESSAO
#define DHTPIN A2 // pino que estamos
conectando o sensor DHT-11
#define DHTTYPE DHT11 // definindo o

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

modelo do sensor como DHT 11


DHT dht(DHTPIN, DHTTYPE);
//CONFIGURACOES DA REDE
byte mac[] = {0x56, 0x48, 0x6B, 0x21, 0x57,
0x76 }; // Endereo MAC gerado
manualmente (56-48-6B-21-57-76)
//CONFIGURACOES DO THINGSPEAK
char thingSpeakAddress[] =
api.thingspeak.com;
String writeAPIKey =
MBCS6S5IHPOF84FW; //API KEY DO
CANAL UTILIZADO
const int updateThingSpeakInterval = 16 *
1000; // Time interval in milliseconds to
update ThingSpeak (number of seconds *
1000 = interval)
char thingspeak_data[128]; //varivel que
guarda os dados que sero enviados
//CONFIGURACOES DE VARIAVEIS
long lastConnectionTime = 0;
boolean lastConnected = false;
int failedCounter = 0;
int LedVerde = 2;
int LedVerm = 3;
//INICIALIZAO DO CLIENTE
ETHERNET
EthernetClient client;
//FUNO DE CONFIGURAES
void setup()
{
Serial.begin(9600); //INICIO DA PORTA
SERIAL
Serial.println(SENSOR DHT-11: ON-LINE!);
//MSG DE FUNCIONAMENTO DO SENSOR
dht.begin();//INICIO DO SENSOR
startEthernet(); //INICIO DA FUNCAO
ETHERNET
pinMode(LedVerde, OUTPUT);
pinMode(LedVerm, OUTPUT);
}
//FUNCAO DE RECURSIVIDADE
void loop()
{

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

char dht_temp[6];//cria variavel do tipo char


que vai armazenar valores de temperatura do
dht
char dht_umid[6];//cria variavel do tipo char
que vai armazenar valores de umidade do dht
float h = dht.readHumidity();//faz leitura de
umidade e armazena na variavel h do tipo
float
float t = dht.readTemperature();//faz leitura de
temperatura e armazena na variavel t do tipo
float
if (isnan(t) || isnan(h)) {//verifica se existiu
leitura de temperatura e umidade
Serial.println(Falha ao ler sensor
DHT);//exibe mensagem em caso de erro na
leitura
} else {
dtostrf(h, 1, 2, dht_umid); //copiando float
umidade para char dht_umid
dtostrf(t, 1, 2, dht_temp); //copiando float
temperatura para char dht_temp
}
//salva na variavel char thingspeak_data
variaveis que sero enviadas para o
servidor thingspeak no formato field1=xx(valor
umidade)&field2=xx(valor temperatura)
sprintf(thingspeak_data,
field1=%s&field2=%s, dht_umid, dht_temp);
//IMPRIME ATUALIZACAO NO MONITOR
SERIAL
if (client.available())
{
char c = client.read();
Serial.print(c);
}
//DESCONECTAR DO THINGSPEAK
if (!client.connected() && lastConnected)
{
Serial.println(desconectdo);
Serial.println();
client.stop();
}
// ATUALIZACAO DO THINGSPEAK
if (!client.connected() && (millis()

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

lastConnectionTime >
updateThingSpeakInterval))
{
updateThingSpeak(thingspeak_data); // envia
variavel thingspeak_data para a funo
updateThingSpeak
Serial.println(thingspeak_data);// exibe via
serial os dados enviados de temperatura e
umidade
}
// CHECA SE O ARDUINO PRECISA SER
RESETADO >>> FUNCAO AUTONMICA
if (failedCounter > 3 ) {
startEthernet();
}
lastConnected = client.connected();
}
//FUNCAO DO CABECALHO HTTP POST
DO THINGSPEAK
void updateThingSpeak(String tsData)
{
if (client.connect(thingSpeakAddress, 80))
{
client.print(POST /update HTTP/1.1\n);
client.print(Host: api.thingspeak.com\n);
client.print(Connection: close\n);
client.print(X-THINGSPEAKAPIKEY: +
writeAPIKey + \n);
client.print(Content-Type: application/x-wwwform-urlencoded\n);
client.print(Content-Length: );
client.print(tsData.length());
client.print(\n\n);
client.print(tsData);
lastConnectionTime = millis();
if (client.connected())
{
Serial.println(Connecting to ThingSpeak);
Serial.println();
failedCounter = 0;
digitalWrite(2,HIGH);
delay(5000);
digitalWrite(2,LOW);
}
else

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

{
failedCounter++;
Serial.println(Connection to ThingSpeak
failed ( + String(failedCounter, DEC) + ));
Serial.println();
}
}
else
{
failedCounter++;
Serial.println(Falha de conexao ao
ThingSpeak( + String(failedCounter, DEC) +
));
Serial.println();
lastConnectionTime = millis();
digitalWrite(3,HIGH);
delay(5000);
digitalWrite(3,LOW);
}
}
//FUNCAO DE CONEXAO ETHERNET
void startEthernet()
{
client.stop();
Serial.println(Conectando o Arduino a
rede);
Serial.println();
delay(1000);
// CONEXAO USANDO DHCP
if (Ethernet.begin(mac) == 0)
{
digitalWrite (2,LOW);
Serial.println(Falha do DHCP, reinicie o
Arduino para tentar novamente);
}
else
{
Serial.println(Arduino conectado a rede
usando DHCP);
Serial.println();
}
delay(1000);
}
[/code]

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP


Responder ao comentrio

Alexandre - 25 de junho de 2015


Boa noite,
Primeiro, gostaria de parabeniz-lo pelo post
to bem explicado.
No meu caso, meu ESP8266 deve estar com
um firmware diferente do seu usado.
Poderia, por favor, nos ensinar um modo
para atualizar para funcionar junto com o
arduino?
Muito obrigado!

Responder ao comentrio

FILIPEFLOP - 30 de junho de 2015


Bom dia Alexandre,
Obrigado. Ainda no temos um post
especfico para atualizao de firmware. Qual
a verso do seu mdulo ?
Abrao.
Adilson Equipe FILIPEFLOP

Responder ao comentrio

Carlos Alexandre - 23 de junho de 2015


Parabns, mais um post excelente!

Responder ao comentrio

FILIPEFLOP - 24 de junho de 2015


Obrigado Carlos !
Abrao.

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Adilson Equipe FILIPEFLOP

Responder ao comentrio

DEIXE UMA RESPOSTA


Nome

E-mail

Site

dizer algo agradvel ...

Enviar Comentrio
Avise-me sobre comentrios seguintes por email.
Avise-me sobre novas publicaes por email.

POSTS RECENTES
COMO GRAVAR DADOS NO CARTO
RFID
21 DE SETEMBRO DE 2015
WIRELESS
2

PILHAS E BATERIAS: CONHEA OS


PRINCIPAIS TIPOS
10 DE SETEMBRO DE 2015
OUTROS
3

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

COMO FAZER UM DATALOGGER COM


ARDUINO
24 DE AGOSTO DE 2015
ARDUINO
8

COMO FAZER UM BAFMETRO COM


ARDUINO
17 DE AGOSTO DE 2015
SENSORES
3

TUTORIAL SENSOR DE CHAMA COM


ARDUINO
10 DE AGOSTO DE 2015
SENSORES
2

ASSINAR BLOG POR EMAIL


Digite seu endereo de email para assinar este
blog e receber notificaes de novas publicaes
por email.

Assinar

LOJA VIRTUAL

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

MAIS POSTS

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

CONCOR
O Raspberr

COMO CONFIGURAR O XBEE


EXPLORER USB ADAPTER
Quem se interessa por redes wireless em automao j deve ter
6

LOJA ONLINE
QUEM SOMOS
CONTATO

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

Tutorial Mdulo Wireless ESP8266 com Arduino | Blog FILIPEFLOP

Digite seu endereo de e-mail no campo abaixo para


acompanhar o Blog FILIPEFLOP e receber notificaes de
novos posts:

Endereo de email

Assinar

Copyright Blog | FILIPEFLOP - Todos os direitos reservados - 2015

http://blog.filipeflop.com/wireless/esp8266-arduino-tutorial.html[28/09/2015 01:02:54]

You might also like