MicroPython é uma implementação leve da linguagem de programação Python, especificamente otimizada para rodar em microcontroladores e sistemas embarcados. Foi criada por Damien George em 2013 e desde então tem sido uma ferramenta popular entre entusiastas de eletrônica e profissionais devido à sua simplicidade e eficiência.
Vantagens de Utilização:
- Fácil de aprender e usar: Como é baseado em Python, é uma linguagem de alto nível que é fácil de ler e escrever, facilitando a curva de aprendizado.
- Rápido desenvolvimento: Permite desenvolvimento rápido e iterativo, com a capacidade de testar código em tempo real.
- Ampla comunidade e suporte: Possui uma comunidade ativa que contribui com bibliotecas, tutoriais e suporte.
- Portabilidade: MicroPython pode rodar em diversos tipos de microcontroladores e sistemas, proporcionando flexibilidade no desenvolvimento de projetos.
- Protótipos rápidos: Ideal para desenvolvimento rápido de protótipos e testes de conceito.
Bibliotecas
Algumas das bibliotecas mais comuns em MicroPython incluem:- machine: Biblioteca principal para interagir com hardware (GPIO, ADC, I2C, SPI, etc.).
- network: Para lidar com conectividade de rede, como Wi-Fi e Bluetooth.
- urequests: Uma versão leve do módulo requests do Python para fazer requisições HTTP.
- umqtt: Biblioteca para comunicação MQTT, útil para projetos IoT.
- uos: Para manipulação de sistema de arquivos e operações de I/O.
Instalação
Placas Suportadas
Instalando o esptool.py
Para o tutorial utilizamos o Linux Ubuntu 24.04.
Certifique-se de que o Python esteja instalado no seu sistema. Você pode verificar isso abrindo um terminal (ou prompt de comando no Windows) e digitando:
```bash
python --version
```
Se o Python não estiver instalado, você pode baixá-lo e instalá-lo a partir do site oficial do Python.
O pip é o gerenciador de pacotes do Python e deve ser instalado junto com o Python. Verifique se o pip está instalado executando:
pip --version
```
Caso o pip não estiver instalado, siga as instruções para instalá-lo aqui.
Com o pip instalado, precisaremor configurar um ambiente virtual no Python para a instalação do esptool, navegue até o diretório onde você deseja criar o ambiente virtual e utilize os seguintes comandos:
```bash
python3 -m venv micropython-esp32
```
Ative o ambiente virtual com o comando:
```bash
source micropython-esp32/bin/activate
```
No Windows, o comando seria:
```bash
myenv\Scripts\activate
```
Após a ativação, você verá o nome do ambiente virtual precedendo o prompt do terminal, indicando que o ambiente está ativo como mostra na imagem a seguir.
Com o ambiente criado podemos instalar o esptool:
```bash
pip install esptool
```
Para garantir que o esptool.py foi instalado corretamente, você pode verificar a versão instalada com o comando:
```bash
esptool.py version
```
Instalação no ESP32-C3
Acesse o site de downloads do MicroPython para todas as imagens disponíveis.
Para o ESP32-C3, baixe a imagem específica aqui. A versão utilizada será a v1.23.0 (2024-06-02).
Agora que você tem o esptool.py instalado, você pode usá-lo para apagar a memória flash e programar sua placa ESP32-C3 com o firmware do MicroPython.
Apagar a memória flash com o comando:
```bash
esptool.py --chip esp32c3 --port /dev/ttyUSB0 erase_flash
```
Após apagar a flash vamos gravar o binario do micropython, lembre de executar o comando passando o diretorio onde está localizado o download do arquivo binario:
```bash
esptool.py --chip esp32c3 --port /dev/ttyUSB0 --baud 460800 write_flash -z 0x0 ESP32_GENERIC_C3-20240602-v1.23.0.bin
```
Certifique-se de substituir /dev/ttyUSB0 pela porta correta onde sua placa ESP32 está conectada. No Windows, isso pode ser algo como COM3, COM4, etc.
Após fazer a gravação utilize o comando deactivate no seu ambiente caso queira desativa-lo.
Terminal python
Para interagir com a placa e verificar a instalação do MicroPython, você pode usar um terminal serial. Um dos programas populares para essa finalidade é o picocom
Se você preferir usar outro terminal serial, como minicom, screen ou PuTTY, certifique-se de configurar a porta serial e a taxa de baud corretamente.
Utilizando o picocom abra o terminal com o comando:
```bash
sudo picocom /dev/ttyUSB0 -b 115200
```
A imagem a seguir apresenta o resultado esperado após abrir o terminal.
import os
os.uname()
print("Hello, MicroPython!")