[PROJET] Hybride tablette/console

Bonsoir et joyeux Noël à tous !

Attention, pavé à venir.

I. Introduction

J’ai un projet qui me trotte dans la tête depuis quelques temps maintenant. J’ai actuellement une GPD Q9 qui m’a servie lors de mes études en jeu vidéo que j’ai acheté il y a six ans. Pour ceux qui ne connaissent pas, c’est une sorte de grande PSP/Switch Lite qui tourne sous Android. C’est une console Android avec écran tactile, deux joysticks, et de nombreux boutons (A, B, X, Y, , L1, L2, R1, R2, Select, Start, Vol+ Vol-, et Power). Cela fait maintenant six ans que je l’ai et la tablette se fait vieille. La batterie a gonflé ce qui a endommagé la dalle, et elle est en Android 4.4… Etant donné que je ne trouve pas vraiment LA tablette/console qui me convient sur le marché, je me suis dit que ça pourrait être un projet sympa pour commencer à bidouiller sur Raspberry.

J’ai un ami qui s’y connait pas mal, il bricole déjà sur Raspberry et Arduino. Mais n’ayant pas non plus la science infuse je me permets de faire un post sur le forum pour partager les info’ que j’ai mais aussi pour avoir votre aide.

II. Cahier des charges

On a fait un petit cahier des charges, pour savoir dans l’idéal ce que j’aimerais sur cette tablette :

  • Affichage : Ecran tactile capacitif entre 7" et 10" mais plutôt un 10"
  • Boutons : L’idéal, les mêmes boutons que sur ma GPD, A, B, X, Y, , L1, L2, R1, R2, Select, Start, Vol+ Vol-, et Power
  • Son : Un haut parleur de chaque côté pour le stéréo ET un port jack pour y brancher un casque ou des écouteurs
  • Batterie : Parce que ça restera un objet de mobile, et j’aimerais aussi une jauge avec des LED pour indiquer le niveau de batterie et bien sûr un port (USB-C par exemple) pour recharger le tout.
  • Stockage : SSD de préférence car pus viable qu’une micro-SD.

Alors j’ai bien conscience que je risque d’avoir une grosse brique dans les mains et pas un truc tout fin. Mais si j’arrive à mener à bien ce projet, ça sera une tablette que je pourrais réparer, voire améliorer… Et ça pour moi ça n’a pas de prix. Je fais déjà ça pour mon PC, si je peux mettre les mains dans le cambouis pour ma tablette ce serait avec plaisir, et ça me permettra d’apprendre de nouvelles choses.

III. Réflexions et prévisions

  • Refroidissement ? Il parait que le Pi4 a tendance à chauffer.
  • Batterie ? Il faudra une carte avec les cellules de la batterie afin de gérer la sécurité, les charges et décharges.
  • Son ? Une carte supplémentaire pour la gestion du son et le basculement haut-parleurs/casque.

IV. Composants

1. Raspberry

Pour la base je comptais partir sur le Raspberry P4 en 8Go de RAM pour avoir de la ressource et tenir le plus longtemps ma tablette.

2. Ecran

J’ai commencé à regarder pour différents écrans, et j’ai commencé à zieuter les cartes qui se branchent en USB sur le Pi qui permettent d’avoir des boutons et joysticks. Je n’ai encore rien acheté, je compte commander quand je serais bien arrêtée et que j’aurais une idée bien précise des modèles d’éléments qu’il me faut.

Pour l’écran, j’en ai retenu plusieurs, mais celui qui me branche (vous l’avez ? :stuck_out_tongue:) le plus c’est celui-là :
https://fr.aliexpress.com/item/1005002784101889.html?spm=a2g0o.productlist.0.0.e1bf11d0d9vDOz&algo_pvid=5c51a396-65e8-4a78-b218-354726ec4599&algo_exp_id=5c51a396-65e8-4a78-b218-354726ec4599-29&pdp_ext_f={« sku_id »%3A"12000022169334987"}&pdp_pi=-1%3B101.07%3B-1%3B-1%400.200000%3BEUR%3Bsearch-mainSearch
Il me plait parce qu’il est à la bonne taille ; il a quatre fixations derrières (comme ça pas besoin de coller la dalle à la coque); on peut le brancher en HDMI+USB, cela permet d’économiser des GPIO ; on peut fixer le Pi dessus.
La question maintenant c’est le branchement… Mon ami et moi on se pose des questions… Quand on regarde la quatrième image, on observe qu’il y a au centre un HDMI, et un USB où il est marqué Touch. Donc théoriquement je pourrais brancher avec les connecteurs solides l’écran sur le Pi4. Mais sur le côté gauche, il y a de haut en bas un HDMI « Display », et deux USB nommés « Touch » et « Power »… Du coup mon ami et moi on se pose la question s’il n’est pas AUSSI nécessaire de brancher l’un des deux ports au Pi en plus des ports au centre de l’écran pour que ce dernier fonctionne correctement. Parce que plus bas dans la page il y a un exemple avec un Pi4 branché, il y a l’air d’avoir la connexion HDMI centrale de prise, le micro-USB du centre prise également, mais en plus il y a le micro-USB « Touch » sur le côté qui est branché avec un câble vers un des ports USB du Pi… Je ne sais pas si c’est pour montrer tous les branchements possibles… Ou alors s’il est nécessaire d’avoir un HDMI et les deux micro-USB « Touch ». Parce qu’à ce moment là, à quoi sert le micro-USB « Power » ?


