Démarrer avec le Raspberry Pi Pico 2 W

Ari Mahpour
|  Créé: Février 28, 2025
Démarrer avec le Raspberry Pi Pico 2 W

Le Raspberry Pi a, sans doute, révolutionné la manière dont nous utilisons les ordinateurs à carte unique (SBCs), rendant des plateformes de développement puissantes et abordables accessibles aux amateurs, éducateurs et ingénieurs. Certains pourraient arguer que l'Arduino a joué un rôle tout aussi important, mais en réalité, il fonctionne à un niveau beaucoup plus bas, conçu pour des projets basés sur des microcontrôleurs plutôt que pour de l'informatique complète.

C'est là que le Raspberry Pi Pico 2 W entre en jeu. Il se situe juste entre ces deux mondes - un microcontrôleur avec une puissance sérieuse, une connectivité sans fil intégrée, et suffisamment de périphériques pour rendre un ingénieur heureux comme un poisson dans l'eau. Il ne fera pas tourner un OS Linux complet comme un Pi 5, mais avec des processeurs dual-core Cortex-M33 et RISC-V, Bluetooth 5.2, et significativement plus de RAM et de stockage flash que votre Arduino typique, il offre un niveau de flexibilité qui en fait un choix convaincant pour les systèmes embarqués, les applications IoT, et au-delà.

Dans cet article, nous allons voir comment démarrer avec le Raspberry Pi Pico 2 W et passer en revue un exemple qui met en avant les nouvelles capacités Bluetooth intégrées.

Configuration

Pour commencer, nous allons utiliser MicroPython sur le Raspberry Pi Pico 2 W. Vous devrez d'abord télécharger le chargeur de démarrage UF2 depuis le site web de Micropython. Maintenant, maintenez appuyé le bouton BOOTSEL sur l'appareil Raspberry Pi Pico 2 W tout en le branchant sur votre ordinateur (via le port/câble MicroUSB). Cela transformera votre appareil en un dispositif de stockage (tout comme une clé USB ou une carte MicroSD apparaît sur votre ordinateur). Copiez maintenant le fichier UF2 sur votre dispositif de stockage Raspberry Pi Pico 2 W, débranchez le câble USB, puis rebranchez-le. Utilisez votre dispositif de terminal série préféré tel que PuTTY ou TeraTerm pour vous connecter au port COM qui apparaît pour votre appareil, et vous devriez être accueilli par l'interpréteur de shell MicroPython :

Figure 1: MicroPython shell interpreter via serial communication over USB
Figure 1 : Interpréteur shell MicroPython via communication série sur USB

Utilisation de VSCode (plutôt que Thonny) et LED Blinker

Dans Commencer avec MicroPython et le Raspberry Pi Pico, nous avons utilisé l'IDE Thonny comme éditeur pour écrire du code et charger le dispositif Raspberry Pi Pico 2 W. Avec l'introduction de l'IA intégrée dans les éditeurs de code et les extensions à profusion, j'ai décidé de baser mon environnement sur VSCode plutôt que sur Thonny. La chose la plus importante à faire en premier (à part installer VSCode) est d'installer l'extension officielle Raspberry Pi Pico (publiée par Raspberry Pi).

Une fois l'extension installée, vous verrez une petite icône de carte Raspberry Pi Pico sur le côté gauche de votre fenêtre VSCode (juste à l'endroit où se trouvent les autres extensions). Cliquez dessus puis naviguez vers « Nouveau projet MicroPython » sous « Général ». Donnez un nom et un chemin à votre projet, puis cliquez sur « Créer ».

Get Ready for the Electronics Design Jobs You Want


Experience hands-on learning in PCB and hardware design with Altium's Student license, cloud access & comprehensive curriculum.

Figure 2: Creating a New Project
Figure 2 : Création d'un nouveau projet

Un nouvel éditeur s'ouvrira avec juste quelques fichiers et un shell MicroPython. L'un de ces fichiers est un exemple de fichier Python pour faire clignoter une LED. Ouvrez ce blink.py. À ce stade, vous voudrez vous assurer que votre dispositif Raspberry Pi Pico 2 W est branché. Au tout bas de votre éditeur VSCode, vous verrez un petit bouton de lecture. 

Figure 3: The “Run” Button in VSCode
Figure 3 : Le bouton « Exécuter » dans VSCode

Cela exécutera directement blink.py sur l'appareil (en le chargeant d'abord sur l'appareil). À ce stade, vous devriez voir un message s'afficher et votre LED clignoter :

Figure 4: Terminal Output of LED Programming Running
Figure 4 : Sortie du terminal de la programmation LED en cours d'exécution

Le bouton Exécuter se transforme en un bouton Arrêter qui arrête l'exécution du code. Une fois que vous confirmez que la LED clignote, nous sommes maintenant prêts à passer à un exemple plus sophistiqué.

Capteur de Proximité Bluetooth

