Instalação

Nesta página veremos todo o processo de instalação do MicroPython numa placa ESP32-PICO-KIT assim como o uso do MU Editor para edição do código.

Todo o processo (para o caso particular do sistema operativo Windows) pode ser revisto neste vídeo. Contudo existem versões deste mesmo editor para os sistemas operativos Linux e Mac OSX.

Nesta pasta serão partilhados todos os ficheiros usados neste tutorial.

MU Editor

O Mu Editor é um editor Python simples e funcional que suporta MicroPython para a placa ESP32 usada nesta unidade curricular. Ele também fornece ferramentas para fazer upload do firmware MicroPython para a placa.

Para realizar o processo de instalação é necessário descarregar o o ficheiro de instalação disponível em https://codewith.mu/en/download. Neste exemplo foi usado o ficheiro MuEditor-win64-1.1.1.msi.

Neste tutorial vai ser usada a versão para Windows, devendo-se então descarregar a versão para tal. Para iniciar o processo de setup arranca-se o executável, prosseguindo com as instruções do processo, indicadas a seguir:

Graphical user interface, text, application

Description automatically generated
Graphical user interface, text, application

Description automatically generated
Graphical user interface, text, application

Description automatically generated

Para arrancar com o software, vá no Menu Iniciar do Windows e digite MU Editor. Caso seja o primeiro uso, a seguinte interface aparecerá sendo iniciada a instalação de todas as dependências, como python, pip, esptool e afins e respetivas configurações:

Graphical user interface, application

Description automatically generated

No final, surgirá a seguinte interface onde deveremos escolher a opção ESP MicroPython:

Graphical user interface, text, application

Description automatically generated

Uma vez instalado, o MU Editor apresentará a interface seguinte:

Graphical user interface, text, application, Word

Description automatically generated

Driver de interface com a ESP32

Para que a comunicação com a placa em uso seja estabelecida, o driver de interface USB/Serial deve ser devidamente instalado. Primeiramente, após conectar a placa via USB, deve-se aceder ao “Gestor de Dispositivos/ Device Manager”. Caso a placa não surja como uma porta virtual COMx, e sim em “Outros dispositivos / Other Devices” (veja imagem abaixo), torna-se necessário instalar os respetivos drivers.

Graphical user interface, text, application, Word, email

Description automatically generated

No caso do Windows 10, os “CP210x Windows Drivers” estão aqui disponíveis sob a forma do ficheiro comprimido CP210x_Windows_Drivers.zip, que uma vez descomprimido faz surgir o programa CP210xVCPInstaller_x64.exe de instalação dos drivers (neste caso para a versão de 64 bits).

Após a instalação, a conexão com a placa surgirá da forma serial COMx, como está apresentado na seguinte imagem:

Graphical user interface, text, application

Description automatically generated

Firmware MicroPython

O MicroPython, não é a linguagem padrão para as placas ESP32.  Portanto, torna-se necessário descarregar o firmware que dê suporte a esta linguagem. Normalmente este processo é chamado de flash ou upload e será feito por intermédio do MU Editor. Este processo só é necessário ser realizado uma única vez, ou quando se tem interesse em atualizar o firmware para uma nova versão.

Primeiramente, deve-se descarregar a imagem do firmware no seguinte link: https://micropython.org/download/esp32/

Escolhe-se a versão mais recente e estável, que no momento de escrita desta página é a 1.18: v1.18 (2022-01-17) .bin, como seguidamente se mostra:

Graphical user interface, text, application, email

Description automatically generated

No Mu Editor, canto inferior direito, carrega-se a pequena “roda dentada”:

Em seguida, verifica-se que a placa foi identificada, como mostra o exemplo abaixo (COM4). Seleciona-se a placa ESP32 (passo 1) e o ficheiro da imagem do firmware (passo 2).  Ao fim, carrega-se em “Erase and write firmware” para fazer upload à placa.

O firmware será embebido com sucesso perante a mensagem abaixo indicada:

Graphical user interface, text, application

Description automatically generated

Criação dum projeto

Abrindo o MuEditor, é possível verificar o botão REPL. Carregando nesse botão, vai aparecer um terminal, permitindo que sejam executadas instruções Python no microcontrolador, como por exemplo o tradicional “Hello World”:

rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 188777542, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:4540
ho 0 tail 12 room 4
load:0x40078000,len:12344
ho 0 tail 12 room 4
load:0x40080400,len:4124
entry 0x40080680
MicroPython v1.18 on 2022-01-17; ESP32 module with ESP32
Type "help()" for more information.
>>> print("Hello World")
Hello World
>>> 

Para criar um projeto, primeiro define-se um diretório workspace. Em seguida, para cada projeto, cria-se um diretório com seu título. Abre-se então o MU Editor e pressiona-se “NEW” para definir o primeiro código python. O código exemplo, cuja função é piscar um LED na placa  (apresentado abaixo), é inserido no novo ficheiro:

from time import sleep
from machine import Pin

led = Pin(21, Pin.OUT)

while True:
    led.value(not led.value())
    sleep(.5)

Posteriormente, salva-se o ficheiro cujo nome deve ser “main.py” dentro do diretório do projeto criado. Desativando o botão “REPL” e carregando o botão denominado “FILES”, aparecerá no canto inferior uma subjanela com os arquivos presentes no ESP32 e no computador, respetivamente. 

Logo, para fazer o upload do programa apenas arraste-se o ficheiro do computador para a placa, conforme a figura abaixo. Em seguida, pode-se pressionar o botão “RESET” na placa ou, ativar o botão “RUN” no Mu Editor. Desta forma o primeiro código já se encontra embebido e em execução na placa, cuaj função é piscar o LED, ligado ao pino 21, a intervalos de 0.5 segundos.

Referências

Demais referências e tutoriais podem ser verificados nos seguintes links: