ESP32 com MicroPython: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Linha 21: Linha 21:
;Instalação do firmware no ESP32: <ref>https://randomnerdtutorials.com/flashing-micropython-firmware-esptool-py-esp32-esp8266/</ref>
;Instalação do firmware no ESP32: <ref>https://randomnerdtutorials.com/flashing-micropython-firmware-esptool-py-esp32-esp8266/</ref>


Download firmware para ESP32 no site: https://micropython.org/download/esp32/.
;Download firmware para ESP32: Site: https://micropython.org/download/esp32/
:Escolher a última versão: v1.18 (2022-01-17) .bin (latest)


Instalar esptool:
;Instalar esptool:
  pip install esptool
  pip install esptool


Verificar a porta USB que a placa está conectada. Pode ser verificado com a IDE do Arduíno.
;Verificar a porta USB que a placa está conectada: Pode ser verificado com a '''IDE do Arduíno'''.


Apagar o firmware anterior:
;Apagar o firmware anterior:
  esptool.py --chip esp32 --port /dev/ttyUSB0 erase_flash
  esptool.py --chip esp32 --port /dev/ttyUSB0 erase_flash
:Pressionar o botão '''boot/flash''' antes de executar o comando.
:Pressionar o botão '''boot/flash''' antes de executar o comando.


Instalar novo firmware:
;Instalar novo firmware:
  esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 460800 write_flash -z 0x1000 esp32-idf4-20200902-v1.13.bin
  esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 460800 write_flash -z 0x1000 esp32-20220117-v1.18.bin


===Programando ESP32 com Thonny===
===Programando ESP32 com Thonny===

Edição das 14h23min de 24 de fevereiro de 2022

Programando ESP32 com MicroPython

MicroPython é uma implementação do Python 3 voltada para microcontroladores. Foi desenvolvido para a placa pyboard, mas pode ser utilizado em outros microcontroladores como o ESP32. [1] [2]

Instalação do MicroPython

Instalação no Ubuntu 20.04:

sudo apt update
sudo apt install python3 python3-pip python3-tk
sudo apt install micropython
Instalação da IDE Thonny
sudo pip3 install thonny

MicroPython no ESP32

Usar o MicroPython é uma excelente maneira de tirar o máximo proveito da placa ESP32.

Instalação do firmware no ESP32
[3]
Download firmware para ESP32
Site: https://micropython.org/download/esp32/
Escolher a última versão: v1.18 (2022-01-17) .bin (latest)
Instalar esptool
pip install esptool
Verificar a porta USB que a placa está conectada
Pode ser verificado com a IDE do Arduíno.
Apagar o firmware anterior
esptool.py --chip esp32 --port /dev/ttyUSB0 erase_flash
Pressionar o botão boot/flash antes de executar o comando.
Instalar novo firmware
esptool.py --chip esp32 --port /dev/ttyUSB0 --baud 460800 write_flash -z 0x1000 esp32-20220117-v1.18.bin

Programando ESP32 com Thonny

Setar no Thonny a placa ESP32 em uso:

Ferramentas -> Opções -> Interpretador -> MicroPython (ESP32)
Teste
Acender/apagar led da placa
>>> from machine import Pin
>>> Pin(2, Pin.OUT).value(1)
>>> Pin(2, Pin.OUT).value(0)
Blink
Piscar led
from machine import Pin
from time import sleep
led = Pin(2, Pin.OUT)
while True:
  led.value(not led.value())
  sleep(0.5)
Guia de programação MicroPython para ESP32

MQTT ESP32 com MicroPython

Tutorial
[4]
Este tutorial mostra a interação entre dois ESP32.
Entretanto, pode-se utilizar apenas um ESP32 e utilizar os clientes mosquitto_pub e mosquitto_sub para interagir com o ESP32.

1) Carregar a biblioteca umqttsimple.py e salvar no dispositivo:

https://raw.githubusercontent.com/RuiSantosdotme/ESP-MicroPython/master/code/MQTT/umqttsimple.py

2) Carregar boot.py e ajustar os parâmetros de configuração do Wifi e broker e em seguida salvar no dispositivo.

3) Carregar main.py e executar.

ESP32:

  • Publica: tópico: "hello"
  • Subscreve: tópico: "notification"

Mosquitto Client:

  • Publica: tópico: "notification"
  • Subscreve: tópico: "hello"

Referências


Evandro.cantu (discussão) 09h12min de 10 de novembro de 2021 (-03)