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 !

Exibições: 128813

Responder esta

Respostas a este tópico

Atualizando os links dos manuais ( set/2016) 

Procedimento de atualização de FW - FOTA

ESP8266 FOTA Guide English

Link mais atual com as documentações do ESP8266:

http://bbs.espressif.com/viewtopic.php?f=67&t=225

ESP8266 - Usando IDE Arduino (exemplos ADAFRUIT/SPARKFUN )

Galera, estava estudando como compilar a linguagem C para criar programas para o ESP8266. E vi que o processo é muito complicado. Existe um procedimento para compilação no ambiente LINUX (mais detalhado) e um procedimento para compilar no ambiente WINDOWS (usa-se um ambiente Virtual de LINUX).
Os dois procedimentos envolvem muito trabalho e são bem complexos.
Tem que usar várias ferramentas, usar PYTHON, etc.
Espero que criem um método mais simples, por exemplo uma IDE pronta para isso.

Para facilitar o desenvolvimento de programas para o ESP8266, um grupo de voluntários muito bem capacitados comandados pelo russo Ivan Grokhotkov, converteu e adaptou a IDE do Arduino para o ESP8266. Os caras são feras!

Link do Ivan Grokhotkov => https://github.com/igrr

A IDE do Arduino esta toda nesse link do GitHub :
https://github.com/esp8266/Arduino
(para copia-la para o seu PC, clique em Download ZIP)

Fiz alguns testes de exemplos de programas  e a maioria esta funcionando perfeitamente. Em alguns programas serão necessárias algumas correções. Os exemplos são muito bons e recomendo que você faça testes.

Escolha uma Biblioteca, abra e selecione um dos examples:
https://github.com/esp8266/Arduino/tree/master/libraries

No próprio LAB de Garagem, já tem o todo procedimento para a criação do ambiente de desenvolvimento IDE Arduino. Recomendo que faça o Blink Teste.
http://labdegaragem.com/profiles/blogs/tutorial-esp8266-programando...

Existe também um procedimento (muito bom) no site da SparkFun:
https://learn.sparkfun.com/tutorials/esp8266-thing-hookup-guide/ins...
Pretendo depois criar um tópico sobre os Tutoriais da SparkFun.

No meu caso usei o meu PC Windows 10, usei a IDE Arduino 1.6.7 (a mais nova), e usei o meu ESP8266-12E montado em um Protoboard (interface USB Serial CP2102).

ESP8266 12E - Conexão USB Serial
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...

Observação importante : Quando você usa a IDE do Arduino, o firmware AT do ESP8266 é apagado. Portanto se deseja usar novamente o AT SDK, será necessário fazer o download novamente .

ESP8266 - Atualização de firmware:
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...

Vamos lá. Escolhi o exemplo da Adafruit pois ele é bem detalhado, tem fotos e funcionou perfeitamente no meu ESP8266-12E.
https://learn.adafruit.com/adafruit-huzzah-esp8266-breakout/using-a...

Depois de instalar a IDE Arduino, no meu caso configurei o ESP8266 como GENERIC ESP8266 MODULE.

Veja as outras configurações que são também necessárias, como informações da memória Flash, serial , COM port, etc.

Blink Teste (exemplo da SparkFun):

Anexei o arquivo Blink_SPKF.


No caso do ESP8266-12E que tem um LED azul no módulo, descobri que corresponde a porta GPIO 02. Portanto nesse exemplo, escolhi essa porta 2.

Outra informação importante que eu descobri. No caso do uso do ESP8266 com a IDE Arduino, não precisa ficar mudando as portas para o modo Download e Running. Se deseja fazer vários testes com os programas, mantenha-o no modo Download e antes de carregar o programa dê um reset no módulo.
Após a gravação do programa (Sketch), se deseja rodar o programa novamente mude as portas para o modo Running.

Para uso normal do ESP8266 (Running mode) :
IO_00 - mantenha no nível 1 ( resistor de 10K conectado ao +3,3V).
IO_02 - mantenha no nível 1 ( resistor de 10K conectado ao +3,3V).
IO_15 - mantenha no nível 0 ( conectado ao terra).

Para download de programa para o ESP8266:
IO_00 - mantenha no nível 0 ( conectado ao terra).
IO_02 - mantenha no nível 1 ( resistor de 10K conectado ao +3,3V).
IO_15 - mantenha no nível 0 ( conectado ao terra).

Após o download do programa usando a IDE Arduino, aparecerem essas mensagens: 

Despreze as mensagens de Bibliotecas inválidas. 

Se não conseguir fazer o download, confira a configuração das portas para modo DOWNLOAD e não se esqueça de dar um RESET no módulo !

Anexos

ESP8266 - Usando IDE Arduino - continuação : 

Quando usa o ESP8266-12E com o firmware adequado para a IDE do Arduino , essa é a configuração dos pinos do mesmo  ( relativa á pinagem do Arduino ) 

https://github.com/esp8266/Arduino/blob/master/doc/esp12.png

Documentação :

https://github.com/esp8266/Arduino/tree/master/doc

José Rodolfo , não alimente o seu modulo ESP8266-01 conectando no 3,3V do sua interface USB Serial. 

O regulador 3,3V da interface não aguenta o consumo do ESP8266 ! 

Use um outro regulador :

http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...

