Outils pour utilisateurs

Outils du site


utiliser_une_gbs8200_un_esp8266_pour_brancher_une_playstation_en_hdmi_-_upscaler_open-source

Utiliser une GBS8200 + un ESP8266 pour brancher une playstation en HDMI - upscaler open-source

Cet article est en grande partie une traduction du wiki du projet gbs-control, augmenté des informations dont j'ai pu avoir besoin lors de la réalisation de mon installation.

Un grand merci à Rama, auteur du logiciel, pour son aide lors de mes démarches, et pour sa patience. Merci également aux membres du discord PSXdev pour leurs réponses à certaines de mes interrogations.

Matériel nécessaire

  • Un fer à souder
  • quelques cables Dupont femelle/femelle

Pour le mod c-sync sur la PSX :

  • une PSX équippée d'une carte mère PU-22 (SCPH-750x, et quelques SCPH-900x)
  • une résistance de 680 Ohms

Pour le système upscaler :

Aucune affiliation entre moi et les sites d'achat ci-dessus. C'est simplement le matériel que j'ai utilisé et je suis donc sûr que ça fonctionne avec ces références.

C-sync mod : remplacer le signal composite par la synchro du GPU

Afin de pouvoir obtenir une bonne qualité d'image, il faut obtenir de la psx plusieurs signaux pour la vidéo : R, G, B et S. S signifie “synchronisation” et pour pouvoir récupérer ce signal, il faut modifier légèrement la psx pour que le signal S soit envoyé sur la voie normalement dédiée au composite ( qui est un amalgame des quatre en temps normal ).

Une fois cette modification effectuée, il ne sera plus possible d'utiliser la PSX sans le GBS82xx, puisque le signale composite n'est plus présent à la sortie A/V de la console.

Si vous ne désirez pas modifier la console, vous pouvez alternativement utiliser une “sync-stripper” qui re-extrait le signal S du composite, avec toutefois une légère baisse de qualité.

Comme on peut le voir ci-dessous, il s'agit de shunter le convertisseur numérique/analogique IC502 :

Sur la carte mère PU-22 présente dans les SCPH-7502, ça se traduit comme ça :

On voit à droite en rouge la voie CSYNC qui arrive de la pin 156 du GPU. À gauche, près de l'inscription L507, on aperçoit une résistance de 75 ohm qu'il faut déssouder.

On bridge ensuite ces deux points avec une résistance de 680ohm.

Deux autres installations :

Cette valeur de résistance peut varier de 500 à 2500 ohm, car c'est une résistance de tirage.

