MicroPython – Python su dispositivi embedded

In questo articolo iniziamo a trattare MicroPython

MicroPython

una implementazione di Python3

Python

per dispositivi embedded.

Sul sito MicroPython sono disponibili varie immagini per diversi dispositivi, tra cui i moduli esp8266 ed esp32

MicroPython Dowloads

 Iniziamo i nostri test con una scheda nodemcu esp8266 DevKit

Nodemcu Devkit

Si procede a caricare il firmware su tale scheda.

Sul sito MicroPython si fa riferimento anche al caricamento del firmware sulla scheda con le informazioni disponibili al link

Tutorial MicroPython per esp8266

Per il caricamento del firmware su utilizza sempre il tool esptool, disponibile anche sul repository Python.

Per poter procedere all’utilizzo occorre installare Python3 sulla piattaforma di sviluppo utilizzata. Di seguito i passi da seguire per Windows e Linux.

  • Windows

Per Windows occorre innanzitutto installare l’ambiente Python3, disponibile al seguente link

Python per Windows

Nel nostro caso è stata scaricata la versione 3.6.4 per sistemi a 64 bit. Si procede alla installazione del pacchetto con diritti di amministrazione

setuppythonDopo aver proceduto ad aggiungere Python nel Path si preme “Install Now”

pythonsetupendDopo aver concluso l’installazione si apre una shell dos e si controlla la versione di Python installata

pythonversionSempre dalla consolle dos si procede alla installazione di esptool con il comando

esptoolinstallationSi può procedere a questo punto all’installazione del firmware MicroPython sulla scheda Nodemcu esp8266 DevKit. Occorre, naturalmente, aver installato su Windows i drivers del chip seriale-ttl presente sul proprio modello di scheda. Ci si posiziona nella cartella in cui si è scaricato il firmware e si eseguono i comandi da shell dos

erase_flashProcedere al caricamento del firmware

firmware_flashUna volta installato il firmware connettiamoci sulla consolle Python utilizando, nel nostro caso con la scheda nodemcu DevKit, la stessa porta già sfruttata per il caricamento del firmware.

Su Windows si può utilizzare il programma putty

Putty

ed impostare la connessione seriale ad un baudrate di 115200

repl_putty

  • Linux

Per Linux utilizziamo la distribuzione Debian 9, ma la procedura può essere estesa ad altre distribuzioni. Dopo l’installazione di Debian 9, analoga a quanto eseguito per la versione 8

Debian 8

si procede alla installazione in Python3 e del tool esptool

 Aggiungere l’utenza utilizzata su Debian al gruppo dialout

Nel nostro caso, utilizzando sviluppo come utente, il comando è il seguente

Passiamo alla installazione del pacchetto Python esptool

Si può quindi procedere alla installazione del firmware in modo analogo a quanto fatto su Windows.

Si controlla su che porta seriale è disponibile la scheda (ttyUSBX)

ttylinuxSi procede quindi alle operazioni di cancellazione e caricamento del firmware

 Per  collegarsi sulla scheda si usa screen

il cui manuale è presente al link

Manuale screen

Per eseguire il detach premere

per eseguire il resume

 Per chiudere screen

Una volta collegato si ottiene il medesimo risultato di Windows

screenNel prossimo articolo incominceremo a vedere quali IDE si possono usare per creare e caricare il nostro codice Python

IDE MicroPython uPyCraft