PlatformIO su VS Code è L’ambiente di sviluppo che ho scelto per il mio lavoro quotidiano.
In realtà, senza neanche accorgermene, mi sono ritrovato quasi a non uscire più da Visual Studio Code talmente sono le cose che mi permette di fare. Se non fosse per il browser e per un po’ di musica che ascolto per concentrarmi e rilassarmi, potrei quasi considerarlo il mio sistema operativo.
Ho scoperto Platform.io e VSCode, probabilmente come molti di voi, cercando qualche altrernativa ad Arduino IDE un paio di anni fa.
Sono un tipo “vecchio stampo”, da quando ho iniziato nel 1996 ho scritto per anni html, php e javascript con il blocconote di windows, poi con EditPlus, poi con Notepad++ (che uso ancora oggi), quindi non è mai stato un problema per me l’interfaccia spartana di Arduino IDE. Quello che cercavo era una gestione migliore dei file per i miei progetti, che stavano diventando sempre giù complessi. Appena ho installato VSCode è stato amore a prima vista, il mio problema è stato abbondantemente risolto!
Ma subito mi sono reso conto di essere entrato in un altro mondo: l’auto completamento del codice, la syntax highlighting, la navigazione ipertestuale tra funzioni e classi, la gestione delle librerie, lo rendono lo strumento perfetto per la programmazione di microcontrollers.
Più di tutto però, la cosa che sto imparando ad amare davvero di questo santo software (e tanto ne ho ancora da scoprire) è la gestione degli environments tramite il file di configurazione dei progetti platformio.ini. Agli environment ho dedicato un articolo a parte.
Platform.io però è solo una delle innumerevoli estensioni di VSCode ed oggi, grazie da alcune di esse delle quali parleremo più avanti, mi ritrovo ad utilizzarlo praticamente per tutto: per quel poco di php che ancora scrivo, nodejs/javascript, typescript, yaml, come git client, ed anche come sftp browser e ssh client per le mie macchine Linux.
Suggerimenti per il pre e post installazione
Non ci sono particolari accorgimenti per avere l’ambiente di sviluppo pronto in pochi minuti, ma suggerisco di installare i software necessari in questo ordine, per evitare sbattimenti in seguito. Questi passaggi si riferiscono ad una installazione su Windows 10/11, ma su altri sistemi non dovrebbe differire di molto.
GIT Bash
Il primo tassello lo mettiamo installando il client GIT dal sito ufficiale.
GIT è uno strumento fondamentale per lavorare con il codice sorgente di qualsiasi liguaggio, e merita un post tutto suo.
Qui mi limito a dire che tutti i progetti di esempio che trovi su ZioTester Lab sono hostati su GitHub ed è semplicissimo interaggire con essi per mezzo di git, che si andrà ad integrare perfettamente in VS Code.
NB: Accettare tranquillamente tutte le impostazioni di default che vengono proposte in fase di installazione.
Python
PlatForm.IO è un’estensione di VS Code scritta in Python. Conviene pertanto installarlo prima.
Python lo trovi sul sito ufficiale python.org/downloads
E’ inoltre FONDAMENTALE aggiungere alla variabile d’ambiente PATH di windows il percorso che permetterà a VS Code di trovarlo. In fase di installazione, selezionare l’opzione come da immagine seguente:
Visual Studio Code
Qui c’è poco da dire, basta scaricare VS Code ed installarlo, ma facendo attenzione a selezionare le opzioni come da immagine seguente.
Una funzionalità molto utile e che consiglio a tutti di attivare appena installato è la sincronizzazione online delle proprie preferenze e, soprattutto, delle estensioni. in questo è possibile avere un ambiente di sviluppo identico su più postazioni. Io utilizzo VSCode in ufficio, sul PC di casa, sul notebook. Con il sync attivo, le estensioni che installo in ufficio me le ritrovo anche a casa e viceversa. Se formatto il pc, mi basta reinserire le credenziali di sync ed avere di nuovo tutto pronto come prima!
Il Settings Sync è attivabile dal menu:
File -> Preferences -> Turn on Settings Sync
E’ possibile scegliere se effettuare il login con account Microsoft oppure GitHub. Io per ovvie ragioni utilizzo GitHub.
PS: Io di solito imposto in lingua inglese i software “tecnici” che utilizzo, come nel caso di VSCode. Questo perchè mi semplifica le ricerche sul web in caso di necessità. Effettuare ricerche in inglese in questo ambito è fondamentale per avere accesso ad una quantità di materiale enormemente superiore al solo italiano.
Platform.IO
Come già detto, Platform.IO è un estensione di VS Code. E’ sufficiente accedere al menu delle estensioni (pulsantino sulla sinistra, vedi immagine), cercare “platformio” ed installarlo.
USB to UART Drivers
L’ESP32 per poter comunicare con il nostro computer tramite porta USB utilizza dei drivers che spesso Windows riconosce ed installa in automatico alla prima connessione. Ma in alcuni casi è necessario installarli manualmente.
Ma come facciamo a sapere se la nostra board è stata correttamente riconosciuta da Windows? La strada più semplice è vedere dalla PIO Home sotto la voce Devices se la board è presente. Della PIO Home ne abbiamo parlato in un altro articolo.
Se tra i devices connessi sulla porta seriale troviamo un dispositivo USB to UART Bridge l’ESP32 è stato riconosciuto ed è pronto per essere utilizzato. Altrimenti è necessario installare manualmente i drivers. Per fare ciò, rechiamoci nella gestione dei dispositivi di windows ed individuiamo il modello di dispositivo non riconosciuto contrassegnato con un punto esclamativo.
Uno dei dispositivi più comuni utilizzati sulle board ESP32 ma che non è riconosciuto da windows è il CP210x, per il quale è possibile scaricare i drivers dal sito Silicon Labs.
Ad ogni modo, è semplice cercare con google il driver adatto una volta individuato il tipo di hardware della propria board.
Conclusione
A questo punto, siamo pronti per realizzare il nostro primo progetto con ESP32!