Outils pour utilisateurs

Outils du site


wiki:projets:console_portable

Ceci est une ancienne révision du document !


Console Portable

Porteur(s) du projet: Pacôme (contact : pacome.delva@upmc.fr)

  • Date de début : 10/2017
  • But : fabriquer une console portable
  • Date de fin estimée : 12/2017

Machines nécessaires

  • Imprimante 3D (UP Mini et Ultimaker) avec PLA
  • Fer à souder
  • Voltmètre

Matériels nécessaires

* Raspberry 3 * Carte mémoire MicroSD 32Go ou 64Go * Écran Composite couleur 3,5 pouces * Batterie LiPo 3.7v 2500mAh * Carte chargeur de batterie au lithium (TP4056) * Step Up Power Booster (convertisseur de tension) * 15 Boutons 6 mm * Gros interrupteur * Ampli Mono PM8403 * Enceinte 0,5 W 8 Ohm 23 mm

Construction

Impression du boîtier

Fichiers STL: http://www.thingiverse.com/thing:1779343. Les fichiers STL ne sont pas utilisables tel quels. Il faut les ouvrir et les sauver par exemple avec tinkercad http://www.tinkercad.com.

front.stl back.stl buttons.stl buttons2.stl buttons3.stl extra_parts.stl

Les petits objets ont été imprimés avec l'imprimante UP Mini. Le boitier est tros gros pour la UP Mini et a été fait avec l'Ultimaker.

La batterie

Pour alimenter le Pi3 de façon autonome il faut une batterie LiPo, un chargeur de batterie et un convertisseur de tension. Par exemple:

  • Lithium Ion Polymer Battery - 3.7v 2500mAh - 51 x 65 x 8mm
  • Mini USB TP4056 1A Lithium Battery Energy Buckle
  • MT3608 2A DC-DC Voltage Step Up Regulator Boost Converter

ATTENTION: les batteries LiPo sont dangereuses si on ne fait pas attention. Il faut absolument les acheter avec un circuit de protection intégré, ce qui les empêche d'atteindre des tensions trop basses (<3V) ou trop hautes (>4.2V). Pour plus d'infos voir http://www.majordome-video.com/guides/le-guide-ultime-de-la-batterie-lipo/

On assemble d'abord la batterie avec le chargeur TP4056, et on vérifie la tension de la batterie, qui doit être entre 3V et 4.2V. Pour charger la batterie il faut un convertisseur AC/DC avec en sortie DC5V-2A. Prendre un chargeur de qualité, comme par exemple celui du Pi3.

Ensuite on assemble la sortie du TP4056 à l'entrée du convertisseur de tension. En mettant un voltmètre en sortie du convertisseur et en tournant la petite vis on règle la tension de sortie à environ 5V, ce qui permettra d'alimenter le Pi3. Attention il faut utiliser des fils suffisamment gros (eg. 0.5mm^2), sinon le courant ne passera pas assez et le pi3 sera sous-alimenté (la tension chute). Si c'est le cas alors la diode rouge du Pi3 ne s'allume pas, même si le Pi3 fonctionne. On peut vérifier la tension du Pi3 entre les pins 2 et 6 du GPIO; elle doit être entre 4.75V et 5.25V.

Le système d'exploitation

On utilise un système qui s'appelle retropie. Pour l'installer il suffit de télécharger l'image sur https://retropie.org.uk/download/, d'insérer la carte MicroSD dans un lecteur et de “flasher” l'image sur la carte, par exemple avec l'excellent programme Etcher https://etcher.io/ disponible sur toutes les plateformes.

Attention il ne faut pas acheter n'importe laquelle des cartes microSD, certaines sont plus performantes que d'autres, et certaines ne fonctionnent pas du tout. Pour des benchmarks: http://www.pidramble.com/wiki/benchmarks/microsd-cards