Olá a todos, nesses dias estive testando o módulo ESP8266, mas eu percebi com alguns códigos (não testei todos os exemplos da IDE), mais especificamente no código blink, usado apenas para piscar um led, que o módulo cria um SSID e ocupa um canal do wifi.

Aparece uma rede ESP-997E13 ou algo do gênero.

Isso é perigoso para a segurança de uma rede.

Como evitar esse problema?


Percebam a quantidade de redes wifi que estão ativas, aqui no prédio!!!!

Problema resolvido, o código deve ficar assim:

#include <ESP8266WiFi.h>

void setup() {
WiFi.softAPdisconnect(true);
//resto do codigo
}

Como foi comentado aqui

https://github.com/esp8266/Arduino/issues/1638

O configuração padrão do SDK é com o modo AP habilitado.

Então é só desabilitar.

Flavio como já comentado :

http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...

1) Modem-Sleep : nesse modo, o modem WIFI é desligado, mas a conexão WIFI é mantida sem a transmissão de dados. 

2) Light-sleep : A CPU pode estar suspensa em aplicações como Switch de WIFI. Sem a transmissão de dados, o modem WIFI pode ser desligado e a CPU suspendida para economizar energia. 

3) Deep-Sleep : Não precisa de conexão WIFI para ser mantido. Pode ser usado em aplicações com grande intervalo de tempo entre as transmissões. 

Achei esse Tutorias do Rui Santos bem interessantes. Não testei-os ainda 

Getting Started with ESP8266 WiFi:

http://randomnerdtutorials.com/getting-started-with-esp8266-wifi-tr...

ESP8266 Web Server Tutorial:

http://randomnerdtutorials.com/esp8266-web-server/

Flashing NodeMCU Firmware:

http://randomnerdtutorials.com/flashing-nodemcu-firmware-on-the-esp...

ESP8266 Troubleshooting Guide:

http://randomnerdtutorials.com/esp8266-troubleshooting-guide/

ESP8266 Controlled with Android App:

http://randomnerdtutorials.com/esp8266-controlled-with-android-app-...

Oi, esse é meu primeiro post aqui nesse grupo.

Recentemente comprei um ESP8266 ESP-01, e depois de ler o conteúdo aqui publicado e mais o material encontrado no google, estou com dificuldades para entender como funciona a comunicação do ESP8266 com outros controladores, como Arduino ou até mesmo com o PIC.

Problema!

Tenho uma aplicação web rodando na amazon, quero que o ESP sé conecte a ela usando WebSocket, e que ambos consigam troca informações, tanto o ESP transmitindo, quanto a aplicação transmitindo. 

Encontrei uma enorme variedade de formas de sé faze conexão usando o ESP com WebSocket só que todas tem o software* gravado no ESP.

Minha pergunta é, como leva esse "software" que é gravado no ESP para o Arduino. 

porque webSocket tem os métodos: Open, Close e Send.

E esses métodos ficarem dentro do software que é gravador no ESP não sei como acessá-los pelo Arduino. 

Este vídeo mostra uma ideia do que estou tentando faze, só que nele 'Filipe Toledo', o autor do post usa o software* no ESP. 

https://odelotstuff.wordpress.com/2016/03/23/esp8266-com-websockets/

https://www.youtube.com/watch?v=g6t9g3iAOg4

Meu conhecimento, ainda é muito limitado nessa área, e preciso da ajuda de vocês pra continua,
pode ser que, o que, eu esteja fazendo, esteja errado (e até mesmo posso estar pensado da forma errada), por isso peço a ajuda de vocês.

 

Boa noite Alci, 

Para que eu possa entender melhor, você tem que usar um Arduino conectado no ESP8266 ou pode rodar o seu programa somente no ESP8266 ?

Vamos por partes. 

No seu link : " Pré-requisito é já estar usando o ESP8266 através da IDE do Arduino." 

Você já conseguiu usar o ESP8266 através da IDE do Arduino ? 

Minha recomendação :


ESP8266 - Usando IDE Arduino (exemplos ADAFRUIT/SPARKFUN )
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...

Usando a IDE do Arduino, os sketches já são gravados na Flash memory do ESP8266. 

A comunicação do ESP8266 com o Arduino normalmente é feita através da interface serial. 

ESP8266 - Teste de comunicação serial do Arduino com o ESP8266 :
http://labdegaragem.com/forum/topics/conhecendo-o-esp8266?commentId...

Oi Gustavo, obrigado por tão prontamente respondo a minha pergunta. vamos la.

Preciso que o programa esteja no Arduino. 

Já tenho esse Pré-requisito que é de estar usando o ESP8266 através da IDE do Arduino.

Ok, se realmente precisa do Arduino, então sugiro que use-o da forma que ele que vai comandar tudo. 

Por exemplo, o Arduino vai monitorar um sensor e depois através de comandos AT no ESP8266 , os dados possam ser enviados via WIFI. O ESP8266 servirá de ponte para transporte dos seus dados. Essa opção atende às necessidades do seu projeto ? 

Existem outras opções, mas essa é a mais simples, talvez. Nunca usei NodeMCU e nem LUA. 

Não tenho experiência com WEB sockets...

Favor criar um novo tópico com as suas dúvidas. 

Esse tópico é um tutorial e se eu for ajuda-lo poderá mudar o foco. 

Obrigado

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço