Premiers pas avec la carte RP2040 Pico W-2023
Ludo | 18 mai 2025![]() ![]() |
En haut, le clone chinois vendu sur Aliexpress dont il est question dans cet article, et en bas, la version originale de la fondation Raspberry Pi. Les infos concernant la mise en route de cette carte sont déjà fournies sur ce forum: https://forums.raspberrypi.com/viewtopic.php?t=361532&start=1, mais peut-être noyées dans le reste de la discussion. Je fournirai ici un condensé des infos cruciales. |
Mise en garde
Le clone de la carte RP2040W utilise un module WiFi différent de celui câblé sur la version officielle. Ceci rend ce clone incompatible avec tout le code mis à disposition par la communauté de développeurs. C’est une donnée importante à prendre en compte dès maintenant car cela implique un travail supplémentaire non négligeable lorsque vous allez développer votre application sur cette carte.
De plus, comme indiqué par un membre du forum raspberrypi dans ce message, la consommation électrique de ce clone est nettement supérieure à celle de la version officielle: clone 110mA/5V, version officielle 70mA/5V. Cette surconsommation peut être réduite en mettant périodiquement le module WiFi en veille.
Dans le reste de cet article, je ferai référence au clone « Aliexpress » sous le nom RP2040.
Chargement des logiciels embarqués (firmwares)
Afin de débuter sur une base logicielle connue, pour lever tout doute sur le fonctionnement à la première mise sous tension ainsi que lors de l’utilisation finale de la carte, il est nécessaire de charger le firmware du module WiFi. Cette opération peut être effectuée de différentes façons, mais la plus pratique consiste à utiliser le microcontrôleur principal en tant qu’interface USB <-> série. Cela va permettre d’envoyer le fichier binaire dans le module WiFi par l’intermédiaire de la connectique USB présente sur la carte.
Préparation de l’interface USB <-> série
Le firmware effectuant cette fonction est à télécharger ici: Serial_port_transmission.uf2
Relier un cordon USB vers USB-C sur le PC. Ce cordon doit bien entendu disposer des liaisons de données USB. Certains cordons fournis avec des équipements disposant d’un port USB-C, dédié à la charge de leur batterie uniquement, n’ont pas de liaison de données interne entre les deux connecteurs USB.
Pour le moment, le connecteur USB-C du cordon ne doit pas être relié à la carte RP2040.
Le chargement dans le microcontrôleur s’effectue en suivant ces étapes, dans l’ordre :
- Maintenir le bouton BOOTSEL appuyé (celui qui est juste à côté du connecteur USB-C sur la carte RP2040) et connecter le cordon USB-C relié au PC ;
- La carte démarre dans un mode permettant l’accès à sa mémoire sous forme de disque USB amovible. Le bouton BOOTSEL peut être relâché;
- Ouvrir l’explorateur de fichier Windows et afficher les périphériques de stockage détectés. Un disque nommé RPI-RP2 doit être visible. Dans le cas contraire, répétez les étapes 1 et 2, et si le problème persiste, cela signifie que vous avez très probablement un cordon USB-C qui ne dispose pas des liaisons de données avec le PC. Changez de câble car cela vous empêche d’effectuer les étapes suivantes;
- Cliquer sur le disque représentant la mémoire de la carte RP2040. Vous devez voir quelque-chose de ce type:
- Copiez le fichier Serial_port_transmission.uf2 qui a été téléchargé précédemment, et collez-le sur la racine du périphérique de stockage (pas dans le répertoire System Volume Information);
- À l’issue du transfert de fichier, la carte RP2040 redémarre automatiquement en exécutant le firmware contenu dans le fichier qui vient d’être transféré.
Ouvrir le gestionnaire de périphériques: appuyer sur la touche Windows du clavier puis taper Gestionnaire de périphériques dans la barre de recherche, et cliquer sur le premier résultat proposé dans la liste.
À ce stade, il y a deux éventualités:
- Vous disposez déjà des pilotes CDC et la carte est déjà reconnue comme un port série (port COM) avec un numéro affecté automatiquement par Windows:
- Vous ne disposez pas encore des pilotes CDC, et la carte apparaît dans la liste des « Autres périphériques »:
Si vous êtes dans le premier cas, notez le numéro de port COM attribué à la carte RP2040 (COM44 dans le cas présent) et passez directement à l’étape de chargement du firmware WiFi, en ignorant ce qui suit.
Si vous continuez de lire ceci, c’est que vous êtes dans le second cas. Il vous faut donc suivre quelques étapes complémentaires pour régler le problème de driver CDC:
- Télécharger le logiciel Zadig sur le site Internet de l’éditeur: https://zadig.akeo.ie/ :
- Ouvrir le logiciel Zadig:
- Dans la zone encadrée en vert, sélectionner si besoin le périphérique qui contient le terme CDC dans son nom (cela peut varier, donc basez-vous uniquement sur ce « CDC »);
- Dans la zone encadrée en rouge, sélectionner le nom de pilote USB Serial (CDC) en faisant défiler avec les boutons pointés par la flèche bleue;
- Cliquer enfin sur le bouton Install Driver encadré en orange afin de modifier le driver utilisé par Windows pour communiquer avec la carte RP2040:
Transfert du firmware dans le module WiFi
Le firmware à charger dans le contrôleur WiFi est à télécharger ici: WIFI-ESP8285_upgrade.bin.
Afin d’éviter une erreur d’accès à ce fichier avec l’outil de mise à jour du firmware, ce fichier doit être stocké sur le disque local du PC (c:\temp\ par exemple).
Il devra être chargé dans la mémoire du module WiFi par l’intermédiaire d’un logiciel dédié, à télécharger ici: flash_download_tool.zip.
Une fois téléchargé, décompressez l’archive Zip dans le répertoire de votre choix.
Le cordon USB doit toujours être connecté côté PC, et déconnecté du connecteur USB-C de la carte RP2040.
Le chargement dans le module WiFi s’effectue en suivant ces étapes, dans l’ordre:
- Maintenir le bouton BOOT appuyé (celui qui est le plus éloigné du connecteur USB-C sur la carte RP2040) et connecter le cordon USB-C relié au PC ;
- Le microcontrôleur démarre en mode « interface USB <-> série » et le module WiFi démarre dans un mode permettant la programmation de sa mémoire. Le bouton BOOT peut être relâché;
- Ouvrir le logiciel de mise à jour du firmware, nommé flash_download_tool_3.9.8_w1.exe:
- Une fenêtre type DOS s’ouvre sans donner signe de vie pendant quelques secondes, avant que l’interface graphique apparaisse;
- Dans le menu Chip Type, sélectionner ESP8285 puis cliquer sur OK:
- Cliquer sur le bouton encadré en rouge ci-dessous, sélectionner le fichier de firmware puis cliquer sur Ouvrir:
- Assurez-vous que vous que le reste du paramétrage sur votre logiciel est identique à ce qui est visible ci-dessus;
- Sélectionnez en bas à droite le port série utilisant le numéro de port COM affecté à la carte RP2040 par Windows.
- Dès que tout est paramétré correctement, cliquez sur le bouton START tout en bas à gauche. Le téléchargement débute:
- Attendre que le téléchargement se termine. Cette étape est signalée par l’indication FINISH sur fond bleu clair:
Le module WiFi est maintenant prêt à être utilisé. Il reste à remplacer le firmware du microcontrôleur afin qu’il cesse de fonctionner comme un convertisseur USB <-> série, et permette enfin d’exécuter votre code personnalisé.
Chargement du firmware MicroPython
Dans cet exemple, je considère que votre applicatif sera codé en MicroPython. Si cela ne vous concerne pas, ne sautez pas pour autant cette étape car je fournis plus loin du code MicroPython permettant de tester le bon fonctionnement de la carte et de son module WiFi. Cela permet de valider la bonne exécution des étapes précédentes, et de vous lancer sereinement après avoir levé le doute sur le fonctionnement de cette carte.
Télécharger le firmware MicroPython à cet emplacement: https://micropython.org/download/RPI_PICO_W/ (copie locale de la dernière version en date au moment où j’écris cet article: RPI_PICO_W-20250415-v1.25.0.uf2).
Le transfert dans la carte RP2040 se fait de la même façon que précédemment:
- Déconnecter la fiche USB-C de sur la carte RP2040;
- Appuyer sur le bouton BOOTSEL;
- Reconnecter la fiche USB-C sur la carte RP2040;
- Relâcher le bouton BOOTSEL;
- Copier le fichier de firmware et le coller dans le disque amovible de la carte RP2040.
Comme le firmware diffère, Windows détecte la carte RP2040 comme étant un nouveau périphérique. Il faudra reprendre les mêmes étapes que celles décrites précédemment pour réinstaller le driver avec Zadig. Cette réinstallation ne sera à effectuer que cette fois-ci, car le firmware de la carte RP2040 ne sera plus voué à être modifié, sauf en cas de mise à jour.
Test de bon fonctionnement
Télécharger et installer si besoin l’IDE Thonny: https://thonny.org/.
Télécharger le fichier de test WiFi MicroPython: testwifi.py.
Ouvrir l’IDE Thonny, sélectionner le port série correspondant à la carte RP2040 (Board CDC) en cliquant dans l’angle en bas à droite:
Ouvrir le fichier testwifi.py puis remplacer le texte ssid et motdepasse par les paramètres de votre point d’accès WiFi. Sauver les modifications puis cliquer sur le bouton d’exécution du code :
Pour le test, j’utilise mon smartphone comme point d’accès. Ceci permet de voir rapidement si la carte RP2040 arrive à se connecter en WiFi:
![]() |
![]() |
Le test valide le bon fonctionnement de l’ensemble. Il ne reste plus qu’à se lancer dans l’écriture de votre propre code.
Documents techniques
Schéma électrique : Schema_RP2040_Pico_W-2023
Jeu de commandes AT du contrôleur WiFi: esp8266_at_instruction_set_en_v1.5.4_0
Fichiers de démo en MicroPython: DEMO