Comment envoyer des alertes du Raspberry Pi Pico W à un téléphone ou une tablette
MaisonMaison > Blog > Comment envoyer des alertes du Raspberry Pi Pico W à un téléphone ou une tablette

Comment envoyer des alertes du Raspberry Pi Pico W à un téléphone ou une tablette

Dec 08, 2023

Alertes personnalisées, messages de votre Pico W vers votre appareil mobile.

Le Raspberry Pi Pico W à 8 $ est une merveilleuse petite planche. Lors de la pénurie mondiale de puces, il a comblé un trou assez important en forme de Raspberry Pi dans l'inventaire du Raspberry Pi et a fourni aux fabricants une plate-forme IoT (Internet des objets) à faible coût et facile à utiliser. Bien sûr, ce n'est pas le premier microcontrôleur connecté à Internet (nous pouvons discuter de cet honneur dans les commentaires), mais pour de nombreux fans de Raspberry Pi, c'était leur premier pas dans le monde merveilleux des microcontrôleurs.

Alors que le Raspberry Pi exécute un système d'exploitation Linux complet, le Raspberry Pi Pico W s'appuie sur un micrologiciel pour fournir une couche sur laquelle nous pouvons écrire notre code. MicroPython est l'un des langages officiellement pris en charge et a connu de nombreuses améliorations pour s'adapter au Raspberry Pi Pico. Une amélioration a été l'inclusion d'urequests (micro requêtes) qui permettent à notre Pico W d'envoyer et de recevoir des requêtes HTTP.

Dans cette procédure, nous allons utiliser urequests avec ntfy.sh, un service et une application gratuits pour les appareils Android et Apple qui peuvent intercepter les messages des appareils IoT et les afficher sur votre appareil. Nous allons l'utiliser pour envoyer des alertes à notre téléphone portable Android, alertes déclenchées par un capteur PIR (Passive Infrared) qui détecte les mouvements dans une pièce.

Ntfy.sh est un service remarquablement efficace et simple. Au lieu d'installer un module Python/MicroPython spécifique, il fonctionne avec les requêtes d'envoi de messages depuis le Raspberry Pi Pico W en utilisant un sujet spécifique (très similaire au fonctionnement de MQTT). Notre appareil Android/iOS est abonné à ce sujet et reçoit les notifications du Pico W.

Nous sommes limités à l'envoi de texte sur le Raspberry Pi Pico W, mais ce projet peut également être utilisé avec les SBC Raspberry Pi et la caméra officielle Raspberry Pi pour envoyer des images (ou toute autre forme de pièce jointe) lorsqu'un événement se produit. Dites si un oiseau se nourrit de votre mangeoire à oiseaux ou si quelqu'un se trouve dans votre jardin. Pour un exemple sur la façon d'utiliser des images avec ntfy.sh, jetez un œil à notre didacticiel sur l'utilisation des dictionnaires.

Le circuit de ce projet est incroyablement simple, volontairement. Il n'y a que trois connexions entre le capteur PIR et le Raspberry Pi Pico.

Connectez les fils entre le Pico et le capteur PIR avant de continuer.

1.Installer ntfy.shpour votre appareil Android/iOS.

2. Ouvrez l'application et cliquez sur + pour créer un nouvel abonnement.

3.Créez un nouveau sujet et cliquez sur S'abonner. Nous avons choisi d'utiliser le test. Créez un sujet qui vous est personnel. Notez également que les sujets peuvent ne pas être protégés par mot de passe, n'envoyez donc pas de données sensibles.

4.Laissez l'application ouvertesur votre appareil.

Passons maintenant au codage du Raspberry Pi Pico W.

5.Suivez ces étapespour télécharger la dernière version de MicroPython pour le Raspberry Pi Pico W. Les étapes les plus importantes consistent à télécharger et installer l'image du firmware UF2 et à configurer Thonny. Le reste est facultatif.

6.Ouvrir Thonnyetcliquez sur le bouton Arrêter pour rafraîchir la connexion. Cela garantit que Python Shell est ouvert et fonctionne correctement.

7.Créez un nouveau fichier vierge.

8.Importez le module réseau, puis importez les urequests, en le renommant en requêtes. Le module réseau permet à notre Pico W de se connecter à Internet. Urequests est une version MicroPython du module de requêtes de Python que nous utiliserons pour envoyer un message depuis le Pico W. Urequests est désormais préinstallé sur la dernière version du firmware UF2.

9.Importez la fonction de veille à partir de l'heure et épinglez depuis la machine. La fonction sleep sera utilisée pour ajouter une pause au code du projet. Le module machine contient des fonctions et des classes qui permettent à notre code de contrôler et de lire les broches GPIO.

dix.Créez un objet, pir, et utilisez-le pour créer une connexion à la broche de sortie PIR du GPIO 16.La broche doit être définie comme entrée, et nous devons tirer la broche GPIO vers le haut (3 V) afin que lorsque le PIR est déclenché, le signal tire la broche vers le bas.