
Questa pagina mostra come utilizzare MicroPython per programmare ESP8266.
Il sistema operativo di riferimento è Debian Trixie, ma se per qualche strano motivo preferite usare Windows: Come usare ESP8266 con MicroPython (Windows 11)
Andare alla pagina di download ufficiale (micropython.org/download/ESP8266_GENERIC) e scaricare l'ultima versione stabile. Di seguito si farà riferimento alla versione 1.28.0 dell'aprile 2026.
Se avete fretta:
vv@vv-i7:~/wget https://micropython.org/resources/firmware/ESP8266_GENERIC-20260406-v1.28.0.bin
Annotare il nome del file.
esptool è il programma ufficiale che permette di comunicare con ESP8266 e caricare il firmware. Prima di procedere è vivamente consigliato creare un ambiente virtuale in cui installare le librerie. Da terminale:
vv@vv-i7:~$ mkdir
python
vv@vv-i7:~$ cd python/
vv@vv-i7:~$ mkdir ESP8266
vv@vv-i7:~$ cd ESP8266/
vv@vv-i7:~$ python3 -m venv .venv
vv@vv-i7:~$ source .venv/bin/activate
(.venv) vv@vv-i7:~/python/ESP8266$ pip install esptool
Collegare ESP8266 al computer tramite USB. Occorre scoprire quale porta è utilizzata, cercandola nella directory /dev/. Utile digitare ls -l /dev/tty seguito due volte dal tasto di tabulazione per il completamento automatico. Il nome è simile a ttyUSB0; nel dubbio staccare ESP8266 dalla seriale e riprovare.
Prima di installare MicroPython, è necessario cancellare la memoria Flash. Da terminale, sostituendo eventualmente col nome esatto trovato nel passo precedente:
(.venv) vv@vv-i7:~/python/ESP8266$ esptool --port /dev/ttyUSB0 erase-flash
Ora installeremo su ESP8266 il firmware scaricato in uno dei passi presedenti. Occorre usare il seguente comando, assicurandosi di inserire la porta tty corretta e il percorso esatto del file .bin:
(.venv) vv@vv-i7:~/python/ESP8266$ esptool --port /dev/ttyUSB0 --baud 460800 write-flash --flash-size=detect 0 ./ESP8266_GENERIC-20260406-v1.28.0.bin
Come verifica preliminare dell'esecuzione corretta di questo passaggio è possibile osservare la presenza di una rete WiFi MicroPython-xxxxxx, dove le x identificano gli ultimi sei caratteri del MAC address di ESP8266.
Ora MicroPython è installato su ESP8266! Per scrivere il primo codice (come far lampeggiare un LED o connetterti al Wi-Fi), il modo più semplice è usare Thonny IDE:
from machine import Pin
import time
# Configura il Pin 2 (dove è collegato il LED integrato sull'ESP8266)
led = Pin(2, Pin.OUT)
while True:
led.value(0) # Accende il LED
time.sleep(0.1) # Attende 100 ms
led.value(1) # Spegne il LED
time.sleep(1) # Attende 1 secondo
Se si desidera che il programma sia eseguito anche staccando ESP8266 dal PC occorre salvare il programma con il nome boot.py sul dispositivo.
Nel seguente esempio ESP8266 si collega come client alla rete WiFi:
import network
import time
SSID = 'IL_TUO_NOME_WIFI'
PASSWORD = 'LA_TUA_PASSWORD_WIFI'
def connect_wifi():
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
if not wlan.isconnected():
print('Connessione alla rete', SSID,
'in corso...')
wlan.connect(SSID, PASSWORD)
while not wlan.isconnected():
time.sleep(0.5)
print('.',
end='')
print('\nConnessione stabilita con successo!')
ip_address = wlan.ifconfig()[0]
print('Il tuo Indirizzo IP è:', ip_address)
connect_wifi()

L'uso dei pin per il collegamento di dispositivi esterni è spesso complicata dal fatto che la serigrafia del circuito stampato è diversa dalla numerazione dei pin dell'ESP8266 e utilizzata all'interno delle librerie Arduino.
In questa pagina è mostrata quella della scheda D1 Mini venduta da AZDelivery: Come usare ESP8266 con Arduino IDE.
Pagina creata nel maggio 2026
Ultima modifica: 16 maggio 2026