Primeiros passos com MicroPython no ESP8266

Este post faz parte da série MicroPython com ESP8266. Leia também os outros posts da série:

As placas com ESP8266 se tornaram febre entre os makers e entusiastas, nos últimos anos. Muitos projetos estão sendo desenvolvidos com comunicação WIFI, usando módulos ESP8266 (até mesmo para indústria - esse é um papo para outro post 😉 ). A programação de placas com ESP8266 geralmente é feita usando a IDE Arduino ou Lua.

 

Mas você também pode programar a sua placa com ESP8266 usando Python, ou melhor MicroPython. Nesse artigo vou apresentar os primeiros passos para programação de uma nodeMCU usando MicroPython. Bora aprender?

MicroPython

 

O MicroPython é uma implementação enxuta e eficiente da linguagem de programação Python 3, incluindo um subconjunto da biblioteca padrão do Python, e é otimizada para rodar em microcontroladores e em ambientes restritos.

 

O MicroPython foi originalmente criado pelo programador australiano e físico Damien George, lançado em uma campanha de sucesso no Kickstarter junto com a pyboard: Veja mais detalhes sobre a placa em: MicroPython: Python para microcontrolador

 

Hoje o MicroPython já possui port para diversas placas:

  • Placas com ESP8266
  • Placas com ESP32
  • PyBoard
  • Micro:Bit
  • Teensy 3.X
  • WiPy – Pycom
  • Adafruit Circuit Playground Express

 

A Adafruit fez um fork do MicroPython e chamou de CircuitPython. Hoje eles estão desenvolvendo diversas placas e aplicações usando o CircuitPython.

 

Para mais detalhes sobre placas suportadas pelo MicroPython, acesse: Boards Summary

Neste artigo vamos focar em placa com ESP8266. Mas você pode ver mais detalhes sobre a aplicação do MicroPython com a micro:bit. Acesse a série de artigos: micro:bit com MicroPython

 

uPyCraft IDE

 

Para facilitar o desenvolvimento de scripts e até mesmo a gravação do firmware da nossa placa, vamos usar a uPyCraft IDE. Essa ferramenta foi especialmente projetada para microPython.

 

Desenvolvida pela DFRobot, pode ser usada em uma série de sistemas operacionais, e possui diversos recursos que facilitarão nossa vida, nesse primeiro momento com o MicroPython.

 

O projeto é open source e está disponível no github.

Instalação da uPyCraft IDE

 

Baixe a versão correspondente ao seu sistema operacional, no repositório do projeto.

 

A DFRobot deixou disponíveis os links para download em sua documentação:

 

 

Instale a IDE conforme o seu sistema operacional!

 

Gravando o Firmware do MicroPython na nodeMCU

 

Para conseguir programar a nodeMCU ou outra placa com ESP8266 é necessário atualizar o firmware.

 

Baixe o firmware no site do MicroPython: https://micropython.org/download#esp8266

 

Vamos usar o próprio uPyCraft para essa tarefa. Você também pode usar o nodeMCU Flasher se achar mais fácil, ou até mesmo por linha de comando com o esptool.

 

Abra o uPyCraft e vá em Tools > Serial e selecione a porta Serial para sua placa. No meu caso foi a COM9:

MicroPython no ESP8266.

Selecione a placa em  Tools > board:

Agora acesse Tools > BurnFirmware:

 

Será aberta a seguinte janela:


Faça a seguinte configuração:

  • board: esp8266
  • burn_addr: 0x0
  • erase_flash: yes
  • com: COM9
  • Firmware: Selecione “Users" e então encontre o firmware baixado no site do MicroPython:

 

Pressione OK e aguarde a gravação do firmware:

Ao final a sua placa nodeMCU estará pronta para ser programada em MicroPython.

 

Primeiros passos com o uPyCraft IDE

 

Com o uPyCraft aberto, vamos dar os primeiros passos na programação em MicroPython:

Clique no botão Connect na lateral direita:


Será aberto o REPL:

Digite help() e pressione Enter. Será exibida a seguinte mensagem:

Os comandos com a Tecla CTRL irão nos ajudar durante os testes no futuro. Lembre deles. Ou quando precisar digite help().

 

Agora vamos acender o LED onboard da nodeMCU. Digite:

 

 

Veja se o estado do LED muda na sua placa.

 

Também podemos criar um script no computador e depois transferir para a placa. Acesse File > New:

E digite o seguinte script:

 

Salve em seu workspace:

E por fim, clique em no botão DownloadAndRun ou pressione F5:

Se não houver erros no código, o LED começará a piscar e será exibida a seguinte mensagem:

Para parar a execução você pode clicar em STOP ou então pressionar CRTL + C no prompt:

Teste outros comandos, e veja o resultado na placa.

 

Nos próximos artigos, vamos explorar os recursos do MicroPython usando a nodeMCU.

 

Se ficou alguma dúvida ou sugestão, deixe seu comentário a seguir. Até o próximo.

 

Saiba mais

 

PLEN:bit - Um pequeno robô bípede feito com a BBC micro:bit

Programando a BBC micro:bit no mbed

Lendo os botões da micro:bit no mbed

Outros artigos da série

Placa de testes para MicroPython com ESP8266 >>
NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Fábio Souza
Engenheiro com experiência no desenvolvimento de projetos eletrônicos embarcados. Hoje é diretor de operações do portal Embarcados, onde trabalha para levar conteúdos de eletrônica, sistemas embarcados e IoT para o Brasil. Também atua no ensino eletrônica e programação pelo Brasil. É entusiastas do movimento maker, da cultura DIY e do compartilhamento de conhecimento, publica diversos artigos sobre eletrônica e projetos open hardware, como o projeto Franzininho Participou da residência hacker 2018 no Redbull Basement. Quando não está ministrando palestras, cursos ou workshops, dedica seu tempo “escovando bits” ou projetando placas eletrônicas.

8
Deixe um comentário

avatar
 
4 Comment threads
4 Thread replies
2 Followers
 
Most reacted comment
Hottest comment thread
6 Comment authors
Felipe FerreiraKacia Karina Rosa de SousaMax Orlando Diniz AndradeFranklin S.C. BonfimFábio Souza Recent comment authors
  Notificações  
recentes antigos mais votados
Notificar
Kacia Karina Rosa de Sousa
Visitante
Kacia Karina Rosa de Sousa

Gostaria se possível tirar uma duvida, ao apertar em DownloadAndRun meu programa executa normalmente na placa, porém ao desconectar meu esp32 da porta serial e depois alimenta-lo novamente, ele não executa o código, porque isso ocorre? não era pro meu programa estar gravado na memoria flash da placa?

Felipe Ferreira
Visitante
felipe

tenho a mesma dúvida, como gravar na memoria?

Max Orlando Diniz Andrade
Visitante
Max Orlando Diniz Andrade

Achei, estava procurando uma matéria sobre micropytom, parabéns, ler sempre, é lógico,por em prática.

Franklin S.C. Bonfim
Membro
FRANKLIN SILVA DE BONFIM

Mais um artigo muito bom Fábio!

Leandro de Santi
Visitante
Leandro de Santi

Olá Fábio, obrigado pelo artigo, o link https://www.embarcados.com.br/micropython/ citado nao esta funcionando, obrigado !!!!