Raspberry Pi : les raisons d’une success story

57

Qui aurait imaginé en 2012 le succès du micro-ordinateur Raspberry Pi ? Capacité d’extension et d’évolution, écosystème de programmation, retour sur un les raisons d’un succès.

Chronique d’une révolution

Dès sa sortie, en 2012, le succès du Raspberry Pi a été immédiat. Contre toute attente d’ailleurs, les industriels n’ayant rien vu venir. Ce succès est toutefois logique au vu de l’attente de la communauté des makers, hackers et autres bidouilleurs, qui réclamaient à corps et à cris des solutions plus évoluées que les classiques cartes à base de microcontrôleurs, comme les Arduino.

Britannique jusqu’au bout des ongles, le Raspberry Pi reprend une partie de sa dénomination du célèbre BBC Micro. Un ordinateur 8 bits qui avait à l’époque fait la joie des développeurs, mais aussi des bricoleurs de tout poil. Une offre qui a préfiguré l’arrivée de la première station ARM en 1987, l’Archimedes. C’est clairement au BBC Micro et à l’Archimedes que les créateurs du Raspberry Pi ont souhaité rendre hommage.

En visant aussi les mêmes marchés, délaissés depuis par les constructeurs : l’apprentissage de l’informatique par la programmation ; le pilotage de produits électroniques ou mécaniques.

Une gamme qui a su évoluer

Le Raspberry Pi Model B de première génération, proposé en 2012, avait comme cible un prix de 35 dollars. Pourvu d’un processeur Broadcom BCM2836 il proposait une puissance limitée : un seul cœur ARM11 à 700 MHz. Et uniquement 256 Mo de RAM. Très flexible, son GPU VideoCore IV était toutefois un atout clé. Il est toujours utilisé aujourd’hui.

Rapidement, une mouture équipée de 512 Mo de RAM a été proposée. Puis le Raspberry Pi Model A, une version plus compacte. Premier gros refresh en 2014, avec les Raspberry Pi Model A+ et B+. Et la sortie du Compute Module pour les industriels.

2015 a signé l’arrivée du Raspberry Pi 2, avec son processeur plus puissant : un Broadcom BCM2836 proposant quatre cœurs ARM Cortex-A7 à 900 MHz. Et 1 Go de RAM. 2015 sera également l’année de sortie du Raspberry Pi Zero. Une offre ultra limitée (un ARM11 monocœur à 1 GHz et 512 Mo de RAM), mais aussi ultra low cost… et très difficile à trouver.

Le Raspberry Pi 3 est pour sa part arrivé en 2016. Il adopte une puce ARM 64 bits, un Broadcom BCM2837 comprenant 4 cœurs Cortex-A53 à 1,2 GHz. Une offre solide, quoique toujours pourvue de 1 Go de RAM. À noter, la déclinaison actuelle du Raspberry Pi 2 n’est en fait qu’un Pi 3 cadencé à 900 MHz. Une offre peu intéressante dans la pratique, si ce n’est côté consommation électrique. Notez que le Compute Module a lui aussi eu droit à une déclinaison 64 bits en début d’année 2017.

Un écosystème logiciel solide

Ce qui fait la force du Raspberry Pi ce n’est plus son prix, d’autres solutions ARM étant accessibles à des tarifs bien plus avantageux. C’est son écosystème matériel, mais surtout logiciel. Le Pi a su convaincre certains éditeurs d’adapter leurs solutions aux cartes-mères ARM low cost. Comme Oracle, qui a accepté de proposer une version de Java SE. Ou Wolfram Research, avec son édition gratuite pour Pi de Mathematica.

Le support de Linux sur le Pi est également un des plus avancés qui soient. Que ce soit avec l’offre officielle, Raspbian (basée sur Debian), mais aussi avec d’autres : Ubuntu, CentOS, Debian, Fedora et openSUSE sont tous accessibles sur le Raspberry Pi, pour ne citer que quelques OS Linux. Tout comme les grands noms du monde BSD (FreeBSD, NetBSD et OpenBSD). D’autres OS non Linux sont accessibles sur le Pi, dont Windows 10 IoT Core. Et même une version modernisée du RISC OS des Archimedes. La boucle est bouclée.

La gamme 2017

Comment faire les bons choix en matière de Raspberry Pi ? Nous vous proposons un tour d’horizon des offres disponibles… et des pièges à éviter.

Raspberry Pi 3 : le best-seller

