
Questa pagina mostra come utilizzare MicroPython per programmare ESP8266.
Il sistema operativo qui usato è Windows 11 (ma se volete una strada più semplice: Come usare ESP8266 con MicroPython).
Andare alla pagina di download ufficiale (micropython.org/download/ESP8266_GENERIC) e scaricare l'ultima versione stabile. Di seguito si farà riferimento al file v1.28.0 (2026-04-06).bin .
Annotare il nome esatto del file.
esptool è il programma ufficiale che permette di comunicare con ESP8266 e caricare il firmware. Da PowerShell:
pip install esptool (nota 2)
Collegare ESP8266 al computer tramite USB. Occorre scoprire quale porta è utilizzata: Gestione dispositivi → Porte (COM e LPT). Vedrai qualcosa come COM3, COM4... Annotare il nome della porta.
Prima di installare MicroPython, è necessario cancellare la memoria Flash. Da terminale PowerShell, sostituendo COMx col nome esatto trovato in uno dei passi precedenti:
esptool.py --port COMx erase-flash (nota 2)

Il comando precedente potrebbe fallire con alcuni modelli di schede basati sul chip di conversione USB-seriale CH340. In questo caso, a volte, è utile seguire quanto descritto in questa pagina.
Ora installeremo su ESP8266 il file .bin scaricato in uno dei passi presedenti. Occorre usare il seguente comando, assicurandosi di inserire la porta COMx corretta e il percorso esatto del file .bin:
esptool.py --port COMx --baud 460800 write-flash --flash-size=detect 0 C:\Users\VincenzoVilla\Downloads\v1.28.0 (2026-04-06).bin (nota 2)

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
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