Vanille, la newbPie

L’image #4 montre sans les cablages, sur l’image #3 tu vois comment relier l’écran au Raspberry, en partie, mais perso, ce n’est pas l’écran que je choisirais pour le projet car tu auras un cable visible sur le côté pour relier le HDMI et le USB, le USB offre le « TOUCH », et un autre cable USB pour alimenter l’écran. Tu pourrais arriver à cacher le câble HDMI connecté sur le côté en utilisant un « ribbon », mais pour le USB, ce ne sera pas vraiment possible.

SI tu veux sauver le GPIO, faut tu trouve un écran qui ce connecte directement sur la sortie « Display » du Raspberry, soit en DPI comme ce modèle; https://www.waveshare.com/7inch-lcd-for-pi.htm

Ton choix d’écran inclue le support audio, alors il te serais de trop, si tu songe à dévier l’audio sur un contrôleur pour la gestion Speaker/Headphone.

SI tu ajoute des boutons, le Touch est optionnel, et le Touch n’est pas pris en charge (native) sur les OS de jeux, comme Retropie.

Mais regarde les projets kits ici, peut-être un modèle ferais ton bonheur; https://www.waveshare.com/product/raspberry-pi/portable-gaming.htm

Eh beh en fait après moultes recherches, j’ai fini par trouver un autre vendeur avec plus d’explications. Et de fil en aiguille j’ai pu trouver le user manual de cet écran. Il s’avère que les ports sur le côté sont là par facilité pour brancher sur un PC tandis que les ports centraux sont faits pour y mettre un Raspberry. Du coup vu que je n’aurais pas l’utilité des ports sur le côté, je peux y placer ce que je veux.

Je ne suis pas pour l’instant arrêtée sur un OS en particulier, je verrais ce qui m’arrange le plus. Mon ami m’a parlé d’un possible multiboot (soyons fous). J’ai vu qu’on pouvait faire ça avec Berryboot. Et j’ai vu aussi qu’il existait un Android installable sur RPi, c’est LineageOS si mes souvenirs sont bons. Parce qu’effectivement tous les OS ne prennent pas en charge le Touch. Je voudrais pouvoir au moins faire des recherches sur le net, lire, et jouer à un ou deux jeux, principalement Pokemon Revolution Online qui est développé sur Android, Windows, Mac, et Linux. Sur ma GPD j’utilise autant le tactile que les boutons. Les deux me sont importants. Je devrais peut-être faire des concessions, je verrais en temps voulu.

Je vais commencer à regarder pour les boutons. Pour l’instant je suis bloquée, je trouve plein de cartes qui permettent d’y mettre des boutons et des joysticks mais généralement il y a un emplacement pour un joystick 5 broches et un emplacement pour un joystick 2 broches. D’où mon post il y a quelques jours dans la catégorie des accessoires… Certaines de ces cartes sont vendues comme étant compatibles avec des PS3/Switch/PC, mais du coup je ne comprends pas comment peut-on avoir deux joysticks fonctionnels… Il doit y avoir une donnée que je n’ai pas saisie parce que je pensais que maintenant, dans les manettes de jeux des consoles récentes, c’étaient que des joysticks 5 broches…

Le 5 broche c’est le multi-directionnel (N-S-E-W), le 2 broches sont les pressions (I/O). Sinon il doivent parler en numérique.

Le système ne vois jamais deux manettes, il voit qu’une série de bouton avec la plupart des modules DIY, alors lors du « setup » de l’arcade, il faut définir les touches du J1 et du J2.

Pour le BerryBoot, vérifie la compatibilité avec le RPi4, il me semble qu’il ne l’est pas, ou que les packages ne sont pas compatible avec la v4 du Raspberry. Le BerryBoot à besoin d’image pré-configuré, et ne peut pas utiliser les images traditionnel offert pour les Raspberry.

Tu trouveras des images ici; https://berryboot.alexgoldcheidt.com/images/

D’accord, donc éventuellement je pourrais prendre deux cartes pour avoir mes deux joysticks 5 broches si jamais je n’arrive pas à trouver de carte qui répond à mes besoins (ou alors faudra carrément partir sur du Arduino comme me suggérait mon ami avant qu’on ne décide de trouver une carte qui possède déjà un contrôleur et qui sort de l’USB). J’vais regarder du côté des projets d’arcade, j’ai déjà zieuté des kits qui avaient l’air sympa.

Je vais me renseigner, je ne connais pas du tout Berryboot, va falloir que j’apprenne ce que c’est, et comment m’en servir !

En tout cas merci de ta réponse, ça m’éclaire déjà bien !

Ce que je te suggère, est de penser en premier au contrôleur du J1, car c’est celui qui sera sur la console directement, le J1, ne pourrais pas jouer sur la console directement, alors une manette en USB est requise. Les contrôles du J1 peuvent etre sur le GPIO directement.

Après, tu peu configurer une Switch pour passer du mode Jeu à mode PC par exemple, qui va reprendre les touches Jeux pour en faire une version PC, comme le contrôleur devient la souris, L et R tes click de souris, Start pour « Enter » etc… à ton choix. Tu peux aussi faire un script qui détect si le HDMI est utilisé (et non l’écran LCD du projet) et ainsi forcer le mode USB pour les Joysticks.

En tout cas, plusieurs possibilités, selon le but de ton projet, et de tes talents.