Ce n'est pas la première ou la dernière console de jeu au monde sur RetroPie, mais parmi les nombreuses similaires, le design Instructables proposé sous le surnom 陳亮 se distingue par sa taille miniature: c'est approximativement la taille d'une console Arduboy plus minimale.
L'appareil est basé sur la carte Raspberry Pi Zero, l'option est compatible avec le WiFi et sans. Le premier est plus pratique, le second est plus économe en énergie. Le maître a mis un WAShare LCD HAT dessus. Il est important de choisir une version plus récente du «chapeau» - avec un écran de 1,3 pouces ayant une résolution de 240x240. Oui, un carré, mais Instagram et Polaroid n'y sont pour rien. Sur ce "chapeau", en plus de l'affichage, il y a un joystick et des boutons. Le Raspberry Pi Zero ne comprend pas de peigne. Si vous en avez besoin, vous devez le souder vous-même. Pour que la console ne soit pas trop épaisse, vous avez besoin d'un peigne avec des broches de 8 mm. Je n'ai pas trouvé un tel maître et raccourci les 12 mm. Il se compose de deux rangées de 20 broches chacune. Dans l'espace entre les cartes, installez une batterie LiPo mesurant 45x23x5 mm avec un circuit de protection intégré. La capacité n'y est pas indiquée. À cela, 陳亮 a ajouté un contrôleur de charge très miniature avec des dimensions de 10x10 mm, ce qui est bon pour tout le monde, mais ne peut charger la batterie qu'en mode lent avec un courant de seulement 50 mA. La LED bicolore illustrée ci-dessous est facultative. Parmi les composants supplémentaires requis: un interrupteur mécanique, une sangle, quatre vis à tête fraisée avec un filetage M2,5 de 14 mm de longueur.
Le boîtier et les boutons sont imprimés en 3D, le maître a disposé tous les fichiers nécessaires à leur répétition sur thingiverse. Vous pouvez les imprimer dans une ou plusieurs couleurs, dans la version de l'auteur, elles sont les suivantes: Layer123.stl - noir de jais, Layer4.stl - jaune transparent, Layer5.stl - orange transparent, Layer678.stl - rouge transparent, ButtonHead.stl - rouge transparent, bleu et vert (trois boutons), CrossButtonHead.stl - rouge foncé (et ceci est un D-pad).
Le stabilisateur PAM2306 sur le Raspberry Pi Zero peut fonctionner avec une petite chute de tension, il générera 3,3 V en sortie, même lorsque la tension d'entrée chute à 3,5 V. La console consomme une charge de batterie, consommant 100 à 200 mA lorsque le WiFi est déconnecté , Il fonctionne pendant environ 90 minutes, tandis qu'il consomme environ 90% de la capacité de la batterie. Une carte sur laquelle le WiFi n'est pas disponible dans le matériel fonctionnera encore plus longtemps.
Le maître relie les «framboises» et les «chapeaux» les uns aux autres avec un peigne à broches de 12 mm, mais jusqu'à présent, il ne les soude pas:
Il mord l'excès et les broches deviennent 8 mm:
Soudez le peigne sur une planche et la contrepartie sur une autre:
Se connecte à d'autres composants:
Selon ce schéma, composé sous forme de texte:
Remarque: au niveau du «chapeau», le peigne est situé à l'arrière, la numérotation de ses conclusions est donc inversée.
Tout sauf le Raspberry Pi est placé dans le détail du boîtier imprimé à partir du fichier Layer4.stl, sous le commutateur, il y a une empreinte:
En haut définit la partie imprimée à partir du fichier Layer5.stl:
Ensuite - Raspberry Pi:
Et le mur arrière est le fichier Layer678.stl:
Place les vis en place:
Inverse toute la construction, met en place les boutons imprimés à partir du fichier ButtonHead.stl, mais pas encore le D-pad:
Se ferme avec le panneau avant imprimé à partir du fichier Layer123.stl:
Tourne et serre les vis:
Installe le D-pad sur l'axe du joystick, imprimé à partir du fichier CrossButtonHead.stl:
Shakes Retropieen sélectionnant l'option Raspberry Pi 0/1, et jeux homebrew. Téléchargement de fichiers supplémentaires: mk_arcade_joystick_rpi et rpi-fbcpen sélectionnant l'option de téléchargement dans l'archive ZIP.
Écrit l'image RetroPie téléchargée sur la carte mémoire. La simple copie du fichier ne fonctionnera pas. Vous devez utiliser l'une des méthodes, selon le système d'exploitation que vous avez sur le bureau.
Méthode pour Linux
Way pour MacOS
Way pour Windows
Dans tous les cas, le nom du fichier image dans l'exemple doit être remplacé par le nom du fichier que vous avez téléchargé.
Place les archives mk_arcade_joystick_rpi-master.zip et rpi-fbcp-master.zip sur la carte mémoire.
À la fin du fichier config.txt sur la carte mémoire, met la ligne:
dtoverlay = dwc2
Dans le fichier codlin.txt après le mot clé rootwait place: modules-load = dwc2, g_ether
Il s'avère:
dwc_otg.lpm_enable = 0 console = serial0,115200 console = tty1 root = PARTUUID
Il crée un fichier ssh vide sur la carte mémoire, sur MacOS l'assistant a la commande suivante:
toucher / volumes / boot / ssh
Le boîtier imprimé en 3D a déjà des évidements pour un connecteur USB et un emplacement pour une carte mémoire, donc installer une carte et connecter le cordon n'est pas plus difficile que dans un lecteur, par exemple:
Peu de temps après le chargement de RetroPie, la console du système d'exploitation de l'ordinateur reconnaît la carte réseau virtuelle. Dès que cela se produit, l'assistant entre la commande:
ssh pi@retropie.local
Le mot de passe par défaut est framboise, il le change immédiatement avec la commande passwd.
À la fin du fichier / etc / modules, il ajoute:
spi-bcm2835
flexfb
fbtft_device
Crée un fichier /etc/modprobe.d/fbtft.conf avec le contenu suivant:
options flexfb setaddrwin = 0 largeur = 240 hauteur = 240 init = -1,0x11, -2,120, -1,0x36,0x70, -1,0x3A, 0x05, -1,0xB2,0x0C, 0x0C, 0x00,0x33,0x33, -1.0xB7.0x35, -1.0xBB, 0x1A, -1.0xC0.0x2C, -1.0xC2.0x01, -1.0xC3.0x0B, -1.0xC4.0x20, -1.0xC6.0x0F, - 1,0xD0,0xA4,0xA1, -1,0x21, -1,0xE0,0x00,0x19,0x1E, 0x0A, 0x09,0x15,0x3D, 0x44,0x51,0x12,0x03,0x00,0x3F, 0x3F, -1,0xE1 , 0x00.0x18.0x1E, 0x0A, 0x09.0x25.0x3F, 0x43.0x52.0x33.0x03.0x00.0x3F, 0x3F, -1.0x29, -3
options fbtft_device name = flexfb gpios = reset: 27, dc: 25, cs: 8, led: 24 speed = 125000000 bgr = 1 fps = 60 custom = 1 height = 240 width = 240
Extrait des fichiers de l'une des deux archives précédemment copiées sur la carte (voir ci-dessus):
décompressez /boot/rpi-fbcp-master.zip
Compile et installe:
cd rpi-fbcp-master /
mkdir build
construction de cd
cmake ..
faire
sudo install fbcp / usr / local / bin / fbcp
Exécute:
/ usr / local / bin / fbcp &
À la fin du fichier, /boot/config.txt ajoute:
disable_overscan = 1
hdmi_force_hotplug = 1
hdmi_group = 2
hdmi_mode = 87
hdmi_cvt = 240240 60 1 0 0 0
dtparam = spi = on
Décompresse une autre archive:
décompressez /boot/mk_arcade_joystick_rpi-master.zip
Lance l'éditeur et ouvre le fichier de configuration de la manette de jeu:
cd mk_arcade_joystick_rpi-master /
vi mk_arcade_joystick_rpi.c
Recherche la chaîne statique const int mk_arcade_gpio_maps [] et la fait ressembler à ceci:
constante statique int mk_arcade_gpio_maps [] = {6,19,5,26,13,21,16,20,0,0,0,0,0};
Enregistre le fichier, compile et installe le module:
sudo mkdir /usr/src/mk_arcade_joystick_rpi-0.1.5/
sudo cp -a * /usr/src/mk_arcade_joystick_rpi-0.1.5/
export MKVERSION = 0.1.5
sudo -E dkms build -m mk_arcade_joystick_rpi -v 0.1.5
sudo -E dkms install -m mk_arcade_joystick_rpi -v 0.1.5
Boutons de vérification:
sudo modprobe mk_arcade_joystick_rpi map = 1
jstest / dev / input / js0
À la fin du fichier, / etc / modules ajoute:
mk_arcade_joystick_rpi
Crée un fichier /etc/modprobe.d/joystick.conf avec le contenu suivant:
option mk_arcade_joystick_rpi map = 1
Les fichiers téléchargés (voir ci-dessus) avec des jeux homebrew sont dispersés du dossier / boot dans les dossiers ~ / RetroPie / roms / $ CONSOLE, où $ CONSOLE est le nom de la plateforme pour laquelle ils sont destinés.
Exécutez raspi-config:
sudo raspi-config
Configure:
Sélectionne un réseau WiFi (uniquement pour la carte où il se trouve): 2 Options réseau -> Wi-Fi N2 -> entrez les données de votre réseau
S'assure que le téléchargement ne s'arrête pas pour que le réseau apparaisse: 3 Options de démarrage -> B2 Attendre le réseau au démarrage -> Non -> OK
Indique le fuseau horaire: 4 Options de localisation -> I2 Changer le fuseau horaire -> sélectionne votre fuseau horaire
Désactive le port série: 5 Options d'interfaçage -> Série P6 -> Non -> Non -> OK
Exécute le script de configuration RetroPie:
sudo ~ / RetroPie-Setup / retropie_setup.sh
Optimise la résolution pour un écran de 1,3 pouces: Configuration C / Outils -> 805 configedit -> 1 -> 0 -> 2 Résolution de rendu -> O Résolution de sortie vidéo -> OK -> Annuler -> Annuler -> Annuler
Change le thème en un thème approprié pour un tel écran (vous avez besoin du WiFi pour être connecté): 812 esthemes -> 14 Pixel-tft -> OK -> 1 carbon -> 2 Uninstall
Le «chapeau» n'a que trois boutons distincts, plus un intégré directement dans le D-pad. Et la résolution d'affichage est de 240x240. Le maître préfère la plateforme NES, où la résolution est de 256 x 240. Pour que l'image ne soit pas déformée, il a décidé de la recadrer. Pour les lecteurs qui souhaitent jouer à des jeux uniquement NES, il recommande d'ajouter des lignes à la fin du fichier /opt/retropie/configs/nes/retroarch.cfg:
video_fullscreen_x = "0"
video_fullscreen_y = "0"
video_scale_integer = true
Et à la fin du fichier /opt/retropie/configs/all/retroarch-core-options.cfg - la ligne:
quicknes_use_overscan_h = "désactivé"
Les boutons de la manette de jeu émulés par NES sont dispersés par les boutons de la console selon la figure:
Les utilisateurs habitués aux boutons Turbo devront se sevrer. L'assistant lance l'éditeur et ouvre le fichier de paramètres EmulationStation:
Là, il met le texte:
& lt ;? xml version = "1.0"? & gt;
/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh
Après avoir enregistré le fichier et fermé l'éditeur, il le redémarre, mais avec le fichier de paramètres RetroArch:
vi / opt / retropie / configs / all / retroarch / autoconfig / GPIO \ Controller \ 1.cfg
Et là, il met le texte:
input_device = "Contrôleur GPIO 1"
input_driver = "udev"
input_start_btn = "11"
input_exit_emulator_btn = "11"
input_down_axis = "+1"
input_right_axis = "+0"
input_state_slot_increase_axis = "+0"
input_select_btn = "10"
input_left_axis = "-0"
input_state_slot_decrease_axis = "-0"
input_up_axis = "-1"
input_a_btn = "0"
input_b_btn = "1"
input_reset_btn = "1"
input_enable_hotkey_btn = "10"
Il enregistre et ferme également, accélère le chargement par entrée séquentielle de commandes:
sudo systemctl désactiver asplashscreen
sudo systemctl désactiver dphys-swapfile
sudo systemctl désactiver hciuart
sudo systemctl désactiver la configuration du clavier
sudo systemctl désactiver nmbd
sudo systemctl désactiver raspi-config
sudo systemctl désactiver smbd
sudo systemctl désactiver nfs-config
Quel swap désactive, il fait la bonne chose, mais il ne veut pas que la carte mémoire se plie rapidement.
Dans le fichier /boot/cmdline.txt définit les paramètres comme ceci:
dwc_otg.lpm_enable = 0 console = tty1 root = PARTUUID = 14a75fe9-02 rootfstype = ext4 ascenseur = date limite fsck.repair = oui rootwait loglevel = 3 consoleblank = 0 plymouth.enable = 0 logo.nologo fastboot quiet
Et cette ligne se transforme en commentaire en plaçant une grille devant:
# dtoverlay = dwc2
Redémarre l'appareil. S'éteint avec la commande:
arrêt sudo
Déconnecte le câble, allume l'interrupteur et il se charge déjà sans PC. Environ une minute plus tard, une fois le téléchargement terminé, il configure, sélectionne l'émulateur et le jeu.
Comme le lecteur l'a déjà deviné, en lisant les fichiers de configuration ci-dessus, la touche Démarrer correspond à un clic sur le D-pad au milieu. Par la même pression, lorsque le jeu n'est pas en cours d'exécution, vous pouvez appeler le menu des paramètres. Là, l'assistant sélectionne les éléments suivants:
PARAMÈTRES DE L'UI - & gt; PARAMÈTRES D'ÉCONOMIE D'ÉCRAN - & gt; SCREENSAVER APRÈS - & gt; 1 minute
AUTRES RÉGLAGES - & gt; MODES D'ÉCONOMIE D'ÉNERGIE - & gt; INSTANTANÉ
Met la sangle dans l'oreille désignée:
Terminé, vous pouvez utiliser:
Voici les différentes couleurs de la console: