Rant : Raspberry Pi 4

  1. Le système d'exploitation
  2. Le matériel
  3. La concurrence
  4. Relativisons...

Je suis un utilisateur de Raspberry Pi depuis longtemps. Je possède au moins un exemplaire de chaque itération "grand public", à l'exception du 2. Chaque itération apporte son lot de nouveautés, d'espérences, et de déceptions. Voici un tour d'horizon de ce qui me frustre avec ces petites machines.

Le système d'exploitation

Mise à jour du 4 février 2022

Ça y est, le système d'exploitation Raspberry Pi OS 64 bits est officialisé.

Pour commencer, il n'existe pas de version 64bits stable du système d'exploitation "officiel", Raspberry Pi OS. Une version "bêta" est en développement depuis au moins le 28 mai 2020. Je trouve ça plutôt embêtant parce que :

  • Le Raspberry Pi 3 dispose d'un processeur 64bits depuis 2016

L'architecture ARM 64bits existe depuis 2011. Toutefois, l'absence de système 64bits officiellement supporté par la fondation Raspberry Pi à l'heure actuelle n'est pas entièrement de sa faute : l'architecture ARMv8 n'est disponible "que" depuis 2019 sous Debian (distribution sur laquelle repose Raspberry Pi OS).

  • De nombreuses distributions tierces offrent une version 64bits pour le Raspberry Pi 3

C'est le cas de nombreuses distributions GNU-Linux, telles que Ubuntu, Alpine Linux, mais aussi FreeBSD. Dès lors, on se demande pourquoi Raspberry Pi OS ne dispose pas déjà d'une version 64bits.

Je regrette toutefois que la plupart des systèmes d'exploitation "tiers" ne supportent pas officiellement le Raspberry Pi 4. Le problème, c'est que tout le monde annonce un support à 100% du Pi 3 aujourd'hui. Quand ils annonceront un support à 100% du Pi 4, je m'attends à ce qu'un hypothétique Pi 5 sorte sur le marché. Il y a un décalage assez désagréable entre la vente du matériel et la mise à disposition du logiciel.

Ce décalage est d'autant plus problématique qu'il est sans doute la source des problèmes assez graves qui ont miné les débuts du Pi 4, notamment en ce qui concerne l'USB-C, et d'autres manquements, en particulier du boot sur USB.

  • Le Raspberry Pi 4 offre jusqu'à 8Go de mémoire vive, dont ne peuvent pleinement bénéficier que des applications 64bits
  • Il y a un gain de performance significatif à passer sur un système 64bits, même sans disposer de 8Go de mémoire

Pour une utilisation "desktop", le gain est appréciable notamment dans la navigation web. Pour une utilisation "serveur", c'est le réseau et la gestion mémoire qui bénéficient du passage à 64bits. Je crois d'ailleurs me souvenir (sans pouvoir retrouver la source, malheureusement), que la fondation Raspberry Pi avait freiné le développement de la version 64bits, prétextant que le gain de performance n'était pas justifié, ce qui n'avait pas manqué de me rappeler la légende selon laquelle Bill Gates aurait affirmé que "640Ko était une quantité de mémoire suffisante"...

  • Les choix logiciels tendancieux

Dernière critique en date : l'inclusion par défaut - et sans prévenir les utilisateurs - d'un dépôt Microsoft pour VSCode, surgie de nulle part. Problème éthique, problème de télémétrie, même partielle, et puis problème de confiance : comment faire encore confiance à Raspberry Pi OS ? Comment ne pas voir un rapprochement de Microsoft qui a déjà officialisé il y a longtemps un système de son cru pour cette plateforme ? Comment ne pas envisager que Microsoft ait des vues sur cette petite carte, et qu'il va finir par l'avaler ?

Le matériel

  • Supports de stockage

Le support de stockage de prédilection du Raspberry Pi est la carte micro-SD, qui n'est pas réputé être le plus fiable, notamment à cause de la durée de vie des cellules mémoire, mais aussi à cause de la fragilité et de la sensibilité du support. Je n'espère plus faire tourner un serveur 24h/24 sur un Raspberry Pi 4 et carte SD plus d'un an (et je n'achète que du SanDisk).

Bien que j'apprécie la possibilité de démarrer depuis le réseau, je trouve que c'est très complexe à mettre en oeuvre, et peu pratique à l'usage. C'est un plus indéniable dans une utilisation "industrielle" du Pi, mais dans un cadre privé, c'est trop incommode. Notez que cette remarque n'est pas spécifique au Raspberry Pi mais au network boot en général.

