Installation des bibliothèques (libraries) CircuitPython

Circuitpython est destiné aux microcontrôleurs où les mémoires de stockage (sram ou flash) sont faibles comparés aux ordinateurs. C’est pourquoi, vous ne trouvez que les bibliothèques les plus courantes et les plus nécessaires dans le cœur de circuitpython.

Si on veut utiliser une autre bibliothèque, il faut tout simplement la copier sur le lecteur représentant la carte : CIRCUITPY.

Dans le cas, contraire vous allez avoir une erreur de ce type :

 

Installation des dernières versions

Avoir la bonne version de circuitpython

Avant toute chose, assurez-vous d’avoir la dernière version dfe circuitpython pour votre carte :

Ou plus généralement :CircuitPython downloads

Pour installer circuitpython, vous pouvez suivre les étapes de
Installer CircuitPython sur Arduino RP2040

Les bibliothèques de CircuitPython

Attention à la version CircuitPython installée sur la carte. Par exemple si elle est en version 7.x, il faut utiliser les bibliothèques 7.x !!!

Allez à Bibliothèques circuitpython.org/libraries

Par exemple, en juin 2021, la dernière version était la 6.x et la version bêta 7.x

Contient les bibliothèques pour CircuitPython version 6.X

En juin 2021, c’est la dernière version

Contient les bibliothèques pour CircuitPython version 7.X

En juin 2021, c’est la version bêta

Ce sont les bibliothèques non compressées mpy, mais au format « lisible » python.

Pour connaitre le fonctionnement des bibliothèques

L’ensemble des exemples

Vous allez télécharger la version correspondante (en toute la dernière version stable) puis vous allez la dézipper :

À droit, vous trouvez les répertoires ou fichiers contenant les bibliothèques

Répertoire ou fichier ?

Si la bibliothèque se trouve dans un fichier, celui-ci ne se trouvera pas dans un répertoire.

Par exemple neopixel.mpy se trouve à la racine du répertoire lib :

Il faudra déposer sur CIRCUITPY ce fichier.

Par contre, la bibliothèque adafruit_ble, composé de plusieurs fichiers, se trouve dans le répertoire /lib/ adafruit_ble :

Il faudra déposer sur CIRCUITPY tout le répertoire.

Copie vers la carte

Répertoire lib sur la carte

Il est conseillé de créer un répertoire lib dans lequel vous mettrez les bibliothèques :

Cependant, il est possible de mettre les répertoires ou fichiers directement dans la racine.

Quelles bibliothèques dois-je installer ?

Soit c’est indiqué dans la documentation du programme, soit vous devez utiliser les messages d’erreurs.

Indiqué dans les documentations

Très souvent, les bibliothèques nécessaires sont indiqués :

Par tâtonnement

Vous avez un code, mais vous ne savez pas qu’elles sont les répertoires ou fichiers nécessaires.

Et bien assez simplement, vous allez tester le code et grâce aux messages d’erreurs, déduire les fichiers manquants .

Par exemple :

Indique qu’il faut copier la bibliothèque adafruit_lsm6ds sur CIRCUITPY :

Après la copie, une nouvelle erreur :

On copie également adafruit_register

Résultat final

Les deux répertoires ont été copiés dans le répertoire lib

Répertoire lib

Il est possible de mettre directement ce dont on a besoin dans la racine du lecteur :

Ce qui facilite la copie des répertoires en utilisant Envoyer vers

 

2 thoughts on “Installation des bibliothèques (libraries) CircuitPython”

  1. Merci pour le tutoriel

    J’ai découvert CircuitPython avec Thonny et un carte Raspberry Pico et quels tests basiques d’allumage de la LED interne.

    Je viens de recevoir ma carte Arduino RP2040 Connect et un écran OLED et j’ai galéré à mettre ça en route.

    Cet article est clair et m’a fait comprendre ce que j’avais fait avant et me facilitera la découverte des fonctionnalités de cette carte pour aller plus loin.

    1. Cela ma fait plaisir que vous appréciez ce tutoriel. Il y a en encore d’autres en préparation … mais les vacances débutent et j’ai un beaucoup moins le temps !!!
      Sinon j’ai prévu de faire un tuto sur un écran OLED en 2IC. Restez connecté ou abonnez-vous à mon twitter.
      Très bonnes vacances.

Répondre à Pascal Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *