Gamoover

Si vous êtes nouveau, n'hésitez pas à vous présenter ici et à poser toutes vos questions, meme si elles vous paraissent ridicules... Gamoover regroupe une communauté de passionnés prêts à vous aider ! Bienvenue à vous ;)

[WIP] Besoin d'aide sur borne Cruis'N USA !

Démarré par LeMetalleuxGeek, Samedi 28 Novembre 2020, 22:26:11 PM

LeMetalleuxGeek

Ok donc je rectifie mon précédent message car j'ai réussi à trouver une solution à chacun des problèmes :

- Au fur et à mesure des tests, j'ai malheureusement laissé trainé les deux fichier Mame64.dll et Mame32.dll dans le dossier racine de MAME. En refaisant la manip d'installation du plug in et en supprimant le Mame64.dll ça a fonctionné, et les jeux MAME compatibles marchent très bien !
- Pour Daytona je ne sais pas vraiment ce qui a rétabli le soucis. J'ai touché un peu les réglages du plug, baissé la force du FFB, c'est devenu bien mieux, puis j'ai re-augmenté au fur et à mesure, et j'ai maintenant un FFB très convainquant sur le jeu
- Pour Mario Kart pareil, je ne sais pas vraiment comment je me suis démerdé, mais en refaisant plusieurs fois la manip d'installation ça a fini par fonctionner. Je précise par ailleurs que le retour de force sur le jeu Mario Kart DX est vraiment excellent !

J'arrive donc doucement mais sûrement vers la fin de ce projet. Il ne me reste plus qu'à m'occuper des boutons lumineux... Je vous tiens au courant !  ^-^

LeMetalleuxGeek

Hello ! Allez donc je déterre un peu ce topic...  :D

Donc la borne est belle et bien fonctionnelle et parfaitement jouable et depuis tout ce temps je me suis bien permis de bien m'éclater dessus ! Il ne manquait plus que le seul petit truc facultatif pour bien la finir : le câblage et la config des boutons lumineux et du race leader. Je m'y suis donc (enfin) attelé hier soir... Et bien sûr, je rencontre plein de problèmes !  ;D Donc je vais essayer de faire une petite liste pour résumer la situation :

- Sur conseil d'Aganyte, j'ai utilisé comme alimentation supplémentaire un chargeur iPhone de type "bloc USB à brancher sur secteur". J'ai mesuré environ 5,2V de tension à l'alim une fois branchée, les boutons lumineux originaux du panel étant censés être des lampes 6,3V.
- J'utilise donc l'ULN2003 comme relais et j'ai tout branché suivant un câblage détaillé que m'avait fait Aganyte sur papier, je ne pense pas avoir fait d'erreur sur mon câblage

Voilà donc les soucis que je rencontre :

- Une fois tout câblé, j'utilise le moniteur du logiciel Arduino pour tester mes lampes avec la commande "O00OFF" pour les allumer. Bon, je n'ai aucun de mes trois boutons "View" qui s'allument, mais après plusieurs tests et branchements différents je pense que les ampoules sont simplement mortes. J'ai par contre bien mes deux boutons "Start" et "Radio" (un bouton similaire au start mais placé juste au dessus) qui s'allument dès que j'entre la commande... Mais la lumière est extrêmement faible ! A vrai dire, si la lumière de la pièce est allumée, on distingue assez mal le bouton illuminé du bouton non illuminé... Etrange ? L'ampoule du bouton "Radio" était d'origine et celle derrière le bouton "Start" est une ampoule qu'Aganyte m'a donné lorsqu'on s'est rencontrés.

- J'arrive donc tout de même à illuminer ces boutons depuis le moniteur, par contre via le feeder, c'est tout autre chose... Il m'est simplement impossible d'obtenir des résultats. J'ai essayé de configurer le feeder pour trois jeux différents tournants sur trois émulateurs différents (à savoir Outrun/MAME, Outrun 2SP/Tecknoparrot et Daytona USA/Model2). Même en allant dans le menu test pour vérifier les Output, rien ne s'allume. Y a t il des choses particulières à savoir sur la configuration du Feeder pour les Output qui ne sont pas forcément précisées dans le tuto de NJZ3 ? A vrai dire je ne sais pas tellement quoi faire de plus au stade où j'en suis !

PS : N'oubliez pas que je suis un newbie en électronique...  :o En coupant l'embout du chargeur iPhone (là où y a la connectique) il n'y avait pas deux fils, mais 4. J'ai utilisé seulement le fil noir et le fil rouge, et la tension entre les deux était mesuré à 5,2V. Il me reste donc deux de ces quatre fils qui demeurent inutilisés. Je ne sais pas si ça peut avoir un rapport avec le faible éclairage des lampes ?

njz3

Les lampes c'est un peu compliqué car il faut adapter le feeder pour pratiquement chaque jeu.
Essaie déjà de faire marcher Daytona sur Model 2 car c'est ce qui a de mieux documenté, et ensuite passe sur Outrun/MAME car c'est très simple de mise en oeuvre.
Mets des screenshots de ta config ici ou dans le sujet du BFF afin que je puisse t'aider. Sans voir ce que tu as mis, c'est très difficile de diagnostiquer.


Little_Rabbit

Salut,

Je suis ton sujet de très très loin, et ne connais rien aux différents modules déjà mis en œuvre :).

Mais pour les ampoules de tes boutons, as-tu essayé tout simplement de les relier directement à ton chargeur USB ? S'allument-elles à pleine puissance dans ce cas ?

Cela permettrait d'évacuer le questionnement sur la puissance suffisante du chargeur, et savoir si tu as pris les bon fils. Les fils restant servent peut-être au contrôle de charge ? la sortie du chargeur est-elle asservie à ce retour de charge ?

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

LeMetalleuxGeek

Effectivement j'aurais dû essayer de les brancher en direct avec le bloc USB ! Mais je me dis que finalement, brancher ça sur le ULN2003 et envoyer l'ordre via le moniteur de l'arduino, ça revient un peu au même. Voilà donc ma configuration pour le Daytona :



Je précise que j'ai aussi essayé avec le mode MAME_WIN mais que dans les deux cas, rien n'y fait. Les boutons s'allument avec l'ordre donné par le soft Arduino mais jamais en dehors.

PS : Ceci dit, je me prends la tête sur un problème bien plus important maintenant... C'est à se rendre fou, car ça surgit comme ça de nulle part et j'ai aucune idée d'où ça vient ! Il s'agit d'un problème sur ma pédale de frein. De manière aléatoire, lors d'une pression, il y a un faux contact sur mon axe Y qui se met à moduler un peu n'importe comment alors que la pédale est relâchée (= dans un jeu, ça se met donc à freiner d'un coup) jusqu'à ce que je represse éventuellement la pédale. Ce problème rend toute la borne complètement inutilisable. Et chose étrange que j'ai pu constater, lors d'une phase de "bug", mon axe X (mon volant) a une incidence sur la valeur de mon axe Y pendant le bug !!! Si le volant est complètement tourné à gauche, l'amplitude de la modulation "bugguée" est faible, tandis que si il est braqué à droite, c'est l'inverse, l'amplitude de mon axe Y atteint les valeurs maximales. Je me rends vraiment fou car je ne trouve pas du tout l'ogigine de ce problème :

- J'ai inversé les branchements sur l'Arduino de la pédale de frein et d'accélération : c'est mon axe Z qui se met à buguer. J'ai également inversé les branchements sur les pins arrière de la borne : même résultats. J'en déduis donc que le problème ne vient pas de l'arduino mais de la borne en elle même puisque dans tous les cas, c'est ma pédale de gauche qui pose problème

- J'ai débranché toutes les choses qui pouvaient potentiellement intéreférer : le PWM2HAPP, l'alimentation 5V des boutons et mon alimentation 12V du topper : rien n'y fait, le problème persiste quand même.

