Para quem já me conhece no Lab, sabe que gosto de ir a fundo ao conhecer componentes e circuitos eletrônicos.
Em 2012 criei um tópico sobre Conhecendo o Raspberry Pi e hoje já tem mais de 16.480 visualizações. http://labdegaragem.com/forum/topics/conhecendo-o-raspberry-pi
Acho importante compartilhar o conhecimento adquirido. Para a gente que tem bastante tempo que estuda eletrônica e microcontroladores, fica mais fácil para descobrir e aprender.
Como ontem eu comprei dois ESP8266, a partir de hoje vou divulgar tudo que eu for aprendendo sobre os mesmos nesse novo tópico : Conhecendo o ESP8266.
Não tenho pressa e nem todo tempo para me dedicar à esse tópico. Assim que for descobrindo as
coisas, compartilharei com vocês.
Como o Tutorial esta crescendo muito, para facilitar a pesquisa criei um Indice :
Indice do Tutorial - Conhecendo o ESP8266
ESP8266 - O que é um ESP8266 ?
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Link dos manuais da ESPRESSIF:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Módulo ESP8266-12E
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - alcance do sinal de RF:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Alimentação e consumo de energia:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Pinos e definições :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Pinos usados no módulo:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
Módulo ESP8266 ESP-201 - descrição e uso:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - alimentação no Protoboard :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Conexão USB Serial:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Interface Serial 5V - testado e aprovado OK :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Diagrama da montagem do Modulo ESP8266-ESP201:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Diagrama da montagem do Modulo ESP8266-01:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 12E - Conexão USB Serial
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Atualização de firmware:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Programas Terminal TERMITE e CoolTerm:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Atualização de firmware - baixando o firmware do Site:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Atualização de firmware - escolhendo os arquivos do FW
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Atualização de firmware - usando a ferramenta Flash download tool:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Guia do Usuário - Ferramenta Flash Tool:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Conectando na Rede WIFI
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Mais alguns comandos AT :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Comunicação de dados TCP/IP:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Comunicação WEB Server:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - mapa de memória do ESP8266:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - destravando o módulo:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Ferramenta FLASH Download Python para LINUX:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Descobrindo o tamanho da memória Flash:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Teste de comunicação serial do Arduino com o ESP8266 :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - atualizando Firmware através da rede WIFI - FOTA
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
ESP8266 - Usando IDE Arduino (exemplos ADAFRUIT/SPARKFUN )
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
Informações sobre modos de dormir (sleep) do ESP8266 :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
A maioria do material sobre ESP8266 esta em inglês ou mandarim (chinês).
Se precisar tradução para o português, veja essas ferramentas que poderão auxiliá-lo:
http://labdegaragem.com/forum/topics/lendo-material-em-ingl-s
Boa jornada para nós !
Tags:
Tem mais esses tutoriais no site da Sparfun >
https://learn.sparkfun.com/tutorials/esp8266-thing-hookup-guide/all
https://learn.sparkfun.com/tutorials/esp8266-wifi-shield-hookup-guide
Corrigindo :
http://www.esp8266.com/viewtopic.php?f=6&t=5791
Estação (STA) é quando o ESP está se conectando ao seu wi-fi em casa.
Access Point (AP) é quando o ESP está transmitindo wi-fi para que você possa conectar-se.
Uma vez que cada wi-fi está configurado de forma diferente , seu modulo irá adquirir um endereço de sua rede wi-fi, que é o seu STAIP.
Da mesma forma, quando você se conectar a um wifi, neste caso, se você se conectar ao seu ESP, você terá um endereço IP a partir do ESP, que é a APIP
.É por isso que existem dois endereços IP diferentes, como temos a possibilidade de comunicar em duas maneiras muito diferentes.
"Station (STA) is when your ESP is connecting to your home wifi.
Access Point (AP) is when your ESP is broadcasting wifi for you to connect to.
Since each home wifi is setup differently it will grab an address from your home wifi, and that is your STAIP.
Likewise, when you connect to a wifi, in this case if you connect to your ESP, you will be given an IP address from the ESP, that is the APIP.
That is why there are two different IP addresses, since you have the possibility of communicating in two very different ways."
Mais alguns comandos AT :
AT+CWMODE? ( Verifica o modo de conexão WIFI do módulo ESP8266)
+CWMODE:1
1 : station mode
2 : softAP mode
3 : softAP + station mode
AT+CWJAP? (Identifica a rede WIFI que o módulo ESP8266 esta conectado)
+CWJAP:"Tuiuti","00:1d:7e:61:fd:48",9,-90
AT+CIFSR (Identifica o IP do seu módulo ESP8266)
+CIFSR:STAIP,"192.168.1.109"
+CIFSR:STAMAC,"18:fe:34:9e:f9:7e"
AT+CIPSTATUS (Mostra o status da Rede Wifi)
STATUS:2
2 : Got IP (adquiriu um IP)
3 : Connected (conectado)
4 : Disconnected (desconectado)
AT+CIPMUX=1 (Permite conexões multiplas ou não)
OK
<mode>0 single connection (conexão unica)
<mode>1 multiple connection (conexão multipla)
AT+CIPSERVER=1,1001 (Configure como TCP server)
OK
AT+CIPSERVER=<modo>[,<porta>]
<mode> 0 Delete server
<mode> 1 Create server
<port> port number, default is 333
Nota: Server só pode ser criado quando AT+CIPMUX=1
AT+CIPMODE=1 (define o modo de transferência)
<mode>0 modo normal
<mode>1 UART-WiFi modo transparente
AT+CIPMODE=1
CIPMUX and CIPSERVER must be 0
ERROR
Corrigindo o texto : faltou o sinal de +
e não pode ter espaço depois do comando.
AT+CWMODE=3
- Esse comando serve para configurar o modo WFI
1 : station mode
2 : softAP mode
3 : softAP + station mode
Olá José Gustavo,
Seguindo com os estudos do ESP, me surgiu uma dúvida e talvez você consiga me ajudar.
Já estabeleci a comunicação entre o ESP, nuvem e app.
Caso eu quisesse comunicar os módulos entre si (por exemplo: um ESP seria o mestre e outros 15 seriam os escravos), ele seria capaz de fazer tal processamento? Você tem alguma informação de como o ESP que seria o access point gerencia a fila de dados que são enviados para os escravos?
A comunicação seria sem acesso à Internet, utilizando os comandos AT, correto? É possível programar os comandos AT através da IDE do Arduino?
Muito obrigado pela atenção e por todas as informações contidas neste tutorial.
Almir, ainda não fiz estudos nessa área de comunicação entre vários ESP8266.
Mas já li algo que talvez possa ajuda-lo. REDE MESH
http://espressif.com/products/software/esp-mesh/overview
http://www.espressif.com/sites/default/files/30a-esp8266_mesh_user_...
http://dobitaobyte.com.br/como-fazer-rede-mesh-com-esp8266-parte-i/
https://github.com/olab-io/ESP8266-Research/blob/master/defining_me...
ESP8266 - Comunicação de dados TCP/IP
A grande difusão de uso dos módulos ESP82266 deve-se à facilidade de acesso à rede de transmissão de dados sem fio (WIFI). Por exemplo, pode ser desenvolvida uma aplicação no ESP8266 e enviar os dados para outros dispositivos ou então para a WEB. Ou também pode usar um Arduino (ou outro microcontrolador) conectado no ESP8266 através de uma porta serial (ou I2C ou SPI) e retransmitir os seus dados através da rede WIFI.
O protocolo usado para essa transmissão de dados é o TCP/IP. Esse protocolo é o mais usado nas redes de computadores em todo mundo e serve para acesso à Internet. A vantagem do ESP8266 sobre os outros módulos, é que no código do microcontrolador (firmware) já tem incluído o protocolo TCP/IP com os mecanismos de segurança WEP, TKIP e AES.
Para entender melhor o que é TCP/IP e como funciona , veja esse link:
https://pt.wikipedia.org/wiki/TCP/IP
Para saber sobre os Mecanismos de Segurança do TCP/IP:
https://pt.wikipedia.org/wiki/Wi-Fi (tópico sobre segurança)
https://pt.wikipedia.org/wiki/TKIP
É importante também saber, que existem Portas de Comunicação no TCP/IP.
https://pt.wikipedia.org/wiki/Lista_de_portas_de_protocolos
Algumas das Portas de Comunicação mais usadas são essas:
Porta 20 - FTP (protocolo de transmissão de arquivos)
Porta 22 - SSH (acesso remoto com segurança)
Porta 23 - Telnet (acesso remoto de console)
Porta 80 - HTTP (acesso à WEB)
Porta 8080 - HTTP alternado (acesso WEB Proxy)
A linguagem de programação usada para a comunicação TCP/IP é relativamente complexa. Para facilitar o uso do TCP/IP no módulo ESP8266, os chineses usaram uma interface dos antigos modems analógicos de décadas passadas - linhas de comandos AT. Através dos Comandos AT, todo o processo de comunicação pode ser configurado, iniciado, terminado, etc. Por isso, nos tópicos anteriores especifiquei vários comandos AT do ESP8266.
Como gosto de entender a fundo o que estou fazendo, pesquisei nessas ultimas semanas, como usar o TCP/IP no módulo ESP8266. Encontrei muitas soluções prontas, todas usando os comandos AT, mas nenhuma que explicasse detalhadamente todo o processo de comunicação.
Encontrei no site da ESPRESSIF esse manual sobre um exemplo de comunicação WIFI usando os comandos AT. Mas o manual sugere o uso de uma ferramenta Network Tool que eu não a encontrei. Por isso, não consegui um teste efetivo.
http://bbs.espressif.com/viewtopic.php?f=51&t=1022
4B-ESP8266__AT Command Examples__EN_v1.3.pdf Examples of using AT commands
Ontem à noite, felizmente encontrei esse excelente link, que finalmente tirou todas as minhas dúvidas:
https://alselectro.wordpress.com/2015/05/13/wifi-module-esp8266-2-t...
Seguindo o exemplo do link, consegui fazer testes efetivos de comunicação TCP/IP.
Mesmo assim apanhei um pouco, pois o Firewall do meu Laptop estava bloqueando a comunicação. Portanto, ao fazer os seus testes, não se esqueça de desbloquear o acesso do IP do seu módulo ESP8266, se estiver usando firewall também.
Recomendo também os outros links do mesmo alselectro ( muito bons !)
https://alselectro.wordpress.com/2015/05/05/wifi-module-esp8266-1-g...
https://alselectro.wordpress.com/2015/05/31/wi-fi-module-esp8266-4-...
No próximo passo - O meu exemplo de comunicação TCP/IP com todos os detalhes.
ESP8266 - Comunicação TCP/IP Server
Nesse Tópico, mostrarei um exemplo de comunicação TCP/IP usando o ESP8266 como servidor TCP, baseando-me no exemplo desse link :
https://alselectro.wordpress.com/2015/05/13/wifi-module-esp8266-2-t...
Conecte os cabos da interface USB Serial no seu módulo ESP8266. Através da console aberta com programa de Terminal como o Termite 3.2 , dê os comandos AT :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...
Lembrando-se de que o seu módulo deve estar ao alcance do seu Roteador WIFI.
Configurando o modo do WIFI :
AT+CWMODE=1 // modo Estação
Resposta :OK
1 : modo station (Estação)
2 : modo softAP (Ponto de Acesso)
3 : modo softAP + station
Conectando o módulo no Roteador WIFI :
AT+CWJAP="SSID", "senha" // SSID e senha do Roteador
AT+CWJAP="Tuiuti","12345678"
WIFI CONNECTED
WIFI GOT IP
OK
Identificando o IP do módulo ESP8266 :
AT+CIFSR
+CIFSR:STAIP,"192.168.1.109" (endereço IP do ESP8266)
+CIFSR:STAMAC,"18:fe:34:9e:f9:7e" (endereço MAC do ESP8266)
OK
Configurando Conexões múltiplas ou não :
Para comunicação com a página WEB é necessário configurar o ESP8266 no modo com múltiplas conexões.
AT+CIPMUX=1
Resposta : OK
Opções :
AT+CIPMUX=0 (modo unica conexão)
AT+CIPMUX=1 (modo multiplas conexões)
Se o servidor ESP8266 já estiver conectado, para mudar esse modo é preciso deletar antes o TCP server.
Iniciando o Servidor TCP porta 80 :
Para iniciar o modulo ESP8266 como um Servidor TCP no modo HTTP. (pode ser usado em outros modos)
AT+CIPSERVER=1,80
Resposta : OK
AT+CIPSERVER=<modo>[,<porta>]
<modo> 0 Deleta o servidor TCP
<modo> 1 Cria o servidor TCP
<porta> numero da porta , default é 333
Veja no tópico anterior os tipos de portas :
Porta 80 - HTTP (acesso à WEB)
Um servidor TCP só pode ser criado quando AT+CIPMUX=1
Configurando o Timeout do Servidor TCP :
Após o start do Servidor TCP, recomendo que configure o timeout.
Pois após a inicialização, se o ESP8266 não obtiver resposta a conexão cai.
AT+CIPSTO=60 (timeout de 60 segundos)
Reposta : OK
AT+CIPSTO=<tempo em segundos>
Verificando a resposta no WEB Browser:
Abra uma janela no seu navegador WEB no seu PC (no meu caso Google Chrome) com o endereço IP do módulo:
192.168.1.109 (endereço IP do meu módulo / porta HTTP)
Para certificar-se que houve comunicação entre o módulo e o seu PC, veja na console do Termite ,
logo após o Start do Servidor TCP :
Para enviar dados para a Página WEB :
AT+CIPSEND=0,30 (enviando até 30 caracteres)
Resposta : OK
Veja que aparecerá um prompt para envio dos caracteres
>
Digite o texto que deseja enviar. Mas seja breve, para não dar timeout.
Eu digitei : Isso é um teste ! e dei enter.
(se falhar, digite novamente o comando)
AT+CIPSEND=<ID da conexão>,<tamanho> (enviando dados do seu módulo para o seu PC)
O envio do texto somente ocorre após o comando :
AT+CIPCLOSE=0 (fechando a conexão TCP)
Verificando o texto na página WEB: teste OK !!
boa tarde josé gustavo
estou tentando como faço para gravar do esplorer um código, tenho um código
para leitura de temperatura no ds18b20, já consegui comunicar via wifi coloquei a bibliotéca do sensor ds18b20
só quando tento carregar pelo esplorer dá erro waiting answer from esp time out reached. comand aborted.
se puder me dar uma luz
obrigado
acr
Provavelmente o ESP não esta comunicando com o computador, verifique se a porta COM do ESplorer esta com os leds virtuais verdes acessos, certifique-se de que tem o firmware para linguagem LUA carregado no ESP8266
Anexe seu código aqui em arquivo TXT, para ver se esta bem.
Abs.
o lua nem consegui salvar para entro do esp
estou tentando novamente o flachdowload
obrigado
ACR, não testei ainda, mas veja esses tutoriais:
https://learn.adafruit.com/adafruit-huzzah-esp8266-breakout/using-n...
http://br-arduino.org/2015/08/nodemcu-esp8266.html
https://github.com/nodemcu/nodemcu-firmware
Já viu o tutorial do Carlos Kwiek ?
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por