Une fois la carte flashée, on lance le Pi3 avec un clavier et un écran. Après quelques configs on tombe sur l'écran de l'émulateur. Il peut y avoir un problème d'écran quand on redémarre le système, en particulier avec les vieux écran VGA ou certain écrans HDMI. Pour plus d'infos: https://github.com/retropie/retropie-setup/wiki/Video-Issues

Ensuite on peut faire quelques configs dans “raspi-config”, expliquée dans: https://hiob.fr/configurer-retropie/

  • changer les locales
  • changer le clavier en azerty
  • configurer le wifi
  • mettre le ssh (interfacing option)

Pour se connecter en ssh depuis un autre ordi, noter l'adresse IP accessible depuis le menu de config (show IP), puis: ssh pi@ip_adress; pass: raspberry

L'écran

Les possibilités de brancher un écran sont multiples sur le Pi3: voir http://www.sudomod.com/game-boy-zero-screen-alternatives/

J'ai choisi un écran composite pour plusieurs raisons:

  • c'est pas cher
  • la qualité est moyenne ce qui garde un effet rétro
  • la prise HDMI reste libre pour pouvoir brancher la console portable sur une télé, un écran ou un projecteur HDMI
  • les connecteurs GPIO du Pi3 restent libres pour pouvoir brancher les boutons de la console, ce qui évite d'ajouter un controleur

La plupart des écrans composites fonctionnent en 12V. Il y a donc 2 possibilités:

J'ai choisi la 2ème option sur le test illustré en dessous sur la photo. Pour prendre le signal vidéo du Pi3 il suffit de mettre une pince crocodile à l'entrée de la prise TRRS comme expliqué ici: https://www.instructables.com/id/Raspberry-Pi-2-Quick-n-Easy-RCA/

Les boutons

Pour controler les boutons on peut soit utiliser un controleur comme le teensy, ou bien contrôler les boutons directement avec les GPIO du Raspberry. La 2eme option permet de gagner de la place. Un utilitaire permet ensuite de programmer facilement Retropie pour configurer les boutons: Easy way to setup the controller buttons via GPIO

Souder les boutons

Le programme utilise le schéma suivant pour souder les différents boutons aux GPIO:

GPIO04 - 'UP' button
GPIO07 - 'DOWN' button
GPIO27 - 'LEFT' button
GPIO22 - 'RIGHT' button
GPIO05 - 'A' button
GPIO06 - 'B' button
GPIO13 - 'X' button
GPIO26 - 'Y' button
GPIO23 - 'ENTER' button
GPIO12 - 'SELECT' button
GPIO16 - 'LEFT Shoulder' button
GPIO20 - 'RIGHT Shoulder' button

GROUND - Connect to any ground pin

Les GPIO sont numérotés ici: https://pinout.xyz/

Il est possible d'utiliser un schéma différent, il suffit de changer ensuite le fichier retrogame.cfg

J'ai utilisé une plaque de prototypage pour souder les boutons:

Bien tester le soudage avec un multimètre, en mettant un connecteur sur le GROUND, et l'autre sur le GPIO correspondant au boutons, et vérifier que la connexion est bonne en appuyant sur le bouton.

Installation du programme

  • dézipper le programme et copier le dossier “Adafruit-Retrogame” dans le dossier “/home/pi” de la distribution Retropie sur la carte SD.
  • Changer le retrogame.cfg si le schéma de soudage est différent
  • Se connecter avec une console en ssh au Raspberry
  • Éditer le fichier “/etc/rc.local” en root avec par exemple la commande “sudo nano /etc/rc.local”
  • Puis faire “sudo bash /home/pi/Adafruit-Retrogame/Setup-Retrogame.sh”
  • Allumer le Raspberry, qui devrait ensuite rebooter automatiquement
LDAP: couldn't connect to LDAP server
wiki/projets/console_portable.1522876183.txt.gz · Dernière modification: 2018/04/04 21:09 de pacome