- J'ai essayé de voir si il y avait un problème niveau software en refaisant des calibrations, en changeant la valeur des courbes dans le feeder, etc : je n'obtiens aucun résultat non plus

Là pour le coup je suis vraiment désespéré. Car sans lumière, j'ai quand même pu profiter d'une borne parfaitement fonctionnelle durant plusieurs mois et là, d'un coup, un problème la rend complètement inutilisable et je n'arrive pas du tout à en identifier l'origine !

Aganyte

Change les potards et vérifie toutes les masses.

LeMetalleuxGeek

Qu'entends-tu par "changer les potards" et comment je peux vérifier une masse ?  =:))

njz3

Pour la pédale, tu as un problème de masse flottante quelque part, un fil a du se déconnecter..

Pour les lampes, la config est bonne.
Peux-tu donner la sortie du log en mode Debug et sous forme de fichier ? (case Log To File à cocher puis relance le soft).
Es-tu sûre d'avoir bien mis le script spécial pour model 2 et Daytona USA (Saturn Ads) ?
Peux-tu essayer Outrun en mode MAME_WIN (ne pas oublier d'activer les sorties dans MAME via la ligne de commande).



Little_Rabbit

Salut,

J'allais dire la même chose qu'Aganyte : vérifie tes potentiomètres et tes masses.

Vérifie que le potentiomètre n'est pas encrassé, que son curseur est bien en contact avec la piste carbone sur toute sa course. Un peu de graisse siliconée peut aider à cela.

Les extrémités de tes potentiomètres sont reliés au +5V et à la masse, le curseur quant à lui est relié à l'entrée du convertisseur analogique/numérique de l'Arduino :




Par vérifier les masses, on entend qu'il faut que tu vérifies tous tes fils de masse, qu'il n'y en ait pas un de cassé ou dessoudé. Il faut donc à l'ohmmètre, en mode test de continuité (celui où ça bip ;)), mettre ta pointe noire à la masse de l'alimentation ou de l'Arduino, et vérifier qu'il y a bien continuité avec les masses au niveau des potentiomètres.

Là on a l'impression que l'Arduino mesure n'importe quoi parce que ce qu'on lui soumet n'a pas de référentiel, c'est à dire pas de masse commune, référence à laquelle la mesure doit être faite :).

A+
Recherche bornes dédiées ou PCB originaux: Miss Pacman, Dig Dug, Galaga, Mappy, Asteroids, Battlezone, Missile Command, Tempest, Star Wars, Donkey Kong (+ Jr), Mario Bros, Moon Patrol, Defender, Joust, Frogger, Gyruss, Pooyan, Space Tactics, Zaxxon, etc. Flip : Gottlieb des années 80 (Spirit, Amazon Hunt, ...), Baby Pac Man. Divers :  Ice Cold Beer => Trois fois rien quoi ! :D
Ma séance sur le divan : c'est grave Docteur ? :-\
Ma gaming room, ma storage room

LeMetalleuxGeek

Alors j'ai pu régler certains problèmes, à savoir :

- Le problème de pédale qui fait nawak est, pour l'instant, à priori réglé. C'était le fruit d'un combo entre une alimentation foireuse et une multiprise de mauvaise qualité
- Mes lumières s'allument maintenant toutes correctement avec les commandes envoyées depuis le moniteur arduino. Il fallait en réalité les alimenter en 12V selon le conseil d'un connaisseur des bornes Cruis'N USA. J'en ai profité pour tout remplacer par des led neuves 12v que j'avais sous la main.

Il me reste donc le problème de la programmation des lampes ! Et là j'ai du rater un épisode... Il faut un fichier spécifique pour le Model 2 ? Ou seulement Daytona ?

Pour MAME, quelle ligne de commande je dois rajouter à l'execution ?

njz3