La star du moment est sans conteste le Raspberry Pi 3. Il est équipé d’un processeur Broadcom BCM2837 comprenant 4 cœurs ARM 64 bits cadencés à 1,2 GHz. Le tout est épaulé par 1 Go de RAM. La connectique comprend une sortie HDMI, quatre ports USB 2.0 et un connecteur Ethernet à 10/100 Mb/s. WiFi 802.11n et Bluetooth 4.1 sont supportés. Un port microSD permettra d’accueillir une carte comprenant OS, applications et données.

Les problèmes d’alimentation des ports USB sont maintenant résolus. Il faudra toutefois opter pour une alimentation puissante : 2,5 A sont conseillés (sur 5 V). Les possibilités d’overclock restent limitées sur le Pi 3. Notez toutefois qu’avec un refroidissement ad hoc, il fonctionnera sans soucis à 1,3 GHz. Côté GPU, Core et RAM, les 500 MHz peuvent être atteints. Enfin, le passage du lecteur SD de 50 MHz à 100 MHz boostera grandement les débits.

Dimensions : 8,6 x 5,7 cm. Prix indicatif : environ 40 euros TTC.

Raspberry Pi Zero : le rare

Avec un prix d’environ 5,5 euros TTC, le Raspberry Pi Zero a été un succès immédiat. À bien des égards, il remplace le Compute Module pour nombre d’électroniciens amateurs. Au cœur de cette offre, un processeur Broadcom BCM2835 pourvu d’un cœur ARM11 cadencé à 1 GHz et de 512 Mo de RAM. Lecteur de carte microSD, sortie microHDMI et port microUSB sont proposés. Le minimum vital.

Le Raspberry Pi Zero est difficile à trouver en stock aujourd’hui. Il sera remplacé avantageusement par le Raspberry Pi Zero W. Deux fois plus cher (environ 11 euros TTC), ce dernier propose un module WiFi 802.11n et Bluetooth 4.1. Ce qui pallie l’absence de connectique Ethernet et le faible nombre de ports USB (1 seul utilisable pour les périphériques).

Dimensions : 6,5 x 3 cm. Prix indicatifs respectifs : environ 5,5 et 11 euros TTC.

Compute Module 3 : l’industriel

Le Compute Module 3 est la grande nouveauté de cette année 2017. Techniquement, nous sommes face à un Raspberry Pi 3. Plus compact (6,7 x 3,1 cm) et sans connectique, ce module étant destiné à prendre place sur des cartes mères conçues par les industriels. Le Compute Module 3 pourra remplacer le Compute Module de première génération. Attention toutefois, car ses besoins en énergie grimpent en flèche : 700 mA, contre 200 mA pour son prédécesseur.

Deux versions du Compute Module 3 sont proposées : la première propose 4 Go de stockage eMMC. La seconde en est dépourvue. Les prix publics se fixent à environ 40 et 48 euros TTC. Un kit de développement comprenant une carte mère de support est proposé à 115 euros TTC. Bien évidemment, ces tarifs baisseront lors de la mise en production du produit fini par l’industriel.

Les modèles à éviter

Le Raspberry Pi Model A+ est toujours en vente, au prix indicatif d’environ 26 euros TTC. Une solution à éviter, car elle est moins compacte, plus chère et moins bien équipée que le Raspberry Pi Zero W. Sans proposer une connectique plus riche. Notez que nous pouvons également encore trouver quelques Raspberry Pi Model B+ en stock ici et là, à environ 34 euros TTC. À réserver à des projets existants ou à des applications non adaptées aux puces plus modernes.

Autre offre à éviter, le Raspberry Pi 2 Model B. Lequel adopte maintenant le même processeur que le Pi 3, mais cadencé à seulement 900 MHz. Et sans la connectivité sans fil. Le tout au même prix que son grand frère, soit environ 40 euros TTC. Méfiance donc pour ceux qui veulent une puce en Cortex-A7. Il leur faudra trouver un Pi 2 2015 de précédente génération.

Une extensibilité extrême

Le Raspberry Pi ce n’est pas seulement une gamme de cartes mères ARM. C’est aussi et avant tout un large écosystème matériel permettant d’en booster les fonctionnalités.

Aussi bête que cela paraisse, cela commence par les boitiers. Avec son format standardisé, changeant peu d’une génération à l’autre, le Raspberry Pi peut profiter d’une impressionnante gamme de boitiers, officiels ou non. Sachant que nombre de projets amateurs échouaient par manque de châssis pour les finaliser, nous pouvons parler ici de révolution.

