Outils pour utilisateurs

Outils du site


raspi3

Raspberry Pi 3 B

Logo de Raspberry

Je monte mon Raspberry Pi dans le but d'en faire une console de jeu rétro (avec RecalBox) et un média-center (pour lire des vidéos avec Kodi qui est inclus dans RecalBox).

Quelques faits sur le Raspberry:

  • C'est un mini-ordinateur de la taille d'une carte de crédit.
  • Le Raspberry Pi a été créé par une association caritative.
  • Le Raspberry Pi s'est vendu à plus de 19 millions d'exemplaires 1).
  • Tous les bénéfices sont destinés à des projets éducatifs.

Le processeur est loin d'être aussi puissant que celui d'un ordinateur de bureau, mais il est assez puissant pour faire tourner Linux avec LibreOffice et un navigateur. Ses avantages:

  • Petit format, faible encombrement (on peut même le coller derrière l'écran pour libérer le bureau !)
  • Faible coût.
  • Faible consommation électrique.
  • Parfaitement silencieux (ne nécessite pas de ventilation).
  • Fortement bidouillable.

Matériel

J'ai acheté mon matériel chez Kubii (revendeur agréé Raspberry):

  • Un Raspberry Pi 3 Modèle B avec Carte 16GO NOOBS préinstallée ( 49,90€, réf. 2525227 )
    • Notez bien que c'est un Pi3B, pas un Pi3B+. Vous pouvez les différencier par le fait que le processeur du Pi3B+ est recouvert d'une feuille métallique. Attention les photos sur le site de Kubii ne sont pas toujours exactes. Voici le Pi3B et le Pi3B+.
    • De ce que je peux en lire, il y a encore quelques problèmes de pilotes avec le Pi3B+. D'où mon choix du Pi3B.
  • Boîtier Pibow Rainbow pour Raspberry Pi 3 ( 11,34€, réf. PIM147 ).
    • Attention, la même référence est utilisée pour le PiBow Ninja (noir) et le PiBow Rainbow (multicolore). Précisez bien lequel vous voulez lors de la commande.
  • Alimentation Micro USB 5V 2.5A EU avec interrupteur ( 8,90€, réf. RA322 )
    • De ce que je peux lire, ne prenez pas une alim existante 2A. Ce n'est pas suffisant pour le Raspberry.
  • Dissipateur Aluminium pour Raspberry Pi 3 ( 1,90€, réf. KUB3082 )
    • Note: Ce dissipateur est bien plus haut que la plupart des dissipateurs, ce qui devrait assurer un meilleur refroidissement.
  • 2 Manette PS3 USB ( 2×11,90€, réf. PSUSB )

Pour un total de 95,80€ (Conseil: Faites votre panier, mais ne commandez pas tout de suite. Vous recevrez sans doute un bon de réduction de 5€.)
Le matériel est arrivé super bien emballé. J'aurais pu balancer le carton du troisième étage sans que rien ne soit cassé.

Carte Raspberry Pi 3 B avec carte MicroSD Boitier Pibow Rainbow Alimentation 2,5A avec interrupteur Dissipateur en aluminium pour le processeur du Raspberry Manette de jeu filaire (imitation de manette Playstation)


À noter que Kubii vend aussi un kit complet à seulement 69,90€ (RaspberryPi3B + boîtier + MicroSD 16 Go + alimentation + dissipateur + câble HDMI). Vous n'avez plus qu'à brancher écran/souris/clavier et l'utiliser.

Montage

  • Assemblage du boîtier PiBow:
    • Ce sont de simples découpes d'acryliques qu'il suffit d'empiler. Pas de risque de se tromper dans le montage: Elles sont numérotées. Pensez à retirer le film sur chaque plaque.
    • 4 vis tiennent le tout. Enfilez les vis par le dessus (écrous en dessous): Elles vont dépasser en dessous. C'est normal, cela fera office de “pieds” pour surélever un peu le Raspberry.
  • Collage du radiateur: Le radiateur est muni d'un autocollant thermique. Il suffit de décoller le film et presser fermement le radiateur sur le processeur.

Notes diverses

  • Éteindre le Raspberry: Pour éteindre le Raspberry, il est conseillé de passer par la fonction d'extinction du système d'exploitation plutôt que de couper brutalement le courant. Même si cela n'abîme pas le Raspberry, couper le courant peut éventuellement corrompre le système de fichiers et vous obliger à réinstaller.
  • Alimentation : Si vous voyez cette icône en haut à droite de l'écran, c'est que votre alimentation n'est pas suffisante: Éclair jaune
  • Température : Si vous voyez une de ces icônes en haut à droite de l'écran, c'est que votre Raspberry est trop chaud. Vous devriez l'éteindre et le laisser un peu refroidir: Thermomètre rouge à moitié Thermomètre rouge au maximum
    • Il faudra peut-être prévoir un meilleur refroidissement: ajouter un dissipateur, un ventilateur ou simplement ouvrir le boîtier.
  • MicroSD > 32 Go : Si vous utilisez des MicroSD de capacité supérieure à 32 Go, il est fort possible que votre système d'exploitation les ait formatées en exFAT. Or ce système de fichiers n'est pas supporté par le RasPi. Reformatez en FAT32.

Logiciels

Installation de l'OS

Pour l'installation, prévoyez d'avoir sous la main:

  • une souris USB
  • un clavier USB
  • une connexion internet (WiFi ou Ethernet. Utiliser Ethernet vous évitera d'avoir à initialement configurer le Wifi: Ayez donc un câble RJ45 sous la main.)
  • Et bien sûr un écran avec entrée HDMI.

NOOBS (New Out Of the Box Software) est un outils fourni par Raspberry qui permet de simplifier l'installation, la ré-installation des distributions et le multi-boot. Il supporte directement un bon nombre de distributions: Raspbian, Arch, RecalBox, LibrElec, Lakka…

Lors du démarrage, NOOBS propose plusieurs distributions, dont RecalBox. Il suffit de cocher les distributions qui vous intéressent, et NOOBS ira directement les télécharger et les installer. L'avantage est que vous obtenez ainsi la toute dernière version de chaque distribution. Une connexion internet est bien entendu nécessaire (Ethernet ou WiFi).

Capture d'écran de la fenêtre d'installer de NOOBS présentant différents systèmes d'exploitation.

Si vous cochez plusieurs distributions, la fenêtre de NOOBS s'affichera à chaque démarrage pour vous permettre de choisir la distribution sur laquelle vous souhaitez démarrer. (Quand l'écran de NOOBS s'affiche au démarrage, maintenez la touche ⇧ Maj enfoncée: Le menu de NOOBS s'affichera à nouveau pour vous permettre d'installer/réinstaller les distributions.)

:!: Note: Si j'ai bien réussi à installer RaspBian à partir de NOOBS, je n'ai pas réussi à installer RecalBox. (Après téléchargement et installation, j'ai juste obtenu un écran noir après celui de NOOBS).

Pour RecalBox, je l'ai installé directement en téléchargeant recalbox.img.xz du site officiel de RecalBox et j'ai utilisé Etcher pour le transférer sur MicroSD.

Recalbox

Logo de RecalBox

RecalBox est une distribution orientée émulation de consoles de jeux et inclue également le médiacenter Kodi. Une fois installé, RecalBox peut se piloter avec juste des manettes de jeux.

Roms

RecalBox est fourni avec une poignée de jeux “homebrew” parfaitement légaux. Si vous voulez toute la panoplie de jeux, il vous faut:

  • les BIOS des consoles (à placer dans /share/bios/)
  • les jeux eux-mêmes (à placer dans /share/roms/…, par exemple /share/roms/snes pour les roms SuperNintendo)

Voici diverses sources de ROMs:

Si vous n'avez pas les captures d'écran des ROMs, ne vous inquiétez pas: RecalBox a une option pour aller chercher automatiquement les captures d'écran et pochettes des jeux (voir l'option “Scraping” dans les menus).

J'ai environ: 700 jeux MegaDrive, 700 jeux SuperNintendo, 700 jeux bornes d'arcade MAME et 300 jeux Nintendo 64. Le tout fait environ 8 Go, ça tient sans problème sur la carte MicroSD de 16 Go fournie avec le RasPi3.

Notez qu'avec RecalBox il est possible de mettre les jeux sur une clé USB, ce qui permet d'en stocker plus, et surtout de ne pas avoir à recopier les jeux à nouveau si vous ré-installez un OS sur la MicroSD. Pour le moment, je les laisse sur la MicroSD (Avec environ 2400 jeux, je pense qu'il y a déjà de quoi s'occuper).

Performances: Sur un Raspberry Pi 3B, l'émulation des “petites” consoles passera sans problème (SuperNintendo, MegaDrive, MAME, etc.) mais n'espérez pas émuler une GameCube ou une Wii. Les jeux PSP (Playstation Portable) ne passent pas bien (ralentissements, son saccadé). Pas de soucis avec la majorité des jeux Nintendo 64 et PS1/PSX (Playstation 1). Cela laisse quand même de quoi émuler des milliers de jeux sans problème. Si vous voulez aller jusqu'à l'émulation de la Wii, il faudra sans doute passer à des micro-ordinateurs plus puissants (comme l'ODroid C2). Vous pouvez aussi émuler la Wii sur votre PC avec Dolphin.

Accès à la Recalbox

Une fois en réseau, RecalBox est accessible à l'adresse recalbox.local ou juste recalbox (c'est du ZeroConf/Avahi/Bonjour/mDNS). Vous pouvez y accéder:

  • par partage Windows (connectez-vous à recalbox.local ou recalbox, sans login/mot de passe)
  • par partage ssh (port 22, user:root, mdp:recalboxroot)
  • avec votre navigateur: http://recalbox.local
  • Si recalbox.local ou recalbox ne fonctionnent pas, accéder y directement par adresse IP. Vous pouvez trouver l'adresse IP dans les menus de RecalBox.

Cela vous permet de transférer de nouvelles ROMs dans le répertoire /share sans avoir à enlever la carte MicroSD du Raspberry. (Après avoir ajouté de nouvelles ROMs, pensez à redémarrer votre Raspberry.)

Configuration

  • Manettes:
    • La configuration des manettes a été ma plus grosse galère.
    • Au début, elles ne sont pas nativement reconnues. La configuration nécessite de passer au début par le clavier pour réussir à activer le menu. Une fois qu'une manette est configurée, on peut accéder au reste de la configuration avec les manettes. Touches du clavier à utiliser:
      • Flèches haut/bas/gauche/droite : Sélectionner
      • Q : Valider.
      • S : Annuler/menu précédent
      • ENTRÉE : Menu RecalBox (configuration, etc.)
      • ESPACE : Menu éteindre/redémarrer
    • Les manettes que j'ai sont des copies asiatiques de manettes PS3.
      • Pour voir les caractéristiques, sur un ordinateur, pas sur le RaspberryPi tapez dmesg après avoir branché une manette. Vous verrez par exemple:
        [ 5407.765078] usb 1-4: new low-speed USB device number 9 using xhci_hcd
        [ 5407.916796] usb 1-4: New USB device found, idVendor=0810, idProduct=0001
        [ 5407.916803] usb 1-4: New USB device strings: Mfr=0, Product=2, SerialNumber=0
        [ 5407.916808] usb 1-4: Product:  USB Gamepad          
        [ 5407.920936] input:  USB Gamepad           as /devices/pci0000:00/0000:00:14.0/usb1/1-4/1-4:1.0/0003:0810:0001.0006/input/input36
        [ 5407.981774] pantherlord 0003:0810:0001.0006: input,hidraw2: USB HID v1.10 Joystick [ USB Gamepad          ] on usb-0000:00:14.0-4/input0
        [ 5407.981803] pantherlord 0003:0810:0001.0006: Force feedback for PantherLord/GreenAsia devices by Anssi Hannula <anssi.hannula@gmail.com>
      • lsusb (sur un ordinateur) me donne:
        ID 0810:0001 Personal Communication Systems, Inc. Dual PSX Adaptor
      • Pour tester que votre manette fonctionne bien, sudo apt install jstest-gtk et lancez ce programme.
  • Dans recalbox.conf, j'ai changé le paramètre controllers.ps3.driver=bluez par controllers.ps3.driver=gasia (puis redémarré le Raspberry)
  • :!: Avant de configurer les boutons de votre manette, assurez-vous que la diode rouge soit bien allumée (avec le bouton ANALOG).
  • Dans RecalBox > Option des manettes > Configurer une manette > Faire un appuis long sur un des boutons pour commencer à la configurer. Je l'ai configurée comme suit:

  • Pour les touches que vous ne voulez pas configurer (comme L3/R3 par exemple), pressez juste BAS pour passer.
  • Vous devrez choisir un bouton de votre manette comme “HOTKEY”. Je vous conseille d'utiliser le bouton SELECT. En appuyant sur les boutons de votre manette pendant que la touche SELECT est enfoncée, vous accédez à plein de fonctions (sauvegarde, rembobinage, configuration, etc.). Par exemple:
    • SELECT+START : Sortir d'un jeu.
    • SELECT+GAUCHE : “Rembobiner” le jeu.
    • SELECT+DROITE : Passer en mode “avance rapide” (pratique pour passer les intros trop longues)
    • etc.
    • Si vous configurez les boutons comme j'ai indiqués, ils correspondront aux icônes affichées dans RecalBox. Donc en utilisation courante:
      • On utilisera donc le bouton 3/B pour valider et le bouton 2/A pour annuler/revenir en arrière/sortir d'un menu.
      • START affichera le menu principal de RecalBox (configuration, etc.)
      • SELECT affichera le menu d'extinction ou redémarrage.
      • 1/X affichera le menu pour lancer Kodi.
  • Pour la suite, dans les jeux, les touches dépendent des émulateurs.
    • Par exemple dans MAME, la touche SELECT permet d'insérer une pièce.
    • Dans beaucoup d'émulateurs, SELECT+3/B affiche le menu de l'émulateur (pour régler des options).
  • Dans Kodi:
    • START permet de mettre la vidéo en pause.
    • DROITE/GAUCHE permettent d'avancer/reculer dans la vidéo.
    • Joystick 1 gauche/droite permet de régler le volume.
    • FIXME à compléter.
  • Pas de son en HDMI: Si vous n'avez pas de son en HDMI, vous pouvez forcer la sortie audio en HDMI (dans le menu “Son”) ou modifier le fichier de config de RecalBox /recalbox/share/system/recalbox.conf (ou en passant par l'interface web: http://recalbox.local/recalbox-conf):
    audio.device=hdmi

Thèmes

Il existe d'autres thèmes pour RecalBox.

  • Ils sont disponibles dans cette page.
  • Ils sont à installer dans /share/system/.emulationstation/themes
  • Redémarrez ensuite RecalBox.
  • Le thème se choisit ensuite dans le menu “Interface utilisateur”. Certains thèmes ont des options de configuration (couleurs, icônes, présentation…).

Autres thèmes sur le forum de RecalBox.

Raspbian

Logo de Raspbian, constitué du logo de Raspberry et du logo de Debian

Raspbian est une dérivée de Debian adaptée au Raspberry. C'est un environnement de bureau traditionnel (navigateur, suite bureautique (LibreOffice), lecteur multimédia (VLC)…)

Astuces

  • Mises à jour:
    • Mettez le système à jour avec:
      sudo apt-get update
      sudo apt-get dist-upgrade
      • Attention: apt ne vérifie pas s'il y a assez de place pour faire la mises à jour. La commande sudo apt-get dist-upgrade vous indiquera la place nécessaire à la mise à jour. Comparez avec la place libre renvoyée par df -h.
  • Pour gagner de la place sur la MicroSD:
    • Dé-installer les paquets éventuellement inutiles : sudo apt autoremove
    • atp garde une copie locale des packages téléchargés. Vous pouvez sans danger vider ce cache: sudo apt-get clean
  • zram
    • zram fournit des segments de mémoire compressés qui sont utilisés comme swap en priorité sur le swap disque. En pratique, cela permet de lancer plus d'application avec la même quantité de mémoire vive et de réduire pratiquement à néant le swap disque. C'est particulièrement intéressant pour les machines avec peu de RAM. zram est d'ailleurs actif par défaut dans Android. Il est nativement présent dans le noyau de Raspbian, mais pas actif. Pour l'activer:
      • sudo wget -O /usr/bin/zram.sh https://raw.githubusercontent.com/novaspirit/rpi_zram/master/zram.sh ou enregistrer le script suivant dans /usr/bin/zram.sh:
        zram.sh
        #!/bin/bash
        # Enable zram swap in Raspbian (source: https://github.com/novaspirit/rpi_zram/)
        cores=$(nproc --all)
        modprobe zram num_devices=$cores
         
        swapoff -a
         
        totalmem=`free | grep -e "^Mem:" | awk '{print $2}'`
        mem=$(( ($totalmem / $cores)* 1024 ))
         
        core=0
        while [ $core -lt $cores ]; do
          echo $mem > /sys/block/zram$core/disksize
          mkswap /dev/zram$core
          swapon -p 5 /dev/zram$core
          let core=core+1
        done
      • Puis: sudo chmod +x /usr/bin/zram.sh
      • Et dans /etc/rc.local, avant le exit 0, ajoutez la ligne:
        /usr/bin/zram.sh &
      • Redémarrez.
      • Contrôllez que le swap zram est actif: Vous devez voir des /dev/zramX quand vous faites cat /proc/swaps.
      • Profitez de l'avantage de pouvoir lancer plus d'applications simultanément ! :-)
  • Si vous n'avez pas de son en HDMI:
    • Modifiez le fichier /boot/config.txt (source):
      #Always force HDMI output and enable HDMI sound
      hdmi_force_hotplug=1
      hdmi_drive=2
  • Accès à distance:
    • En réseau local, vous pouvez facilement activer le serveur ssh et VNC.
      • Note: Par défaut, le serveur VNC utilise une authentification UNIX (utilisateurs système) qui nécessite un client spécial: RealVNC Viewer.
      • Si vous voulez y accéder depuis les clients VNC traditionnels (Remmina, etc.) vous devez changer la configuration du serveur VNC de Raspbian et utiliser l'authentification VNC. FIXME Ajouter des captures d'écran.
    • À distance, l'excellent DWservice (équivalent de TeamViewer) fournit un service pour Raspbian. Une fois installé, vous pouvez donc piloter votre Raspbian depuis votre compte DWService.
  • À voir/tester/pistes d'optimisation:
    • vérifier que par défaut / est bien monté en relatime. Ou même carrément le monter en noatime. (Afin de réduire les écritures sur la microSD.)
    • vm.swappiness à changer ?
    • Répertoires à mettre en mémoire (tmpfs) pour réduire l'usure de la microSD ? (couplé à zram): Pour /etc/fstab:
          tmpfs    /tmp       tmpfs    defaults,size=256m    0 0
          tmpfs    /var/tmp   tmpfs    defaults,size=256m    0 0
      • Mettre aussi /var/log en tmpfs ? (Avantage: grosse réduction des écritures vers la SD, mais implique une perte des logs au redémarrage. Autre inconvénient: si on laisse le RasPi allumé longtemps, /var/log va se remplir: Prévoir une purge régulière). Ou alors utiliser ramlog (log en ram, écriture sur SD au moment du shutdown).

À explorer / liens


Étude : Un Raspberry Pi comme machine de bureau

Boîtier officiel Raspberry, blanc et rouge.

Le fait est que la majorité des gens ont juste besoin d'un ordinateur pour naviguer sur internet, faire un peu de bureautique et regarder des vidéos. Certes le Raspberry est loin d'avoir la puissance d'un ordinateur de bureau, mais il semble malgré tout suffisamment puissant pour les tâches courantes. (Tout est dans ce mot: suffisant)

  • Coût: Si on essaie de calculer le coût d'une solution tout-en-un:
    • Starter Kit Officiel Pi3 (Pi3B+dissipateur+microSD 16 Go+alimentation+boîtier+câble HDMI): 69,90€ (lien)
    • Souris : 2,31€ (lien)
    • Clavier : 6,17€ (lien)
    • Écran 21 pouces HDMI: Neuf: 99,90€ (lien), reconditionné: 69€ (lien)

Si on part sur la solution d'un écran reconditionné, on arrive à une machine complète pour 147,38 € (!).

  • Avantages:
    • Coût moindre.
    • Prend très peu de place (On peut même coller le Raspberry derrière l'écran).
    • Consommation électrique moindre.
    • Parfaitement silencieux (pas de ventilateur).
    • Pratiquement insensible aux virus.
    • Maintenance moindre.
    • Reste 2 ports USB libres (disque dur externe pour plus de capacité de stockage, imprimante…).
    • Remplacement aisé en cas de panne (exemple: il suffit de remettre la MicroSD dans un nouveau Raspberry (35€), sans changer de boitier, et c'est reparti !)
    • Possibilité d'emporter son Raspberry dans son sac (avec le bloc d'alim), et venir le brancher sur n'importe quel écran/souris/clavier pour continuer à travailler (!).
      • Si on veut être plus nomade avec son Raspberry, on pourra penser à prendre un adaptateur HDMI/VGA pour pouvoir le brancher sur n'importe quel écran d'ordinateur VGA (on en trouve à 7€).
      • (Si vous avez un “mauvais” moniteur VGA et que le Raspi n'arrive pas à trouver la bonne résolution, vous pouvez la forcer: Voir cet article)
  • Inconvénients:
    • Moindres performances ? (Encore que LibreOffice ne met que 6 secondes à démarrer !)
    • Bien sûr ce genre de configuration n'est pas adaptée à certaines utilisations intensives comme les jeux 3D ou l'édition vidéo.
    • Le Pi3B supporte USB 2, mais pas USB 3.

Photo de la carte Raspberri Pi 3 B vue de dessus.

Amusez-vous bien !

raspi3.txt · Dernière modification: 2018/12/11 12:47 par sebsauvage