Utiliser la Pi Pico depuis l’Arduino IDE
(Mis à jour le 22/02/2023)
Le support sur Arduino IDE de la carte Pi Pico ne s’est pas fait attendre. Il est désormais possible de programmer la carte Raspberry Pi Pico avec le code Arduino directement depuis l’Arduino IDE. On peut même programmer une Raspberry Pi Pico depuis une Raspberry Pi 4 . L’ajout du support est similaire à l’installation des cartes ESP32 via le gestionnaire de cartes supplémentaires via l’Arduino IDE.
Installation du logiciel Arduino IDE
Si vous n’avez toujours pas l’Arduino IDE d’installé, vous pouvez vous référer à la première partie du tutoriel pour l’ESP32. L’installation du logiciel en lui-même se fait très simplement.
Ajouter le support du RP2040 dans l’Arduino IDE
Pour installer les outils nécessaires de la Pi Pico, il faut
-
Allez dans Fichier > Préférences
-
Cliquez sur URL de gestionnaires de cartes supplémentaires et ajoutez l’URL suivante :
https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
Avertissement
Il ne faut pas enlever les urls déjà existantes si vous programmez également sur ESP8266/ESP32 depuis l’Arduino IDE.
-
Ensuite il faut aller dans le gestionnaire de cartes : Outils > Type de carte > Gestionnaire de carte . Descendez tout en bas jusqu’à trouver Raspberry Pi Pico/RP2040 et cliquer sur installer. L’installation des outils de développement se fait automatiquement, il suffit d’attendre.
Note
Le téléchargement peut prendre un peu de temps en fonction de votre connexion internet.
Lorsque l’installation est finie, vous pouvez changer le type de carte en choisissant la carte Raspberry Pi Pico.
Astuce
Si vous avez une carte uPesy RP2040 DevKit, vous pouvez directement la sélectionner dans le menu déroulant.
Téléverser un programme sur la Pi Pico
L’upload d’un programme sur la Pi Pico est différent de celui des cartes Arduino et ESP32 : Pour que la Pi Pico reçoive un nouveau programme, il faut qu’elle soit en mode “USB” . Si vous avez MicroPython d’installé sur la Pi Pico, il faudra mettre manuellement la carte en mode BOOT
en maintenant appuyer le bouton BOOT
/BOOTSEL
lors du branchement à l’ordinateur. On ne peut pas directement téléverser un programme en ayant MicroPython qui tourne sur la Pi Pico.
Avertissement
Pensez à bien sauvegarder tous les éventuels scripts Python présents dans le gestionnaire de fichiers de MicroPython avant de mettre la Raspberry Pi Pico en mode USB. En effet, toute la mémoire flash sera écrasée par le nouveau programme.
Une fois que vous avez mis manuellement la Pi Pico en mode USB, vous pouvez vérifier que le téléversement d’un sketch Arduino fonctionne. Vous pouvez prendre l’exemple du code blink accessible dans Fichiers > Exemples > Basics > Blink qui fait clignoter la LED de la carte.
Vous pouvez aussi directement copier le code ci-dessous :
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level)
delay(750); // wait for a second
digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW
delay(750); // wait for a second
}
Il suffit ensuite de cliquer sur la flèche habituelle pour compiler puis téléverser le programme. La première compilation prend un peu de temps mais les suivantes seront plus rapides.
Lors des futurs téléversements, la Pi Pico se mettra directement en mode USB, il ne serra donc plus nécessaire d’appuyer sur le bouton BOOTSEL.
En fait, lors de chaque téléversement, il se passe les choses suivantes :
La liaison série via un port COM est arrêtée.
La carte Pi Pico se met en mode USB : elle se comporte comme une mini-clé USB.
La carte Pi Pico reçoit son nouveau programme compilé avec l’extension UF2 : il est copié dans sa mémoire.
La Pi Pico redémarre en exécutant le nouveau programme et active de nouveau sa liaison série.
Note
La seule chose ennuyante est que l’on entend le bruit de détection caractéristique de Windows lors de chaque téléversement.
Bravo, vous pouvez dorénavant utiliser le code Arduino pour programmer la Pi Pico. Vous pouvez donc rependre vos programmes faits pour une Arduino et éventuellement l’adapter un peu pour la Pico.
Note
Puisque le portage de la Pi Pico avec le code est récent, il se peut que toutes les librairies ne soient pas encore compatibles avec la Pico.