L’alimentation électrique, un simple chargeur microUSB similaire à celui des smartphones et tablettes, est – là aussi – une des bonnes idées du Pi.

Caméra et écran

Autre avancée, le port CSI intégré à certains Raspberry Pi permettant de connecter des modules de capture d’images et de vidéos. Deux modèles officiels de 8 mégapixels sont proposés, dont l’un permettant de photographier en basse luminosité ou dans les infrarouges. Une aubaine pour les fans d’astronomie. Dans la pratique, d’autres modules CSI sont compatibles.

La Fondation Raspberry Pi propose un écran tactile officiel de 7 pouces pour ses machines. À près de 80 euros TTC, il reste toutefois trop cher. Même si, là encore, certains détails en font un incontournable, comme la disponibilité de boitiers adaptés.

La présence d’un port HDMI, mais aussi d’une connectique DSI/DPI, permet d’utiliser de nombreuses autres offres. De l’écran classique, jusqu’en 4K en poussant le Pi dans ses retranchements (2560 x 1440 points en conditions plus classiques sur un Pi 3), au système conçu pour les automobiles. Voire un écran piloté en composite, une sortie étant prévue à cet effet. La connectique DSI permettra de viser encore plus petit, avec des offres pouvant descendre à des écrans de 2,2 pouces.

Les entrées sorties SPI présentes sur la carte permettront également de piloter un module LCD, classique, OLED ou même à base d’encre électronique, comme le PaPiRus. Dont une version est spécifiquement conçue pour s’allier au Pi Zero.

Hat : un coup de génie

Dès le Raspberry Pi Model B+, les entrées sorties ont été standardisées. De quoi favoriser l’apparition d’un vaste écosystème d’extensions, les Hats. Un concept standardisé, mais aussi prévu pour l’extensibilité, les Hats pouvant être empilés. Toute ressemblance avec les extensions du BBC Micro n’est pas forcément fortuite.

Dans le domaine des Hats, le choix est pléthorique. De la classique carte d’expérimentation, au module LCD, en passant par les systèmes d’automatisation, les électroniciens seront ravis. Mais pas seulement. Des interfaces audio à haute résolution sont disponibles, afin de transformer le Pi en lecteur audiophile.

Autres offres accessibles, des modules bardés de capteurs, comme le Sense Hat. Mais aussi des solutions GPS, NFC ou même un micro piano. Côté loisirs, le Picade permet de fournir au Raspberry Pi la connectique nécessaire pour le transformer en borne de jeux. Un Hat PoE offre pour sa part de tirer l’alimentation électrique du Pi d’un port Ethernet.

Même le monde du calcul n’est pas oublié. Le Cluster Hat permet de piloter quatre Raspberry Pi Zero, afin de se créer un mini-cluster. Certes peu puissant, mais tout à fait adapté à du développement logiciel. Le Logi Pi 2 est pour sa part pourvu d’un composant Spartan 6 LX9 et d’un large jeu d’entrées sorties. De quoi s’essayer au monde des FPGA pour un coût modique.

Et ce n’est pas tout. Certains Hats sont maintenant spécifiquement dédiés au Raspberry Pi Zero, dont ils reprennent la petite taille.

Pixel : un OS desktop moderne et efficace

Dès ses débuts, le Raspberry Pi a misé sur l’OS Raspbian, dérivé de Debian. Une offre solide.

Le Raspberry Pi de première génération était trop peu puissant pour un usage desktop confortable. Mais ceci a bien changé avec les quatre cœurs ARM 64 bits et le gigaoctet de RAM du Pi 3. Sans compter que les logiciels dédiés à cette gamme sont en constante amélioration du point de vue des optimisations.

Tout ceci a mené à la présentation à la rentrée 2016 de Pixel, un nouvel environnement graphique, moderne et efficace.

Une sélection suffisante d’applications desktop

L’environnement de bureau proposé par Pixel est intuitif, bien pensé et – dans les grandes lignes – correctement traduit. Il ne propose que le strict nécessaire : quelques accessoires de base, un gestionnaire de fichiers efficace et une sélection de logiciels comprenant suite bureautique et navigateur web. Un large ensemble d’outils de programmation est également présent en standard. Nous aurons l’occasion d’y revenir dans le dernier volet de notre dossier.

Bon point, un serveur VNC (RealVNC) est intégré en standard et activable en quelques clics de souris. Notez toutefois que si vous désirez utiliser un serveur RDP, il vous faudra au préalable désinstaller RealVNC (via la commande « sudo apt-get purge realvnc-vnc-server »).

