ESP32 è un SoC fin troppo sottovalutato, e ora scopriremo anche il perché. Gamepad, mouse e tastiere sono solo alcuni dei diversi tipi di dispositivi Human Interface Device (HID) che utilizziamo regolarmente per interagire con computer di ogni tipo. E per i progetti embedded che richiedono molti switch per funzionare, la sostituzione di una matrice di pulsanti complessa con una tastiera potrebbe ridurre notevolmente i costi e i tempi richiesti. Ecco perché, nel suo ultimo video, lo YouTuber Volos Projects spiega in dettaglio come è riuscito a collegare una tastiera di dimensioni standard a un ESP32-S3 e trasformarlo in un elaboratore di testi funzionale.
Basandosi sulla sua vasta esperienza con display integrati e visualizzazione dei dati, Volos ha selezionato un modulo schermo TFT IPS da 7 pollici che presenta un WROOM ESP32-S3 integrato, slot per schede MicroSD, controlli touch e una varietà di connettori, incluse due porte USB. Dopo aver configurato ESP32 come host USB nello sketch e assegnato diverse azioni in base alla pressione dei tasti funzione, il compito successivo di Volos è stato quello di far apparire ciascun tasto sullo schermo proprio come una GUI di modifica del testo più tradizionale.
La scheda MicroSD dello schermo basato su ESP32 è il luogo in cui i file dell’utente vengono aperti e salvati. Premendo F1 verrà creato un nuovo file di testo vuoto in cui l’utente può digitare caratteri ASCII e assegnare un nome al file con il tasto F3. Una volta che sono pronti per il salvataggio, premendo F4 si riscriverà il nuovo contenuto dell’intero file sulla scheda SD. Infine, premendo F2 si aprirà un menu di esplorazione file per selezionare le voci salvate in precedenza.
Sebbene l’S3 contenga una grande quantità di RAM rispetto alle sue dimensioni e al suo costo, la risoluzione 1024 x 600 dello schermo (614.400 pixel in totale) avrebbe superato di gran lunga questo limite se fosse stata utilizzata l’intera tavolozza dei colori a 16 bit. Per aggirare questo problema, Volos ha ridotto la risoluzione del colore a soli 4 bit sulla maggior parte dello schermo e per le aree che dovevano essere solo bianche o nere è stato richiesto solo 1 bit. Potete trovare il codice sul repository GitHub di Volos.
Link utili