Enfin, il est possible de démarrer depuis un périphérique USB. Par contre, c'est une fonctionnalité que j'estime avoir attendu trop longtemps (elle était disponible sur les versions précédentes du Pi, mais les changements matériels apportés au Pi 4 ont imposé des changements au niveau logiciel de la procédure de démarrage), et n'est toujours pas universelle, en particulier en ce qui concerne les SSD externes. Certains boitiers sont reconnus et permettent le boot par USB, d'autres non, et cela dépend parfois du système d'exploitation : Raspberry Pi OS peut démarrer depuis un boitier spécifique, mais FreeBSD ou même Home Assistant OS ne le peut pas. Et je ne parle pas du support de TRIM qui nécessite parfois une configuration spécifique.

  • Wifi

J'ai voulu tester le Raspberry Pi 4 en tant que point d'accès sans-fil pour un réseau hétérogène. À vrai dire, c'est pour cette raison précise que je les avais acheté initialement. Le but était de remplacer mes deux Synology RT1900ac. Idéalement, je voulais faire du mesh, mais je me serai contenté de l'auto-sélection 2.4/5GHz, c'est-à-dire pouvoir configurer un SSID unique accessible sur les deux bandes de fréquence, mais aussi en 802.11g/n/ac, comme c'est le cas sur mes actuels MR2200ac.

Malheureusement, je n'ai pas réussi à le faire, ni via OpenWRT, ni sur Raspberry Pi OS. Je ne sais pas si c'est une limitation matérielle ou logicielle, et je ne me suis pas posé la question depuis que j'ai opté pour les MR2200ac.

  • Coût de possession

On vante le bas prix du Raspberry Pi, mais je trouve le coût total de possession très élevé comparativement à ses performances. Un rapport qui tend à diminuer avec la puissance offerte par le Pi 4, encore que son form-factor ne permet pas de réutiliser les anciens boitiers, jusque là compatibles avec toutes les versions B de la carte. En plus, au-delà du form-factor, il faut aussi s'accomoder d'une hausse de température en fonctionnement, et donc opter pour un boitier adéquat, plus cher à cause de la présence d'un radiateur, voire d'un ventilateur. En comptant alors le Pi, le boitier, la carte SD, l'alimentation USB-C officielle pour éviter les problèmes de compatibilité, et un câble micro-HDMI (spécificité du Pi 4, les versions antérieures utilisaient un connecteur HDMI classique), on arrive facilement aux 80 euros pour une carte donnée à moins de 30 euros. Le geek excité par la découverte puis la possession de l'objet fait alors les comptes, et réalise trop tard que ce n'est pas si intéressant au final...

  • Pilotes non-libres

Broadcom n'offre pas de pilotes ou de firmware libres pour ses composants matériels, en particulier le GPU et le réseau. J'avoue que depuis mon premier Pi 1B, j'espère voir arriver une version qui puisse tourner avec 100% de Logiciels Libres...

La concurrence

J'ai conscience des difficultés que peut représenter le développement d'une telle machine, et son support logiciel. Ce qui m'embête, c'est qu'il existe une concurrence, qui dispose parfois de très nets avantages au niveau matériel. C'est notamment le cas de ODROID, qui fait de très bons produits dans une gamme variée, y compris à base de CPU x86. Et je ne parle pas de la quantité impressionnante de clones, tels que le Banana Pi, l'Orange Pi, etc.

De mon point de vue, ces solutions ne disposent pas de la même force "marketing" que la fondation Raspberry Pi, soit que ce soit pour des raisons financières ou culturelles. En effet, la plupart des concurrents du Raspberry Pi sont d'origine asiatique, tandis que le Pi est d'origine européenne (britannique pour être précis). Et c'est heureux pour son fabriquant, parce que je n'ai pas l'impression que le Pi dispose d'arguments suffisants pour être plus apprécié que ses concurrents.

Relativisons...

En soi, ce n'est pas une mauvaise machine, loin de là. Le CPU est très bon, la quantité de mémoire disponible est appréciable, et en outre, le Pi 4 a fait un formidable bond en avant en ce qui concerne le réseau. Il y a des points à améliorer, c'est certain, et cela signifie que d'autres versions devraient voir le jour. Mais il faudrait que chaque nouvelle version matérielle s'accompagne d'un meilleur support logiciel au même moment, au moins en ce qui concerne le système d'exploitation officiel, et certains choix techniques devraient être reconsidérés : je préfèrerai par exemple un maximum de 4Go de mémoire vive, ce qui me semble amplement suffisant sur une telle machine, et utiliser l'espace physique ainsi gagné sur la carte pour y placer au moins 8Go de mémoire flash, avec des performances et une fiabilité accrue. J'aimerais aussi avoir le choix dans les sorties vidéo : deux prises micro-HDMI ne me semble être qu'une démonstration technique plutôt que le témoin d'un besoin réel. On pourrait très bien imaginer une version avec ces deux prises pour un usage desktop, voire une unique prise Display Port, et une version avec une seule prise HDMI au format classique pour un usage plus occasionel de la sortie vidéo (comme sur un serveur par exemple).

Bref, je rant contre le Pi, mais je continue de l'utiliser, et j'achèterai surement la prochaine itération...