La sortie “A/V Multiout” de la PSX est donc désormais configurée pour émettre les signaux de cette façon ( en regardant la prise à l'arrière de la console, de gauche à droite ):

Num de Broche | Signal correspondant
              |
1             | Masse audio (AGND)
2             | Audio Gauche (AL)
3             |  Masse vidéo (VGND)
4             |  Audio droit (AR)
6             |  Synchro (CSYNC)
8             |  Masse RGB 
9             |  Bleu  (B)
11            |  Rouge (R)
12            |  Vert (G)

Pour la référence complète des broches de sortie du port A/V Multiout, voir ici : https://pinouts.ru/Game/PlayStationAV_pinout.shtml

Ce sont tous les signaux dont nous aurons besoin pour obtenir une image et le son.

Upscaler : GBS + ESP

Extraire les signaux vidéo de la péritel

Sur le GBS82xx, on utilise le connecteur P11 pour fournir GND+RGBS. La solution décrite ici consiste à utiliser une prise péritel femelle pour récupérer chaque signal et l'envoyer au bon endroit.

D'après cette page ; https://pinouts.ru/Audio-Video-Hardware/Scart_pinout.shtml ; on sera donc intéressés par les broches suivantes à la sortie du câble RGB :

Num de Broche | Signal correspondant
              |
4             | Masse audio (AGND)
2             | Audio Gauche (AL)
6             |  Audio droit (AR)
              |
5             |  Masse B
7             |  Bleu  (B)
              |
8             |  Masse G
11            |  Vert (G)
              |
13            |  Masse R
15            |  Rouge (R)
              |
17            |  Masse vidéo (VGND)
18            |  Masse vidéo (VGND)
20            |  Synchro (CSYNC)

Sources : https://pinouts.ru/Audio-Video-Hardware/Scart_pinout.shtml - https://konsolowo.pl/6350-home_default/rgb-scart-cable-for-psx-ps2-ps3.jpg

Bien qu'il soit possible de n'utiliser qu'un seul fil de masse pour l'ensemble des signaux (qui lierait donc les broches 4, 5, 8, 13, 17 et 18), il est recommandé d utiliser un fil par masse et de le tresser autour du câble du signal qu'il accompagne, ceci afin de limiter les interférences. Celles-ci se traduiront à l'écran par des moirés des effets visuels disgracieux.

Installation de gbs-control sur l'ESP8266

Configuration de l'IDE Arduino

Il faut dans un premier temps ajouter la librairie permettant à l'IDE de communiquer avec l'ESP. Après avoir installé Arduino IDE, rendez-vous dans “Fichier”>“Préférences”.

Dans le champ “URL de gestionnaire de carte supplémentaire, ajouter :

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Si une url est déjà présente dans ce champ, ajoutez simplement la nouvelle après une virgule pour que les deux soient prises en compte.

Validez, puis rendez-vous dans “Outils”, “Type de carte”, “Gestionnaire de cartes” et rechercher esp8266, puis l'installer.

Vous devriez maintenant voir apparaitre différents types de cartes ESP dans le menu “Type de carte”. Sélectionnez celle qui correspond à votre modèle.

Si vous n'êtes pas certain de votre modèle, choisissez “LOLIN(WEMOS) D1 R2 & mini”.

Vous devez encore configurer la fréquence du CPU :

“Outils” > “CPU frequency” à “160 MHz” “Outils” > “Flash size” à “4MB (FS:1MB OTA:~1019KB)” ( Troisième option ) “Outils” > “IwIP Variant” à “v2 Lower Memory”

Vous pouvez maintenant connecter votre ESP8266 à l'ordinateur.

Vérifiez dans “Outils” > “Port” que vous avez bien accès à celui-ci.

Installation de librairies supplémentaires : ESPAsyncTCP, ESPAsyncWebServer et ESP8266-ping

Il faut encore installer deux librairies avant de pouvoir utiliser l'upscaler.

Téléchargez sur le git du développeur “me-no-dev” les librairies suivantes :

https://github.com/me-no-dev/ESPAsyncTCP - Fichier zip
https://github.com/me-no-dev/ESPAsyncWebServer - Fichier zip

et décompressez les dans le dossier

~/Arduino/libraries
sous Linux,
ou
C:\Users\%USER%\Documents\Arduino\libraries
sous Windows.

La dernière librairie à installer est disponible depuis le gestionnaire de bibliothèque ; “Outils” > “Gestionnaire de bibliothèque” .

Recherchez et installez “ESP8266-ping”.

Compilation et téléversement de gbs-control

Vous pouvez maintenant télécharger gbs-control - Fichier zip

Décompressez l'archive et ouvrez le fichier `gbs-control.ino`. Vous devriez pouvoir vérifier et téléverser le sketch sans problème.

Avant de tenter le premier démarrage de votre upscaler, il reste quelques réglages à effectuer sur le GBS.

Connexion des différents composants

Ajout de la résistance de 100 ohms sur le GBS82xx

Il est nécessaire d'ajouter une résistance de 100 ohm entre S et GND sur le GBS. Il est possible de procéder comme sur l'image ci-dessus.

Vérification des potentiomètres

Vérifier que les potentiomètres près du connecteur P11 sont bien tournés au maximum vers la gauche. Dans l'idéal, ceux-ci seront dessoudés et remplacés par des liens directs (cf. image ci-dessus).

Installation du jumper

Pour utiliser l'ESP8266 comme contrôleur, il faut placer un jumper sur le connecteur P8.

Debug Pin

Pour le réglage automatique de l'image, l'ESP8266 doit avoir accès à certaines informations de timing. Pour cela, souder un câble sur la deuxième patte en partant de gauche (cf. photo ci-dessus) et la brancher à la broche correspondant à “MISO” sur l'ESP8266 ( GPIO 12 sur le schéma ci-dessous, pin 6 sur l'ESP).

Connexion du ESP8266 au GBS82xx

L'ESP8266 utilise les broches SDA et SCL du connecteur P5 :

SCL > SCL ou D1
SDA > SDA ou D2

Vous pouvez vérifier le pinout du module Wifi pour être certain que vous avez sélectionné les bonnes broches :

Il suffit de tracer sur votre adaptateur les GPIO 4 et 5 pour savoir à quelle broche vous connecter.

Alimentation électrique

Il est recommandé d'alimenter le GBS et l'ESP via une alimentation 5V de 2 à 3 ampères. La consommation des deux contrôleurs est d'environ 0.5 A. Privilégier une alimentation de qualité.

Connexion à l'interface web du upscaler

Une fois toutes les connexions effectuées et le upscaler alimenté, un point d'accès Wifi “gbscontrol” devrait apparaitre. Vous pouvez vous y connecter avec le mot de passe 'qqqqqqqq' (q * 8).

Vous pouvez modifier le SSID et le mot de passe du wifi aux lignes 73 et 74 du fichier `gbs-control.ino`.

Notes & Références

2020/06/21