MicroPython avec ESP8266 ou ESP32

Les cartes ESP8266 et ESP32 sont compatibles avec l’environnement Arduino, mais peuvent également être programmées en MicroPython, un portage de Python pour les Microcontrôleurs.

 

ESP32 + écran Oled

Il existe plusieurs IDE permettant de programmer un ESP en micropython :

Thonny

Voir tuto : https://microcontrollerslab.com/getting-started-thonny-micropython-ide-esp32-esp8266/

 

uPyCraft

Installation

Télécharger l’IDE uPyCraft

Flasher le firmware MicroPython

Il faut commencer par charger le firmware MicroPython dans l’ESP :

Choisir le type de carte (ici ESP32)

Choisir le port sur lequel est connecté la carte. Appuyer sur le bouton boot de la carte et relâcher le après avoir cliqué sur le port COM.

 

Si le firmware MicroPython n’est pas installé sur la carte, uPyCraft se propose de l’installer.

Choisir l’adresse de base de la carte (cela dépend des cartes !).

On peut laisser uPyCraft télécharger le firmware ou choisir un fichier télécharger sur le site officiel : http://micropython.org/download

Il faut effacer la mémoire flash si on veut effacer complètement la mémoire (pas utile donc pour une mise à jour du firmware si on veut conserver les fichiers enregistrés dans la mémoire flash).

Sur les cartes ESP32 il faut appuyer sur le bouton boot pour pouvoir flasher le firmware.

Programmation avec uPyCraft

Créer un nouveau document

Taper votre code

import machine, ssd1306
from time import sleep_ms
import network 
i2c = machine.I2C(scl=machine.Pin(4), sda=machine.Pin(5))
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
oled.fill(0)
oled.text('Wifi hors ligne',10,10)
oled.show()
station = network.WLAN(network.STA_IF)
station.active(True)
station.connect("SSID", "cleWPA") 
while not station.isconnected():     
    sleep_ms(100)

wifi=station.ifconfig() 
oled = ssd1306.SSD1306_I2C(128, 64, i2c) 
oled.fill(0) 
oled.text('MicroPython', 10, 10) 
oled.text('sur ESP32', 10, 30) 
oled.show() 
sleep_ms(10000) 
oled.fill(0) 
oled.text('IP : ', 10, 10) 
oled.text(wifi[0], 10, 30) 
oled.show() 
station.disconnect()

Sauvegarder et lancer le code sur la cible

 

Références

Guide de référence pour ESP32 : http://docs.micropython.org/en/latest/esp32/quickref.html

Guide de référence pour ESP8266 : http://docs.micropython.org/en/latest/esp8266/quickref.html

Vous aimerez aussi...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.