Fabriquer sa propre console portable (v2) : La partie software

Par  | Le  | 1 commentaire
DIY

Enfin la suite de la fabrication de cette nouvelle console portable. Passons à la partie logicielle, si vous n’êtes pas habitué à Linux et aux commandes SSH, ce n’est pas bien grave, prenez simplement votre temps avant d’entrer en action.

Installation du système d’exploitation

Tout comme le premier prototype de console portable, il va falloir installer la distribution Pixel de Raspbian.

Nous allons installer la version complète de Raspbian qui est l’OS de référence pour le RPI. Il vous suffit de télécharger l’ISO et de la déployer sur la carte micro SD de votre RPI via le logiciel Win32ImageDisk, comme cela a été le cas pour le projet de borne.

Configuration du système

Insérez ensuite la carte micro SD sur votre RPI et démarrez le en branchant alimentation micro USB ainsi que qu’un écran HDMI. Vous devriez arriver sur l’interface de Rasbpian après ce premier démarrage.

Lancez le terminal (via les menus en haut à gauche). Nous allons démarrer la gestion de la configuration du PI :

sudo raspi-config

Sélectionnez les commandes du config dans cette ordre :

  • Resize SD (pour etendre le volume principal à la taille complète de la carte micro SD)
  • Location changement (ensuite nous allons passer la langue et le clavier en français)
  • Choissisez le Clavier FR
  • Reboot pour prendre en compte les changements

Prenons le temps de mettre à jour le système (à faire dans le terminal) :

sudo apt-get update

sudo apt-get upgrade

sudo reboot

La machine va redémarrer une fois de plus mais notre base de travail est en place, c’est une première victoire.

Installation de Retropie

Occupons nous de lancer l’installation de Retropie (l’application qui gère tous les émulateurs).

sudo apt-get install -y git dialog 

git clone --depth=1 https://github.com/RetroPie/RetroPie-Setup.git

cd RetroPie-Setup

chmod +x retropie_setup.sh

sudo ./retropie_setup.sh

La dernière commande lance un script .sh, vous verrez une interface vous permettant d’exécuter certaines commandes :

  • Relancer le SH
  • Choisir le point 3 : Autostart EmulationStation
  • Choisir l’install de Samba Share (pour avoir le partage des dossiers Roms/Config/Bios avec Windows/Linux/Mac)

Installation des drivers de l’écran

Vous avez logiquement copié le répertoire LCD-SHOW à la racine de votre carte Micro SD. Exécutez les commandes suivantes en SSH (via le logiciel Putty par exemple) tout en ayant une connexion internet active sur votre RPI Zero W (via le Wifi par exemple) :

cd LCD-SHOW

Chmod +x LCD35-Show

./LCD35-show 

Ajoutons ensuite l’écran au démarrage du Raspberry en modifiant le fichier config :

sudo nano /boot/config.txt

Allez jusqu’à la ligne dtooverlay… et changez là avec la ligne suivante :

dtoverlay=waveshare35a, speed=41000000, fps=50

Une chose est capitale à comprendre quand on fait une console portable avec un petit écran qui doit afficher Retropie ou Recalbox : La sortie GPIO ne gère pas l’OpenGL contrairement à la sortie HDMI.

On ne peut logiquement pas afficher EmulationStation (choix des émulateurs / jeux) sur ce type de périphérique. L’astuce pour y arriver, consiste à copier le flux d’images qui sort via le port HDMI (fb0) vers le port GPIO (fb1), pour cela il faut utiliser un programme tiers.

Il y en a plusieurs, j’ai personnellement choisi FBCP avec le premier prototype et la version SLIM que je vous ai présenté précédemment, tout du moins au début…

Ce genre de programme est un peu complexe à faire tourner et utilise pas mal de ressources du Raspberry. En cherchant un peu et en parlant avec un bricoleur padien sur le channel Discord du site, j’ai vu qu’une alternative existait : raspi2fb.

Ce dernier consomme moins de ressource et permet d’accroître la fluidité de copie (et donc la fluidité ressentie sur l’écran) de manière significative par rapport à FBCP.

Néanmoins, si vous rencontrez des difficultés, n’hésitez pas à essayer ‘fbcp’.
Voici les commandes (toujours en étant en SSH) pour l’installation de raspi2fb :

sudo apt-get install cmake

sudo apt-get install libbsd-dev

git clone https://github.com/AndrewFromMelbourne/raspi2fb.git

cd raspi2fb

mkdir build

cd build

cmake ..

make

sudo make install

sudo cp ../raspi2fb.init.d /etc/init.d/raspi2fb

sudo update-rc.d raspi2fb defaults

sudo cd /etc/init.d/

sudo nano raspi2fb

Avec cette dernière commande, modifiez la ligne suivante :

DAEMON_ARGS= »–daemon –fps 60 –pidfile $PIDFILE »

sudo service raspi2fb start

Nous venons de faire un service avec raspi2fb et de le rendre automatique au démarrage du Pi. Si vous souhaitez avoir de détails sur le programme, n’hésitez pas à vous rendre ici.

Finish Him !

Yeah ! Nous arrivons enfin au bout. Redémarrez le Pi avec la commande suivante, vous devriez voir EmulationStation puis l’écran de détection de manette apparaître.

Ne rater pas les autres articles

  1. Fabriquer sa propre console portable : Matériel et vidéo de présentation
  2. Fabriquer sa propre console portable : Le point sur l’avancement
  3. Fabriquer sa propre console portable : La partie software
  4. Fabriquer sa propre console portable : Présentation du prototype
  5. Fabriquer sa propre console portable : Le design
  6. Fabriquer sa propre console portable : Montage et soudures
  7. Fabriquer sa propre console portable (v2) : Présentation et montage
  8. Fabriquer sa propre console portable (v2) : La partie software
Tags : 3ds, bluetooth, console, diy, fbcp, powerboost, psvvita, raspberry, rpi, rpi zero w, switch, wifi,

Commentaire

Laisser un commentaire

Coucou toi,

En postant ton commentaire, essaye d'être le plus sympatique possible dans tes propos et dis au minimum "bonjour" si tu souhaites poser une question ;)

Merci pour ta participation