Manual

do

Maker

.

com

Webserver para o ESP8266 AFIntelliLight

Webserver para o ESP8266 AFIntelliLight

O artigo de hoje traz duas informações interessantes. Uma é em relação a um comportamento do MicroPython e o outro, sobre como economizar uma bela grana rodando seu próprio webserver para o ESP8266 rodando MicroPython, de forma a não precisar da aplicação para Android e assim você poderá comprar apenas o AFIntelliLight.

É muito certo que você tenha lido o artigo anterior, mas se não o fez, poderá fazer clicando nesse link. Nele você encontrará todas as informações necessárias sobre a manipulação do AFIntelliLight, encontra todos os detalhes necessários para a instalação do firmware MicroPython no ESP-01 (é mais fácil que instalar um programa no Windows, acredite) e tudo o mais relacionado.

Onde comprar o AFIntelliLight

 

Atenção!

Permita-me perguntar; vale a pena ou não colocar você mesmo um webserver?

O funcionamento atual é para acionar o relé do dispositivo acessando-o através de seu IP, mas você pode inserir no código o link para os outros dispositivos disponíveis na rede. Assim, você clica em "IntelliLight Sala" e vai para o controlador da sala. Daí você quer acionar a luz de fora da casa e simplesmente clica em "IntelliLight Quintal" e vai para o controlador do quintal, assim você controla a casa inteira rodando um webserver totalmente free. E até a interface você poderá melhorar (coisa que não é difícil, considerando a aparência atual)!

código do webServer para o ESP8266

Para baixá-lo, simplesmente vá ao git da AF Eletrônica, clicando aqui. O procedimento é simples:

  • Instale o firmware disponibilizado por mim
  • Habilite o WEBREPL
  • Transfira o arquivo AFwebServer para o MicroPython
  • Execute-o manualmente ou no boot.py

As informações necessárias podem ser vistas nesse artigo, mas atenção!!! Use o webserver supracitado, não o do link das informações necessárias, porque o outro webserver é para o Yunshan.

Dica sobre o comportamento do MicroPython

Tive uns probleminhas chatos com o código do webserver porque eu não conseguia fazer essa substituição:

alvo = "banana %s eh boa"

valor = "nanica"

alvo %= valor

E não havia percebido por um bom tempo que o problema era o comportamento do MicroPython. Então eu utilize o replace invés disso. Isto é, invés de utilizar "%s", utilizei 4 underlines:

alvo = "banana ____ eh boa"

valor = "nanica"

alvo = alvo.replace("____",valor)

Portanto, você pode criar chaves de substituição específicas para tudo que precisar ser substituido no código HTML.

Iniciar o webserver

afintellilightweb-300x169.webp

Para iniciar o webserver é simples, tanto pelo boot.py como manualmente. Basicamente você precisa importá-lo e iniciá-lo:

import AFwebServer

AFwebServer.startServer()

Depois disso você poderá acessar o ESP8266 pelo browser.

Se precisar de informações sobre a configuração de rede, no link de referências citado mais acima você encontrará tudo, mas basicamente o que você precisa fazer após acessar o firmware pela serial é isso:

import network

sta_if = network(network.STA_IF)

sta_if.active(True)

sta_if.connect("seuSSID","suaSenha")

E com isso ele receberá um IP via DHCP a cada boot, sem mais configurações.

  Inscreva-se no nosso canal Manual do Maker no YouTube.

Também estamos no Instagram.

Nome do Autor

Djames Suhanko

Autor do blog "Do bit Ao Byte / Manual do Maker".

Viciado em embarcados desde 2006.
LinuxUser 158.760, desde 1997.