Maintenant que nous avons confirmé que notre Raspberry Pi Pico 2 W fonctionne avec MicroPython, explorons l'une de ses nouvelles fonctionnalités les plus excitantes : le Bluetooth 5.2. Cet exemple transforme votre appareil Pico en un scanner de proximité Bluetooth capable de détecter les appareils Bluetooth à proximité (tels que les smartphones) et de déterminer leur force de signal (RSSI). Le script, bluetooth_scan.py, fonctionne en deux modes : le Mode Découverte, qui scanne tous les appareils à proximité et imprime leurs adresses MAC, et le Mode Suivi, où le Pico surveille en continu un appareil spécifique, allumant une LED lorsqu'il est à proximité. Ce mode de suivi est utile pour détecter en temps réel des appareils Bluetooth spécifiques à proximité, bien que certains, comme les appareils Apple, randomisent leurs adresses MAC pour des raisons de confidentialité.

Pour y parvenir, nous utilisons l'API Bluetooth de MicroPython, plus précisément bluetooth.BLE(), pour initialiser l'interface Bluetooth du Pico. Le script écoute les paquets de publicité Bluetooth Low Energy (BLE) en utilisant gap_scan(), qui scanne de manière répétée pendant une durée donnée et traite les résultats à travers un gestionnaire d'événements (bt_irq). Cette approche basée sur les événements permet au Pico de réagir instantanément lorsqu'un nouveau dispositif est détecté (pensez aux « interruptions » dans des approches plus proches du matériel). Les dispositifs sont filtrés en fonction de leur RSSI (Indicateur de Force du Signal Reçu), ce qui aide à estimer la proximité. Les dispositifs plus proches ont généralement des signaux plus forts (valeurs RSSI plus élevées, ce qui se traduit par des valeurs db moins négatives), et les dispositifs plus éloignés ont des signaux plus faibles (c'est-à-dire, une valeur db plus négative). Le Mode de Suivi compare les adresses MAC détectées à une cible prédéfinie et active la LED embarquée lorsqu'une correspondance est trouvée. Les paramètres de balayage sont soigneusement sélectionnés pour équilibrer la réactivité en temps réel avec l'efficacité du CPU, empêchant le Pico d'être submergé tout en surveillant continuellement les signaux Bluetooth.

Launch Your Career in Electronics Design


Gain the skills top employers look for. Start mastering PCB design with the Altium Student Lab today!

Pour exécuter le script, ouvrez simplement bluetooth_scan.py et cliquez sur le bouton Exécuter (comme nous l'avons vu avec l'exemple de clignotement ci-dessus) pour récupérer les adresses MAC des dispositifs à proximité. 

Figure 5: Running in “Discovery” Mode
Figure 5 : Exécution en mode « Découverte »

Ensuite, mettez à jour le script avec une adresse MAC spécifique et passez en mode Suivi pour détecter lorsque cet appareil se déplace à portée. Cela peut être trouvé dans la fonction principale en bas du script :

# Pour suivre un appareil spécifique (remplacer par l'adresse MAC découverte)
# scanner = BLEScanner(mode="track", target_mac="aa:bb:cc:dd:ee:ff")

Figure 6: Running in “Tracking” Mode
Figure 6 : Exécution en mode « Suivi »

Les paramètres de balayage ont été optimisés pour garantir une détection réactive sans bloquer d'autres opérations, ce qui en fait une excellente introduction au balayage Bluetooth et à la gestion des événements sur le Raspberry Pi Pico 2 W.

Conclusion

Le Raspberry Pi Pico 2 W est un ajout excitant au monde du développement embarqué, offrant un équilibre parfait entre la flexibilité d'un microcontrôleur et la puissance de la connectivité sans fil intégrée. Avec MicroPython, nous avons vu à quel point il est facile de démarrer, de faire clignoter une LED à l'exploitation du module Bluetooth 5.2 embarqué pour la détection de proximité en temps réel. Le scanner de proximité Bluetooth que nous avons implémenté introduit des concepts fondamentaux tels que le balayage BLE, la programmation pilotée par événements et l'analyse de la force du signal, démontrant tout ce qui peut être accompli avec un code aussi minimal.

Lay Out Your Track: Prepare for a Career in PCB Design


Develop the electronics design expertise that employers look for with Altium’s free Student Lab!

Bien que cela ne soit qu'un exemple basique, le Pico 2 W ouvre toute une nouvelle gamme de possibilités pour les applications IoT, le suivi en temps réel et l'automatisation sans fil. Que vous soyez un amateur expérimentant avec des périphériques BLE ou un ingénieur développant des systèmes embarqués de nouvelle génération, ce petit appareil se révèle être une centrale dans un petit paquet. Et ce n'est que le début : il reste encore le Wi-Fi, les optimisations de faible puissance et des interactions BLE plus avancées à explorer. Le Raspberry Pi Pico 2 W est petit, mais il a un impact sérieux.

Pour consulter le dépôt contenant tout le code pour commencer, visitez https://gitlab.com/embedded-designs/micropython-bluetooth-example.

A propos de l'auteur

A propos de l'auteur

Ari est un ingénieur doté d'une solide expérience dans la conception, la fabrication, les tests et l'intégration de systèmes électriques, mécaniques et logiciels. Il aime collaborer avec des ingénieurs chargés de la conception, la vérification et les tests afin de favoriser les synergies.

Ressources associées

Documentation technique liée

Retournez à la Page d'Accueil
Thank you, you are now subscribed to updates.
Altium Need Help?