LibreOffice 4.3 est proposé en standard. Une suite bureautique open source complète et réactive. Attention toutefois, il vous faudra installer le package de localisation ‘french’ pour adapter l’application à la langue de Molière. Pour le reste pas de soucis à noter. La présence de Java 8 permet de disposer de l’ensemble des fonctionnalités de la suite. Et l’installation de l’extension Grammalecte se déroulera sans heurts.

L’ajout d’applications passe par un gestionnaire de paquets intégré à l’OS. Grâce à ses racines Debian, Raspbian propose des milliers de logiciels. Dans la pratique, des titres comme le lecteur multimédia VLC ont pu être installés sans problèmes. Attention toutefois au poids des dépendances liées à certains logiciels.

Un navigateur web qui fait le travail

Avec Pixel, un nouveau navigateur web est proposé. Et quel navigateur ! Il s’agit ici d’une version optimisée de Chromium. Et parfaitement configurée, avec uBlock Origin installé en standard et DuckDuckGo comme moteur de recherche.

La Fondation Raspberry Pi a toujours mis un point d’honneur à tenter d’optimiser au maximum les performances des logiciels clés de l’OS Raspbian. Et c’est le cas ici, avec des résultats intéressants. Un Raspberry Pi 3 doublera ainsi sans peine une tablette Android low cost en navigation web.

Les quatre cœurs Cortex-A53 de notre Raspberry Pi 3, surcadencés ici à 1,3 GHz, montrent la puissance de cette génération de cœurs ARM, mais aussi le travail réalisé avec Chromium, qui réalise un bon score : 1471 ms (SunSpider 1.0.2), 15.741 ms (Kraken 1.1), 2726 points (Octane 2.0) et 19 points (JetStream 1.1).

Bien entendu, il faut mettre ces résultats en perspective. Sous Windows, avec un Core i5-4570T (2 cœurs, 4 threads, 2,9 GHz, 3,6 GHz en mode turbo), les notes à nos quatre benchmarks s’envolent : 280 ms, 1171 ms, 29.632 points, 153 points. Un facteur d’environ fois 9,4 sépare donc les deux plates-formes. Un Raspberry Pi 3 sera plus proche d’un Atom 230 que d’un Core i. Mais réactivité de Raspbian et Pixel aidant, il sera souvent bien plus agréable à utiliser.

Dès ses débuts, le Raspberry Pi a misé sur l’OS Raspbian, dérivé de Debian. Une offre solide.

Le Raspberry Pi de première génération était trop peu puissant pour un usage desktop confortable. Mais ceci a bien changé avec les quatre cœurs ARM 64 bits et le gigaoctet de RAM du Pi 3. Sans compter que les logiciels dédiés à cette gamme sont en constante amélioration du point de vue des optimisations.

Tout ceci a mené à la présentation à la rentrée 2016 de Pixel, un nouvel environnement graphique, moderne et efficace.

Une sélection suffisante d’applications desktop

L’environnement de bureau proposé par Pixel est intuitif, bien pensé et – dans les grandes lignes – correctement traduit. Il ne propose que le strict nécessaire : quelques accessoires de base, un gestionnaire de fichiers efficace et une sélection de logiciels comprenant suite bureautique et navigateur web. Un large ensemble d’outils de programmation est également présent en standard. Nous aurons l’occasion d’y revenir dans le dernier volet de notre dossier.

Bon point, un serveur VNC (RealVNC) est intégré en standard et activable en quelques clics de souris. Notez toutefois que si vous désirez utiliser un serveur RDP, il vous faudra au préalable désinstaller RealVNC (via la commande « sudo apt-get purge realvnc-vnc-server »).

LibreOffice 4.3 est proposé en standard. Une suite bureautique open source complète et réactive. Attention toutefois, il vous faudra installer le package de localisation ‘french’ pour adapter l’application à la langue de Molière. Pour le reste pas de soucis à noter. La présence de Java 8 permet de disposer de l’ensemble des fonctionnalités de la suite. Et l’installation de l’extension Grammalecte se déroulera sans heurts.

L’ajout d’applications passe par un gestionnaire de paquets intégré à l’OS. Grâce à ses racines Debian, Raspbian propose des milliers de logiciels. Dans la pratique, des titres comme le lecteur multimédia VLC ont pu être installés sans problèmes. Attention toutefois au poids des dépendances liées à certains logiciels.

Un navigateur web qui fait le travail

