Raspberry Pi 4, premier contact
Introduction au Raspberry Pi 4
Le Raspberry Pi 4 est disponible en une déclinaison : le modèle B.
Le Raspberry Pi 4 ressemble à une carte mère miniature réduite à sa version la plus minimaliste :
Les composants du Raspberry Pi 4 ont encore été revus à la hausse dans cette nouvelle version :
-
1 Go de mémoire vive (RAM - Random Access Memory). Le modèle B est aussi proposé avec 2 Go, 4 Go et 8 Go.
-
1x système sur puce (SoC - System on Chip) Broadcom BCM2711.
-
1x processeur (CPU - Computer Processing Unit) quad-core ARM Cortex-A72 64 bits fonctionnant à une cadence de 1,5 GHz.
-
1x carte vidéo intégrée (GPU - Graphical Processing Unit) Broadcom VideoCore IV.
-
1x carte microSD.
-
1x port Ethernet Gigabit.
-
2x ports USB 2.0.
-
2x ports USB 3.0.
-
2x sorties micro-HDMI.
-
1x sortie audio jack 3,5 mm.
-
1x lecteur de carte SD (Secure Digital).
-
40 broches GPIO.
-
1x connecteur DSI (Display Serial Interface) à 15 broches.
-
1x connecteur CSI (Camera Serial Interface) à 15 broches.
-
1x chipset WiFi 2,4GHz and 5GHz 802.11 b/g/n/ac.
-
1x chipset Bluetooth 5.0.
Voici un plan de la carte mère du Raspberry Pi 4 :
Avant de démarrer le Raspberry Pi, vous devez vous équiper d’une carte microSD (au minimum 8 Go). Sur cette carte est installée un système d’exploitation, à savoir Raspberry Pi OS.
Une fois la distribution...
Démarrage de Raspberry Pi OS
1. Historique
La distribution Raspberry Pi OS est le fruit d’un effort collaboratif dirigé par la Raspberry Pi Foundation, principalement destiné au Raspberry Pi. Pour comprendre comment Raspberry Pi OS est née, il faut remonter 20 ans en arrière en 1993 à l’université de Purdue aux États-Unis. À cette époque, le système d’exploitation Linux n’en est encore qu’à ses balbutiements, n’est que très peu populaire et requiert énormément d’efforts pour être installé sur une machine. Pour les lecteurs qui ont connu cette époque, l’archive du noyau Linux était éparpillée sur plusieurs disquettes 3.5 pouces. Une sacrée galère quand le noyau devait être mis à jour !
Un jeune étudiant du nom de Ian Murdock décide alors de créer la distribution Debian. Les principes de la distribution sont simples : proposer une distribution Linux reposant uniquement sur des logiciels libres et ne contenant aucun logiciel propriétaire. Une dizaine de développeurs rejoignent le projet et très vite, la distribution gagne en popularité et s’impose rapidement comme incontournable dans le monde libre. Ce qui fait la force de Debian pendant toutes ces années réside dans...
Comprendre l’écosystème Python : quelle version utiliser ?
Le support de Python 2 s’est officiellement terminé le 1er janvier 2020. Depuis cette date, Python 2 n’est plus mis à jour ni maintenu par les développeurs du projet Python. Même si Python 2 reste disponible dans de nombreuses distributions Linux, ce qui est le cas pour Raspberry Pi OS, utilisez Python 3 en priorité et bannissez absolument Python 2 de vos scripts. Pour rappel : les programmes mis à disposition dans ce livre ont été écrits uniquement pour Python 3.
Installer des bibliothèques Python
Une bibliothèque, ou module dans le jargon Python, est du code écrit en Python et/ou C permettant d’étendre les capacités du langage ou de regrouper un certain nombre de fonctionnalités. La bibliothèque standard Python est souvent décrite à travers un slogan largement repris par la communauté anglophone : Python comes with battery included. En effet, celle-ci est extrêmement fournie et le choix de modules est très large. Généralement, pour l’écriture de programmes simples ou un peu plus élaborés, l’utilisation de cette bibliothèque est suffisante. Cependant, comment faire si l’on souhaite aller plus loin et utiliser des bibliothèques non incluses dans la bibliothèque standard ?
Il existe deux solutions pour pallier ce problème :
-
aptitude et les APT tools fournis par Raspberry Pi OS.
-
pip, acronyme signifiant Python Installs Packages, le gestionnaire de modules écrit en Python pour Python.
1. La méthode aptitude
Avec Raspberry Pi OS, aptitude est l’outil principal permettant de gérer les paquets que l’on souhaite installer sur le Raspberry Pi, et pas seulement des modules Python. En ligne de commande, une suite d’utilitaires complète aptitude et chaque outil réalise différentes actions. Ces utilitaires permettent de télécharger des archives depuis Internet et travailler avec la base de données de paquets installée sur le Raspberry Pi, souvent aussi appelée cache dans certaines pages des manuels et tutoriels. Voici une rapide revue des commandes qu’aptitude propose :
-
aptitude : interface programmée en ncurses permettant d’interroger la base de données de paquets. Peu intuitive, elle n’est que peu conseillée aux néophytes. De plus, aptitude est assez lent sur un Raspberry Pi : une fois aptitude lancé, il construit et reconstruit l’arbre des dépendances de tous les paquets installés pour présenter cette information à travers l’interface, ce qui nécessite...
IDLE : l’éditeur de code en Python pour Python
Naturellement, pour écrire du code, il faut un éditeur de texte. L’environnement de développement Python embarque IDLE (Integrated Development and Leaning Environment), un éditeur en Python développé avec la bibliothèque graphique tkinker. Pourquoi utiliser IDLE ? Il existe en effet déjà plusieurs éditeurs de texte (Emacs, vim, Eclipse, pour n’en citer que quelques-uns). IDLE se démarque par sa simplicité, sa légèreté et surtout, son usage : il est exclusivement conçu pour le développement Python tout en bénéficiant de l’autocomplétion, de la coloration syntaxique ainsi que d’un débogueur.
Avant d’ouvrir IDLE, vous devez d’abord l’installer. Le nom du paquet IDLE dans Raspberry Pi OS est idle3 :
pi@raspberrypi:~ $ sudo apt-get install idle3
Pour ouvrir IDLE, cliquer sur Menu - Programmation - Python 3 (IDLE) :
Une fois IDLE lancé, une console apparaît. REPL signifie Read Eval Print Loop. Contrairement à une console traditionnelle, une console REPL lit le code saisi dans celle-ci (Read), interprète le code (Eval), affiche le résultat (Print) et revient à l’étape 1 (Loop).
Grâce au REPL, il est possible de programmer de manière...
Conclusion
Ce chapitre décrit les outils essentiels au développement de programmes Python, tels que aptitude, pip ou IDLE. La maîtrise de ces outils est capitale afin d’être le plus rapidement à l’aise avec l’écosystème que propose le langage.