NodeMCU – Como criar um Web Server e conectar a uma rede WIFI

NodeMCU – Como criar um Web Server e conectar a uma rede WIFI

Dificuldades em criar um servidor web com o NodeMCU para desenvolver projetos que envolvam controle de módulos e sensores através de página web? Então não deixe de ler esta postagem! Aqui você vai aprender os primeiros passos para criar um web server com o NodeMCU e conectá-lo a uma rede WiFi.

Como foi dito em nosso artigo NodeMCU – Uma plataforma com características singulares para o seu projeto ioT, esta plataforma é um concorrente bem a altura do Arduino. Suas características singulares a tornam bem atraentes para desenvolvimentos de projetos ioT, principalmente em projetos que necessitam de controle através de página web. O grande diferencial do NodeMCU é possuir WiFi nativo, ou seja, a placa pode se conectar a redes sem fio padrão 802.11 b/g/n.

Ao final dessa prática você estará conectado a uma rede sem fio e em seguida poderá se conectar a uma página web do servidor que vai estar rodando no NodeMCU.

Para esta postagem, utilizei apenas o NodeMCU com cabo micro USB para conectá-lo ao computador.

Para que a prática funcione, é necessário que você já esteja com a placa NodeMCU instalada no computador e que ela seja reconhecida pela IDE do Arduino. Se ainda não tem a IDE do Arduino instalada e configurada para o NodeMCU, acesse os links abaixo e em seguida retorne para continuar:

Arduino – Instalação e Configuração da IDE no Windows
NodeMCU – Instalação no Windows
NodeMCU – Configurando a IDE do Arduino

No código fonte, em “const char* ssid”, você deve colocar o nome da sua rede WiFi (dentro das aspas duplas) e em “const char* password”, coloque a senha da sua rede WiFi (também dentro das aspas duplas). Veja na imagem abaixo as informações destacadas:

img01_nodemcu_criando_web_server_e_conectando_rede_wifi_ide_arduino_esp8266_sem_fio_wireless

O código para testes está abaixo, basta copiá-lo, colar na IDE, editar com as informações da sua rede sem fio, salvar e carregar:

Após o arquivo ser carregado no NodeMCU, abra a janela serial da IDE. Se a conexão for realizada com sucesso, as seguintes mensagens: “Conectado a rede sem fioNome da sua rede’, ‘Servidor iniciado’ e ‘IP para se conectar ao NodeMCU: http://’endereço’ ” vão aparecer no monitor, como mostra a figura abaixo:

img02_nodemcu_criando_web_server_e_conectando_rede_wifi_ide_arduino_esp8266_sem_fio_wireless

OBS: Para visualizar o resultado acima, não esqueça de mudar no rodapé da serial a velocidade para 115200, conforme a imagem abaixo:

img03_nodemcu_criando_web_server_e_conectando_rede_wifi_ide_arduino_esp8266_sem_fio_wireless

Deixe a janela serial aberta. Em seguida abra o navegador e digite o endereço de IP que o monitor serial forneceu para que você possa se conectar ao NodeMCU. Uma página similar à imagem abaixo será aberta:

img04_nodemcu_criando_web_server_e_conectando_rede_wifi_ide_arduino_esp8266_sem_fio_wireless

Ao retornar no monitor serial, veja que novas informações de conexão surgiram na janela, conforme mostra a imagem abaixo:

img05_nodemcu_criando_web_server_e_conectando_rede_wifi_ide_arduino_esp8266_sem_fio_wireless

Para esta postagem, deixei que o NodeMCU obtivesse um endereço de IP dinâmico, contudo, nas próximas postagens será definido um IP estático para a placa.

Gostou desta prática? Então deixa seu comentário, dúvida ou sugestão aí embaixo!

Loja online: https://www.masterwalkershop.com.br
Fan page no Facebook: https://www.facebook.com/masterwalkershop

Nos ajude a espalhar conhecimento clicando no botão de compartilhar (f Like) que está mais abaixo.

Obrigada e até a próxima!

Seu feedback é muito importante! Que tal dar uma nota para esta postagem?! Faça sua avaliação aqui embaixo.

NodeMCU – Como criar um Web Server e conectar a uma rede WIFI
13 votos / Média de avaliação: 5 / Pontuação: 100%


Postagem anterior:
Próxima postagem:
Postagem feita por

Colaboradora do Blog MasterWalker Shop, graduada em Engenharia da Computação pela UNIPAC. Sou apaixonada por tecnologia, fã de super-heróis e um bom rock.

Existem 29 comentários para esta postagem
  1. Giovani Milanezi às 10:29

    Nao estou conseguindo conectar a rede… Coloquei a rede e senha… O programa para na instrucao While{}, fica em loop e nao sai mais, fica tentando conectar mas nao conecta. O que pode estar acontecendo?

    • Euler Oliveira às 09:07

      Olá Giovani Milanezi.

      Se possuir um smartphone Android, crie um ponto de acesso WiFi (Tethering e acesso portátil) com ele e deixe habilitado. Em seguida coloque os dados (nome da rede e senha) deste ponto de acesso no código e tente se conectar.

      É ideal que faça os testes em uma rede sem fio alternativa para verificar se não é o roteador que está barrando a conexão do NodeMCU.

      Faça este teste e dê um retorno se funcionou.

    • Euler Oliveira às 18:25

      Olá Carlos.

      Já verificou quais os padrões de rede WiFi seu roteador oferece (802.11 b/g/n)? Verifique se algum destes está habilitado ou se ambos estão. Caso esteja tudo OK com o roteador e ainda assim não consiga conectar, recomendo que instale novamente o firmware no NodeMCU.

  2. Gustavo Henrique às 01:21

    Olá, boa noite!

    Estou com um problema na hora que finaliza o processo, não aparece o nome da minha rede nem o Ip, não aparece nada no monitor serial apenas fica loop contínuo de pontos.
    Por favor, se alguém puder me ajudar ou auxiliar agradeço desde já

  3. Giba/Quase louco... às 15:10

    Não consigo conectar, meun roteador é junto ao modem da Net, pode ter alguma complicação?
    tentei o IP fixo tambem, nada não acessa.
    podem dar uma dica, já estou desconfiando do Node Msu, no entanto consigo fazer ele funcionar com programas basicos, acender led ligar rele, mas por comando via skech

    • Euler Oliveira às 20:04

      Olá Giba.

      Recomendo que faça o teste com uma outra conexão de internet que não seja NET para comprovar se é o NodeMCU que está com defeito.

      Este código que disponibilizei na postagem é totalmente funcional.

      • Giba/Quase louco... às 19:17

        Mestre Euler, funcionou na rede WiFi do smartfone, obrigado, pergunta, como fazer funcionar com o modem Wifi da NET, porque dá errado? conhece algum artigo?

        • Euler Oliveira às 20:30

          Verifique junto a operadora se existe algum tipo de bloqueio no modem WiFi deles e se existir, qual o procedimento a ser feito para que possa incluir o NodeMCU na sua rede.

  4. José Rodolfo Durante às 21:15

    Euler ;
    Copiei o código e conferi mas acontece o seguinte:
    1. No monitor serial não aparece NADA!.
    2. No navegador tudo ocorre certinho.
    Obs. Tinha conhecido o ip pelo comando AT.
    Podes me ajudar?
    Obrigado
    Rodolfo

  5. Filipe Paceli às 14:31

    Fala brother, cara estou tendo um erro sinistro, é comum o nodemcu travar em alguns instantes e “morrer” literalmente tendo que reseta-lo? tenho um webserver , wifi autoconect e 4 comandos..
    tenho display oled tb.. tem relato de incompatibilidade?

  6. Antonio às 07:36

    Caro Euler

    Tudo funcionando quando acesso de um pc , quando acesso de um celular o módulo trava me forçando a dar um reset.
    Tem alguma ideia do que possa estar acontecendo??
    Obrigado
    Antonio

  7. Otavio às 17:11

    Olá Euler!
    Copiei/ colei o código e compilou certinho, porém estou me deparando com um problema. A conexão com a rede local ocorre normalmente, e o monitor serial mostra a URL (endereço IP) que eu deveria utilizar para acessar o servidor. Entretanto, quando jogo o endereço no navegador e tento acessar, aparece um erro dizendo que não foi possível encontrar a página. Já desativei o firewall, testei em vários navegadores diferentes, redes diferentes, portas diferentes (mudei da porta 80 para a 8089 e 8082) e nada funciona! O que pode estar acontecendo?
    P.S.: Estou utilizando um ESP32 e SO Windows 10

  8. HELIO BARBOSA às 15:21

    Pessoal eu esstou tentando enviar dados a minha pagina php em um servidor nas nuvens mas não consigo. Estou usando o Arduino Uno 3 e o ESP8266 juntos.
    Já consigo conectar co WiFi mas não consigo enviar os dados. Se houver alguem disposto a me ajudar posso enviar os fontes php e uno.

  9. Martins às 10:00

    Euler, parabéns pelos tutoriais. Ótimas dicas para iniciantes como eu. Gostaria de tirar uma dúvida, estou usando a placa Wemos D1 R2, vi que você postou o link desse tutorial para conexão wi-fi com essa placa em um dos tutoriais seus da Wemos. Porém não consigo acesso a porta para mostrar o endereço de IP, já mudei a velocidade para 9600 e 115200 conforme você disse nos comentários e mesmo assim não aparece, fica em branco. O que devo fazer para aparecer? Agradeço a ajudar!
    P.S: Peço a você fazer quando tiver um tempo um tutorial de como usar Infravermelho com a placa Wemos R1 e D2, é um ótimo projeto e que com certeza traria muitos visitantes ao seu site. Obrigado e sucesso amigo! =D

    • Euler Oliveira às 10:09

      Olá Martins.

      Agradeço pelo comentário!

      No código você está preenchendo as informações da rede WiFi em que a placa irá conectar? Está mantendo a velocidade de 115200 ou 9600 no código?

      O código desta postagem é compatível com a Wemos.

      Sobre o infravermelho: você diz clonar controle remoto infravermelho?

      • Martins às 14:41

        Olá, Euler! Em respostas de suas perguntas:

        “No código você está preenchendo as informações da rede WiFi em que a placa irá conectar? Está mantendo a velocidade de 115200 ou 9600 no código?”

        Nessa linha (Serial.print(“http://”);) devo colocar o endereço, é isso? Não cheguei a colocar, pensei que seria gerado de forma automático. Obrigado! Irei tentar aqui. Em relação as velocidades eu cheguei a testar com os dois valores que você citou e não deu certo, acredito que o erro foi exatamente essa linha que citei anteriormente.

        “Sobre o infravermelho: você diz clonar controle remoto infravermelho?”
        Sim, clonar um controle remoto por completo de um ar condicionado. Na internet tem muitos projetos com TVs, porém com ar condicionados não encontrei nenhum. Alguns dizem que dá certo com o código de clonagem da TV, porém não dá. O controle do ar condicionado manda ao Arduino as instruções completas do ar, não somente a específica do botão, por isso é preciso uma codificação diferença, mudança de valores de buff, etc… Acho que seria legal você criar em seu blog um tutorial sobre isso, seria inovador.

        Abraço e obrigado pelas respostas!

        • Euler Oliveira às 15:04

          A linha (Serial.print(“http://”);) não diz respeito a velocidade da comunicação serial. A linha responsável por isso é a Serial.begin(115200);.

          As informações da sua rede WiFi são preenchidas nas linhas:

          const char* ssid = “nome_da_sua_rede_WIFI”;
          const char* password = “senha_da_sua_rede_WIFI”;

          Não tenho experiência na clonagem de teclas de controle remoto de ar condicionado, mas posso te afirmar que é bem complicado de ser clonado. Controle remoto de ar condicionado costuma não ser possível clonar as teclas a partir do Fotorreceptor IR utilizado com o Arduino.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *