Il nostro verdetto
Aggiungere il Wi-Fi al tuo Pico ora è molto più semplice, il software ha bisogno di un po’ di lavoro ma l’hardware è solido.
Per
+ Semplice da collegare
+ Compatto
+ Supporto per CircuitPython
Contro
– La libreria MicroPython ha bisogno di un piccolo lavoro
– Blocca l’accesso a tutti i pin GPIO
Al Raspberry Pi Pico mancano due cose chiave. Il primo è un pulsante di ripristino, facilmente riparabile con un hack fai-da-te oppure puoi acquistare qualcosa di più permanente. Il secondo sono le comunicazioni wireless, ovvero Wi-Fi e Bluetooth. Pimoroni’s Pico Wireless è un pacchetto aggiuntivo da $ 17 (£ 12) che funziona come un HAT o uno scudo e fornisce Wi-Fi e un lettore di schede Micro SD tramite l’interfaccia SPI.
Pico Wireless Pack
Prezzo diretto £ 12 ($ 17 USD)
L’aggiunta di W-iFi a un Pico non è troppo difficile, Adafruit lo ha già dimostrato tramite AirLift FeatherWing con ESP32 che funziona con il Pico e la scheda Feather RP2040 di Adafruit. Maker Pi Pico di Cytron supporta anche ESP8266. Ma l’aggiunta di un Wi-Fi compatto e facile da usare è ancora il Santo Graal per gli utenti di Pico e Pico Wireless di Pimoroni potrebbe vedere la fine della nostra ricerca.
Progettazione e Utilizzo del Pimoroni Pico Wireless
Il Pico Wireless è un pacchetto, progettato per essere collegato a tutti i pin GPIO di un Raspberry Pi Pico (e Pico Lipo di Pimoroni). Non utilizza tutti i pin GPIO, ma impedisce l’accesso. Poiché è progettato come un “pacchetto”, si adatta perfettamente all’ingombro del Raspberry Pi Pico e quando connesso abbiamo una piattaforma di progetto piuttosto compatta.
L’ESP32-WROOM-32E integrato è esso stesso un potente microcontrollore, ma per il Pico Wireless è retrocesso al servizio di co-processore più o meno allo stesso modo dell’AirLift FeatherWing di Adafruit. L’ESP32 è dotato di Wi-Fi e Bluetooth, ma in questa configurazione è disponibile solo il Wi-Fi, ma gli hacker abili sbloccheranno sicuramente funzionalità extra.
Se devi utilizzare alcuni pin GPIO, avrai bisogno di un breakout, come Pico Omnibus, ma dovrai assicurarti di non avere pin in conflitto sui dispositivi collegati. L’alimentazione per Pico Wireless è fornita dal GPIO di Raspberry Pi Pico, che costituisce un mezzo semplice e pratico per alimentare e programmare le schede.
Lo slot per schede microSD integrato (vedi le migliori schede microSD) è un meccanismo push-push pronto per sparare la tua scheda micro SD in tutta la stanza. Un singolo pulsante (A) è un mezzo utile per l’input di base ed è collegato a GPIO 16. L’unica uscita è un LED RGB, ancora una volta un’utile aggiunta per gli avvisi di base / la gestione degli errori. L’ESP32 e il lettore di schede micro SD possono essere disabilitati tagliando le tracce sul lato inferiore della scheda; perché vorresti farlo non lo sappiamo, ma il processo può essere invertito saldando un ponte tra i binari.
L’hardware non è niente senza software e Pico Wireless supporta C++ e Pimoroni ha il proprio firmware MicroPython che include un modulo “picowireless” sviluppato per l’uso con la scheda. Abbiamo testato questa opzione tramite gli script di esempio e, sebbene funzionassero bene, erano terribilmente dettagliati e facevano affidamento sul fatto che l’utente avesse una comprensione di come funziona la rete.
Fino a quando non viene scritta una libreria astratta o non impariamo il networking, il mezzo migliore per utilizzare Pico Wireless è il software CircuitPython di Adafruit. Abbiamo utilizzato lo stesso script che ha alimentato il nostro progetto Wi-Fi Raspberry Pi Pico e abbiamo dovuto modificare solo poche righe per dire al nostro Pico dove era collegato ESP32 e copiare alcune librerie sul Pico. Eravamo online in pochi istanti e ricevevamo dati meteorologici da un’API online. Abbiamo adattato il codice con una libreria aggiuntiva che ha abilitato il lettore di schede micro SD integrato. Inserendo una scheda formattata FAT32 vuota e scrivendo alcune righe di CircuitPython, abbiamo creato rapidamente un nuovo file che conteneva un registro dei dati JSON restituiti dall’API meteo. I dati possono anche essere letti da SD utilizzando CircuitPython e utilizzati nei tuoi progetti. Il LED RGB è collegato all’ESP32 tramite tre pin (Rosso = 25, Verde = 26, Blu = 27) e per usarlo dobbiamo usare esp.set_analog_write(). Ad esempio ecco le linee per impostare il LED su rosso.
Possiamo usare valori compresi tra 0 e 1 per controllare il colore del LED RGB.
Infine abbiamo testato il pulsante, collegato a GPIO 12. Abbiamo portato GPIO 12 in alto e, quando premuto, il pulsante collega il pin a GND, abbassando effettivamente il pin e attivando un evento nel nostro codice.
Casi d’uso per Pimoroni Pico Wireless
Il Wi-Fi sul Raspberry Pi Pico apre un mondo completamente nuovo di applicazioni Internet of Things (IoT). Pico Wireless consente al nostro umile Raspberry Pico di comunicare con i dispositivi utilizzando protocolli di rete tipici e altri come MQTT. La libreria CircuitPython supporta HTTP di base, creando punti di accesso e socket. Nella nostra demo controlliamo la risposta HTTP dall’API e stampiamo il valore sul REPL, utile per il debug dei problemi di connessione.
Pico Wireless è ideale per l’aggiunta a un progetto di monitoraggio dei dati, la raccolta di dati dai sensori, la memorizzazione dei dati sulla scheda micro SD e la trasmissione dei dati a una macchina remota. Se hai le competenze, allora la robotica su Internet è possibile usando qualcosa come Anvil o Flask su un’altra macchina come mezzo per comunicare con il Pico.
Linea di fondo
Come pacchetto, Pico Wireless è semplicissimo da collegare al tuo Pico ma perdi la possibilità di collegare altri componenti. Questo problema può essere mitigato utilizzando una scheda di breakout come Pico Omnibus o con qualche saldatura intelligente. Nonostante questo, Pico Wireless è un ottimo kit. Una volta che il modulo MicroPython avrà superato alcuni mesi di feedback e miglioramenti, sarà molto più facile da usare. Fino ad allora, la soluzione migliore è utilizzare CircuitPython.