Come inviare avvisi da Raspberry Pi Pico W a un telefono o tablet
CasaCasa > Blog > Come inviare avvisi da Raspberry Pi Pico W a un telefono o tablet

Come inviare avvisi da Raspberry Pi Pico W a un telefono o tablet

Dec 08, 2023

Avvisi personalizzati, messaggi dal tuo Pico W al tuo dispositivo mobile.

Il Raspberry Pi Pico W da $ 8 è una piccola scheda meravigliosa. Durante la carenza globale di chip, ha colmato un buco piuttosto grande a forma di Raspberry Pi nell'inventario del Raspberry Pi e ha fornito ai produttori una piattaforma IoT (Internet of Things) a basso costo e facile da usare. Sicuramente non è il primo microcontrollore connesso a Internet (di questo onore possiamo parlarne nei commenti), ma per molti fan di Raspberry Pi è stato il primo passo nel meraviglioso mondo dei microcontrollori.

Mentre il Raspberry Pi esegue un sistema operativo Linux completo, il Raspberry Pi Pico W si affida al firmware per fornire un livello su cui possiamo scrivere il nostro codice. MicroPython è uno dei linguaggi ufficialmente supportati e ha visto molti miglioramenti per adattarsi al Raspberry Pi Pico. Un miglioramento è stato l'inclusione delle urequests (micro richieste) che consentono al nostro Pico W di inviare e ricevere richieste HTTP.

In questo tutorial utilizzeremo urequests insieme a ntfy.sh, un servizio e un'app gratuiti per dispositivi Android e Apple in grado di intercettare messaggi provenienti da dispositivi IoT e visualizzarli sul tuo dispositivo. Lo utilizzeremo per inviare avvisi al nostro cellulare Android, avvisi attivati ​​da un sensore PIR (infrarossi passivi) che rileva il movimento in una stanza.

Ntfy.sh è un servizio straordinariamente efficace e semplice. Invece di installare un modulo Python/MicroPython specifico, funziona con le richieste di invio di messaggi dal Raspberry Pi Pico W utilizzando un argomento specifico (molto simile a come funziona MQTT). Il nostro dispositivo Android/iOS è iscritto a questo argomento e riceve le notifiche dal Pico W.

Ci limitiamo a inviare testo sul Raspberry Pi Pico W, ma questo progetto può essere utilizzato anche con gli SBC Raspberry Pi e la fotocamera ufficiale Raspberry Pi per inviare immagini (o qualsiasi altra forma di allegato) quando si verifica un evento. Di' se un uccello si sta nutrendo dalla tua mangiatoia per uccelli o se c'è qualcuno nel tuo giardino sul retro. Per un esempio su come utilizzare le immagini con ntfy.sh, dai un'occhiata al nostro tutorial su come utilizzare i dizionari.

Il circuito per questo progetto è incredibilmente semplice, apposta. Ci sono solo tre connessioni tra il sensore PIR e il Raspberry Pi Pico.

Collega i cavi tra il Pico e il sensore PIR prima di proseguire.

1.Installa ntfy.shper il tuo dispositivo Android/iOS.

2. Apri l'app e fai clic su + per creare un nuovo abbonamento.

3.Crea un nuovo argomento e fai clic su Iscriviti. Abbiamo scelto di utilizzare th-test. Crea un argomento che sia personale per te. Tieni inoltre presente che gli argomenti potrebbero non essere protetti da password, quindi non inviare dati sensibili.

4.Lascia l'app apertasul tuo dispositivo.

Passiamo ora alla codifica del Raspberry Pi Pico W.

5.Segui questi passiper scaricare l'ultima versione di MicroPython per Raspberry Pi Pico W. I passaggi più importanti sono scaricare e installare l'immagine del firmware UF2 e configurare Thonny. Il resto è facoltativo.

6.Apri ThonnyEfare clic sul pulsante Interrompi per aggiornare la connessione. Ciò garantisce che la shell Python sia aperta e funzioni correttamente.

7.Crea un nuovo file vuoto.

8.Importa il modulo di rete e quindi importa urequests, rinominandolo in request. Il modulo di rete consente al nostro Pico W di connettersi a Internet. Urequests è una versione MicroPython del modulo delle richieste di Python che utilizzeremo per inviare un messaggio dal Pico W. Urequests è ora preinstallato sull'ultima versione del firmware UF2.

9.Importa la funzione di sospensione dall'ora e il Pin dalla macchina. La funzione di sospensione verrà utilizzata per aggiungere una pausa al codice del progetto. Il modulo macchina contiene funzioni e classi che consentono al nostro codice di controllare e leggere i pin GPIO.

10.Crea un oggetto, pir, e usalo per creare una connessione al pin di uscita PIR su GPIO 16.Il pin deve essere impostato come ingresso e dovremmo tenere il pin GPIO alto (3 V) in modo che quando il PIR viene attivato, il segnale porterà il pin basso.