#90
Pour Daytona Saturn Ads et les autres jeux model 2, il te faut copier les scripts lua qui sont disponibles dans le dossier gameassets de BackForceFeeder vers le répertoire scripts de model2. Fais-moi un screenshot de ton explorateur pour confirmer qu'ils sont au bon endroit.
Tu lances l'émulateur avec Daytona Saturn Ads et tu vas dans le menu de test du jeu, puis test outputs afin que le jeu fasse flasher les lampes à tour de rôle.
Ensuite, dans le BackForceFeeder, il faut voir si les sorties lampes sont bien configurées (ca avait l'air correct sur ton dernier screenshot) et bien détectées. Pour cela, ouvre la fenetre log et mets toi en Debug. Dans la fenêtre tu dois voir passer des informations de lampes si elles sont détectées. Fais un screenshot.
Idéalement, dans la fenetre App&hardware, tu coches "log to file" et tu relances le soft afin d'avoir des fichiers logs. Ceux-ci sont générés dans le dossier Mes Documents/BackForceFeeder/Logs. Quand tu en as un, attache le ici ou envoie le moi pour que je puisse y jeter un oeil.

Pour ce qui est de MAME, il faut lui passer "-output windows" en ligne de commande. Voir https://easyemu.mameworld.info/mameguide/command_line/osd_output/output.html

LeMetalleuxGeek

#91
J'ai donc copié les fichiers pour l'émulateur Model 2. Il n'y a pas de ligne de commande spécifique à entrer ensuite, je lance le jeu come d'habitude ? Je n'ai toujours rien, mais j'ai fait le fichier log que tu m'as demandé.

Après paramétrage MAME dans le feeder et l'ajout de la commande "-output windows", je n'ai aucun signe non plus dans Outrun... Bizarre tout ça !

IMPOR|    0,012660:[MANAGER] Program configured for PWM_CENTERED
DEBUG|    0,015913:[USBSerial] The following serial ports were found:
DEBUG|    0,015915:[USBSerial] COM5
DEBUG|    0,015917:[USBSerial] Attempting to connect each with 1000000bauds...
IMPOR|    1,122230:[MANAGER] Found io board on COM5 version=0.1.9.0 type=IO BOARD ON MEGA2560
DEBUG|    1,123942:[TIMER] Timer caps = 1 -> 1000000
DEBUG|    1,124058:[TIMER] Set Timer 1ms
DEBUG|    1,258555:[FEEDER] Vendor: Shaul Eizikovich Product :vJoy - Virtual Joystick Version Number:2.2.1.0
DEBUG|    1,271924:[FEEDER] Version of Driver Matches DLL Version (221)
DEBUG|    1,280203:[FEEDER] vJoy Device 1 is free
DEBUG|    1,294122:[FEEDER] vJoy Device 1 capabilities:
DEBUG|    1,294129:[FEEDER] Numner of buttons 16
DEBUG|    1,294129:[FEEDER] Numner of Continuous POVs 0
DEBUG|    1,294130:[FEEDER] Numner of Descrete POVs 0
DEBUG|    1,294364:[FEEDER] Axis X Yes
DEBUG|    1,294537:[FEEDER]  Min= 0 Max=32767
DEBUG|    1,294541:[FEEDER] Axis Y Yes
DEBUG|    1,294543:[FEEDER]  Min= 0 Max=32767
DEBUG|    1,294545:[FEEDER] Axis Z Yes
DEBUG|    1,294547:[FEEDER]  Min= 0 Max=32767
DEBUG|    1,294549:[FEEDER] Axis RX No
DEBUG|    1,294551:[FEEDER] Axis RY No
DEBUG|    1,294552:[FEEDER] Axis RZ Yes
DEBUG|    1,294555:[FEEDER]  Min= 0 Max=32767
DEBUG|    1,294556:[FEEDER] Axis SL0 No
DEBUG|    1,294558:[FEEDER] Axis SL1 Yes
DEBUG|    1,294560:[FEEDER]  Min= 0 Max=32767
DEBUG|    1,294562:[FEEDER] Axis WHL No
DEBUG|    1,294564:[FEEDER] Axis AILERON No
DEBUG|    1,294565:[FEEDER] Axis RUDDER No
DEBUG|    1,294567:[FEEDER] Axis THROTTLE No
DEBUG|    1,294569:[FEEDER] Axis ACCELERATOR No
DEBUG|    1,294734:[FEEDER] Axis BRAKE No
DEBUG|    1,294736:[FEEDER] Axis CLUTCH No
DEBUG|    1,294738:[FEEDER] Axis STEERING No
DEBUG|    1,295478:[FEEDER] Acquired: vJoy device number 1.
IMPOR|    1,298046:[MANAGER] Initializing IO board
IMPOR|    1,298428:[USBSerial] Performing IO board initialization
DEBUG|    1,330973:[USBSerial] IOBOARD:Initialization started
DEBUG|    2,343173:[USBSerial] IOBOARD:Initialization done
IMPOR|    2,343177:[USBSerial] IO board initialization done
INFOR|    2,343654:[MANAGER] Configuring IO board for pwmmode=5
INFOR|    2,344346:[MANAGER] Configuring IO board for wheelmode=2
INFOR|    2,344584:[MANAGER] Configuring IO board for pedalmode=5
INFOR|    2,344748:[MANAGER] Configuring IO board for ffbcontrollermode=0
DEBUG|    2,345584:[TIMER] Timer caps = 1 -> 1000000
DEBUG|    2,345589:[TIMER] Set Timer 1ms
DEBUG|    2,352481:[USBSerial] IOBOARD:Set byte pwmmode to 5
DEBUG|    2,352614:[USBSerial] IOBOARD:Set byte wheelmode to 2
INFOR|    2,354591:[FFBMANAGER] [UNDEF] step 0 to [DEVICE_INIT] step 0
ERROR|    2,357163:[MANAGER] IO board Failing with Missing axis configuration for index 0
INFOR|    2,357434:[FFBMANAGER] [DEVICE_INIT] step 0 to [DEVICE_RESET] step 0
DEBUG|    2,365282:[FFBMANAGER] FFB Reset all effects
INFOR|    2,365310:[FFBMANAGER] [DEVICE_RESET] step 0 to [DEVICE_READY] step 0
IMPOR|    2,365335:[MANAGER] Sanity check for control set Model2-Daytona: fixed config issues!
IMPOR|    2,867442:[MANAGER] Re-connecting to same IO board on port COM5
DEBUG|   19,587018:[FFBMANAGER] FFB Got device reset
INFOR|   19,587038:[FFBMANAGER] [DEVICE_READY] step 0 to [DEVICE_RESET] step 0
DEBUG|   19,589803:[FFBMANAGER] FFB Got stop all effects
DEBUG|   19,590731:[FFBMANAGER] FFB set device gain 1
DEBUG|   19,591493:[FFBMANAGER] FFB Reset all effects
INFOR|   19,591508:[FFBMANAGER] [DEVICE_RESET] step 0 to [DEVICE_READY] step 0
DEBUG|   19,602954:[FFBMANAGER] Effect 1 [NO_EFFECT] to [SPRING]
DEBUG|   19,603373:[FFBMANAGER] Effect 2 [NO_EFFECT] to [FRICTION]
DEBUG|   19,604187:[FFBMANAGER] Effect 3 [NO_EFFECT] to [CONSTANT_TORQUE]
DEBUG|   19,604739:[FFBMANAGER] Effect 4 [NO_EFFECT] to [CONSTANT_TORQUE]
DEBUG|   19,606135:[FFBMANAGER] Effect 5 [NO_EFFECT] to [SINE]
DEBUG|   22,564583:[FFBMANAGER] FFB Effect 1 got stop effect
DEBUG|   22,564749:[FFBMANAGER] FFB Effect 5 got stop effect
DEBUG|   22,564939:[FFBMANAGER] FFB Effect 3 got stop effect
DEBUG|   22,565092:[FFBMANAGER] FFB Effect 4 got stop effect
DEBUG|   22,565223:[FFBMANAGER] FFB Effect 2 got stop effect
DEBUG|   23,041696:[FFBMANAGER] FFB Effect 1 got stop effect
DEBUG|   23,042624:[FFBMANAGER] FFB Effect 5 got stop effect
DEBUG|   23,043121:[FFBMANAGER] FFB Effect 3 got stop effect
DEBUG|   23,043293:[FFBMANAGER] FFB Effect 4 got stop effect
DEBUG|   23,043658:[FFBMANAGER] FFB Effect 2 got stop effect
DEBUG|   43,297168:[TIMER] Restore Timer 1ms
IMPOR|   43,305630:[OUTPUTS] Outputs manager terminated
INFOR|   43,481513:[RAWOUTPUTS] Thread teminated
INFOR|   43,499076:[FFBMANAGER] [DEVICE_READY] step 0 to [UNDEF] step 0

LeMetalleuxGeek

#92
Voilà l'endroit où j'ai collé les fichiers du feeder, je pense pas m'être trompé.


njz3

Tes fichiers scripts sont au bon endroit.

Citation de: LeMetalleuxGeek le Lundi 01 Février 2021, 14:09:56 PM
J'ai donc copié les fichiers pour l'émulateur Model 2. Il n'y a pas de ligne de commande spécifique à entrer ensuite, je lance le jeu come d'habitude ? Je n'ai toujours rien, mais j'ai fait le fichier log que tu m'as demandé.
Non, il me semble qu'il n'y a rien d'autre à faire que copier les scripts. Il te faut lancer le jeu et aller en mode Test dans la page Outputs.

Citation de: LeMetalleuxGeek le Lundi 01 Février 2021, 14:09:56 PM
IMPOR|   43,305630:[OUTPUTS] Outputs manager terminated
INFOR|   43,481513:[RAWOUTPUTS] Thread teminated
Ca, ça veut dire que tu es bien en mode RAW_MEMORY_READ. Mais apparemment il n'y a aucune info qui remonte. Ouvre la fenêtre des outputs et fait un reset du mapping à tout hasard. Pendant que le jeu tourne, essai de changer de control set (par exemple force sur MAME Outrun) et de revenir sur celui de Model2-Daytona pour voir ce qu'il y a d'écrit dans le log.

Citation de: LeMetalleuxGeek le Lundi 01 Février 2021, 14:09:56 PM
Après paramétrage MAME dans le feeder et l'ajout de la commande "-output windows", je n'ai aucun signe non plus dans Outrun... Bizarre tout ça !
Oui curieux. Est-ce que tu vois dans la fenetre log des infos ?

Au fait, les fichiers de control set, c'est ceux qui sont donnés dans ma page, ou tu as fait les tiens depuis 0 ? Dans le log on voit que le sanity check trouve des soucis et que l'axe 0 est en défaut.
Ceux que je donne sont anciens (c'était pour une 0.4.3) et ne sont pas compatibles avec la dernière version du soft (0.4.10-2). Tu peux les utiliser comme base, mais je te conseille de reconfigurer au moins les axes, les boutons et les sorties en faisant un "reset".



LeMetalleuxGeek

Attends mince, je crois que je viens de comprendre que je suis passé à côté de toute une étape... Je n'ai encore rien touché dans l'onglet "Output" du soft. Je crois que je suis censé assigné mes lampes à des adresses virtuelles ? Je viens de relire ton tuto pour être sûr mais je ne crois pas avoir vu de mention sur cette partie ? J'ai directement rempli les informations dans "Control set" en pensant que le soft lirait les informations directement depuis les bons pins de l'Arduino.

Il y a donc quelque chose à faire dans cet onglet "Output" j'imagine ? Comment est-ce que ça fonctionne ? Est-ce que j'ai raté un tuto quelque part ?

njz3

Pour les lampes, il n'y a pas encore de tutos complet, surtout que le soft a pas mal évolué...
Dans cette fenetre Output, commence par faire un Reset All, et regarde si les cases à cocher fonctionnent.