Avec Pixel, un nouveau navigateur web est proposé. Et quel navigateur ! Il s’agit ici d’une version optimisée de Chromium. Et parfaitement configurée, avec uBlock Origin installé en standard et DuckDuckGo comme moteur de recherche.

La Fondation Raspberry Pi a toujours mis un point d’honneur à tenter d’optimiser au maximum les performances des logiciels clés de l’OS Raspbian. Et c’est le cas ici, avec des résultats intéressants. Un Raspberry Pi 3 doublera ainsi sans peine une tablette Android low cost en navigation web.

Les quatre cœurs Cortex-A53 de notre Raspberry Pi 3, surcadencés ici à 1,3 GHz, montrent la puissance de cette génération de cœurs ARM, mais aussi le travail réalisé avec Chromium, qui réalise un bon score : 1471 ms (SunSpider 1.0.2), 15.741 ms (Kraken 1.1), 2726 points (Octane 2.0) et 19 points (JetStream 1.1).

Bien entendu, il faut mettre ces résultats en perspective. Sous Windows, avec un Core i5-4570T (2 cœurs, 4 threads, 2,9 GHz, 3,6 GHz en mode turbo), les notes à nos quatre benchmarks s’envolent : 280 ms, 1171 ms, 29.632 points, 153 points. Un facteur d’environ fois 9,4 sépare donc les deux plates-formes. Un Raspberry Pi 3 sera plus proche d’un Atom 230 que d’un Core i. Mais réactivité de Raspbian et Pixel aidant, il sera souvent bien plus agréable à utiliser.

Une solution conçue avant tout pour programmer

Le menu « Programmation » est celui qui apparait en premier sous Raspbian… et qui est le plus fourni. Chose logique sachant que le Raspberry Pi se veut en premier lieu un outil dédié aux programmeurs. De tous niveaux.

La présence du Java 8 d’Oracle sur le Raspberry Pi est une aubaine. Chose d’autant plus vraie que les environnements de développement BlueJ et Greenfoot sont installés en standard. Vous retrouverez par ailleurs dans les dépôts logiciels de l’OS des outils comme Eclipse ou NetBeans. Notez également qu’IntelliJ Idea peut être installé sous Raspbian.

Pour ceux souhaitant programmer des objets connectés, l’environnement Node-RED et l’émulateur de Sense HAT seront deux atouts. C’est plutôt l’analytique qui vous intéresse ? Pas de souci ; une version gratuite de Mathematica (et du Wolfram Language) est proposée en standard. Enfin, si vous voulez coder de la musique, Sonic Pi est tout indiqué. Là encore un outil installé par défaut sous Raspbian.

Des solutions pour les développeurs amateurs

Les débutants ne sont pas oubliés, avec la présence de Scratch, qui va guider leurs premiers pas dans le monde de la programmation. Python 2 et 3 sont aussi préinstallés et forment la suite logique pour aller plus loin.

D’autres solutions comme Gambas (Basic), Lazarus (Pascal), RTB (Basic) ou Squeak (Smalltalk) sont aussi accessibles dans les dépôts logiciels de Rasbpian. Dans le secteur des environnements de développement rapide, il est difficile de ne pas parler de Xojo. Un outil payant, ne fonctionnant pas directement sur le Pi, mais pouvant générer des applications compatibles Raspbian en un tournemain.

Mais aussi pour les développeurs chevronnés

Raspbian profite à plein de son héritage Debian. Et donc de dizaines de paquets liés à des outils et langages de programmation. Pratiquement tous les secteurs sont couverts. Du classique couple C/C++ à Fortran, en passant par le C# (via Mono). Et pour saisir son code, l’excellent Geany est installé par défaut sous Raspbian.

Des extensions matérielles offriront également d’aborder de nouveaux usages : des Hats permettent en effet de mettre en place un mini-cluster ou d’expérimenter la programmation de FPGA.

Aller plus loin que Linux

Il ne faut pas oublier que Raspbian n’est pas le seul système d’exploitation accessible sur le Raspberry Pi. L’offre Windows 10 IoT Core permettra de déployer des applicatifs Windows sur cette carte mère. Et l’implémentation de .NET proposée ici par Microsoft s’avère extrêmement rapide.

RISC OS permet pour sa part un développement en quasi ‘bare metal’, avec quelques outils très intéressants, comme le BBC Basic (et son assembleur ARM intégré) ou DDE (très proche des compilateurs C/C++ officiels d’ARM). Il ne faudra donc négliger aucune piste.