Instalar Firmware LUA no ESP8266 ESP-01

Olá,

neste artigo exemplifica-se o modo como se podera utilizar um ESP8266-ESP01, com software LUA, como um NodeMCU. para isso vamos precisar do seguinte Hardware:


1 x  Módulo Adaptador USB Para ESP8266 Serial Wireless CH340                https://www.electrofun.pt


1 x Transmissor Wi-fi ESP8266 ESP-01    https://comink.pt


1 x Cabo Crocodilo        https://comink.pt


Software necessário:


1 x Python 3 .x.x    https://www.python.org


1 x Firmware LUA5.X.X  https://github.com


1 x ESPlorer ESP8266  https://esp8266.ru


1 x CH340 USB to Serial driver  http://www.microelectronic.pt


Antes de verificarem o video demonstrativo vai-se proceder a algumas correcções.

Se leram artigos anteriores podem verificar o modo como programar o ESP8266, no entanto vamos sublinhar os passo importantes:

  1. Com o adaptador serie 
    podemos fazer um shunt para conseguirmos programar, algo que não vem instalado de serie no dispositivo de conexão ao usb o shunt será deste modo:

    no caso usei esta tecnica: ( introduzir o shunt para programar firmware na flash e retira-lo para modo normal )

    se conseguirem encontrar no mercado existe uma alternativa mais prática conforme imagem anexa:

    de forma mais prática podem adquirir um gravador automatico: vejam neste link
  2. Para fazer o hard reset via pin, usamos uma ponta de fio crocodilo, umas das pontas ligamos a estrutura do USB ( GND ) e a outra ponta solta com muito cuidado damos um pequeno encosto no PIN RESET, deste modo fazemos o reset por hardware sem ter de estar a remover constantemente o ESP8266.
  3. Vamos instalar o Python, porquê este software? Por não ocupar muito espaço no computador e pelas potencialidades de programação que poderam a vir a ser uteis mais tarde.
    Será com o python que iremos instalar o firmware. Dicas sobre este software: espressif/esptool
    Sugere-se que instalem numa directoria do disco C: com o nome de C:\Python37-32

    Após instalação procedemos os seguintes paços:
    1. open consola do windows no menu iniciar escrevermos no executar “cmd” e abre o Windows command.
    2. vamos para a directoria onde se encontra os scripts do ESP, comando: CD C:\Python37-32\Scripts , se leram a pagina da espressif repararam que tem de fazer download dos script com o comando pip install pyserial .
    3.  Agora vamos verificar o tamanho da flash do ESP8266, no exemplo que demonstramos no video trata-se de 2Mb com este comando: esptool.py –port COM9 flash_id, COM9 será o nome da sua porta COM detetada pelo drive CH340 USB.
    4. Depois de verificar a memoria deve-se fazer o RESET fazendo um shunt entre o GND+RESET do ESP8266, senão fica a comunicar indefenidamente conforme o video demonstra.
    5. Agora estamos em condições de introduzir o firmware LUA, deste site: nodemcu-firmware-lua5.3.0, usando o comando: esptool.py –port COM9 write_flash -fm qio 0x00000 nodemcu_latest.bin “nodemcu_latest.bin = nome do firmware” 
  4. Depois de actualização do firmware com LUA, fazemos novamente RESET, senão fica como no video a comunicar sem conseguir dar informação do LUA instalado. Abrimos o ESPlorer, selecionamos a porta correcta, lembrem-se que este artigo explica como usar ESPlorer para comandos AT, mas no actual caso não temos o SDK instalado, logo so funciona comandos LUA. Exemplo de como colocar o LED da placa a piscar:  gravamos com o nome led-blink.lua e fazemos o upload do file para o ESP8266, arrancamos e voilá se tudo correr bem piscará o led.
  5. ATENÇÃO, não gravar como init.lua porque se algo estiver de errado no codigo, o ESP fica em loop eterno.
    LUA CODE
    -- Pin definition 
    local pin = 4            --  LED BLUE NODEMCU
    local status = gpio.LOW
    local duration = 1000    -- 1 second duration for timer
    
    -- Initialising pin
    gpio.mode(pin, gpio.OUTPUT)
    gpio.write(pin, status)
    
    -- Create an interval
    tmr.alarm(0, duration, 1, function ()
        if status == gpio.LOW then
            status = gpio.HIGH
        else
            status = gpio.LOW
        end
    
        gpio.write(pin, status)
    end)
  6. Deixo ficar algumas paginas que podem ajudar a programar LUA.
    – https://www.lua.org/manual/5.1/pt/
    – http://lua-users.org/wiki/WikiTricks
    – Learn Lua in 15 Minutes
  7. Alguma duvida não hesitem em enviar o vosso comentário, enviei o video para o youtube, que contem alguns erros pelo facto de não ter efectuado o RESET, mas neste artigo esta esclarecido 🙂

 

Deixe uma resposta

Your email address will not be published.

www.000webhost.com