Gamoover

[move]Pour vous aussi la chipo ne sera jamais qu'un bootleg de merguez (c)sushy18 ? Alors soyez les bienvenus sur Gamoover ! [/move]

Arduino et contrôles analogiques

Démarré par lipide512, Dimanche 09 Décembre 2012, 18:21:48 PM

chiourme

Citation de: lipide512 le Dimanche 09 Décembre 2012, 18:59:19 PM
Le projet peut s'adapter très facilement à vos besoins : vous pouvez aussi interfacer un panel 1 joueur digital + spinners par exemple... ce sera un de mes prochains wip pour faire évoluer une borne proprement et jouer à Arkanoid dans de bonnes conditions.

J'aimerai faire la meme chose avec un panel sega: spinner + joystick (mais analogique si possible).
Les branchements 5v et masse se font de la meme maniere que sur un potard de volant ?


lipide512

A priori c'est la même chose vu que l'in/out naomi est alimentée en 5v et 12v.
Faut tester pour être sûr... ;)

chiourme

Je n'utilise pas d'i/o Naomi. Ca serait pour un spinner type "taito/arkanoid".
Je pensais brancher les 5V + Masse sur la partie "Analogique" et Gauche + Droite sur la partie "Digitale".
Mais ca m'a l'air un peu bancal comme branchement...

lipide512

#67
Alors je te parle d'inout concernant tes joy analogiques sega - ils sont forcément alimentés en 5v ou en 12v - je penche plutot pour du 5v. Pour le reste, tu cables tes entrées comme tu le souhaites. Si tu courcircuites le 5v sur ton entrée analogique, cela correspondra au potard à fond.

Habituellement tu as +5v - curseur - masse
Il est fort probable que sur le pinout du joy analogique les 5v soient regroupées sur une pin connectée à l'in/out



Comme ça, je dirai le +5 sur le jaune / masse sur le rayé blanc rouge et curseur (pin A de ton choix sur arduino) sur le marron.

Pour les contrôles digitaux, tu relies la masse commune de ton arduino avec un des contacts de ton choix en D.

Attention : Si tu obtiens un comportement erratique des autres entrées analog du arduino,comme si elles étaient parasitées, relie les directement à la masse du arduino.

Aucune raison que ça ne marche pas !  ;)

edit : pour le spinner, tu es limité avec le arduino dans le sens ou tu vas te retrouver avec une valeur remise à zero à chaque tour si tu prend un potard - le comportement sera pas celui escompté en jeu.
Pour un spinner totalement libre, il faut un encodeur rotatif.



Niveau montage c'est pas compliqué (tu as 2 phases à brancher sur l'analog au lieu d'un curseur) mais tu ne pourras pas le faire avec unojoy. Il faut un système basé sur un Arduino leonardo pour un firmware particulier.

Je suis en train de tester un truc avec ça qui pourrait supporter joy/pédales/guidons/volant/ffb!!!/spinner et autres... universel donc ! ;)

Stay tuned ! :)

Iro

#68
Hello
Penses tu que la gestion d'une roue codeuse serait envisageable ?
Peut être plus simple et moins couteux qu'un encodeur rotatif

<:)
"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

LES TUTOS DE GAMO   

lipide512

#69
Roue codeuse optique et encodeur rotatif = même principe avec la phase A et B



L'avantage de l'encodeur rotatif, c'est qu'il prend physiquement la place du potard d'origine du volant donc ne nécessite aucune modification du matériel d'origine. Il est également très simple à monter dans le panel (via un simple trou de 15mm et c'est solide.

edit : sinon tu hackes simplement une souris optique en usb... tu as même les 3 boutons... start, coin et fire...  ;)

Iro

C'était surtout pour un spinner ou trackball, quand on en  récupère un d'origine.
Un encodeur rotatif reproduit les mêmes sensations qu'un systéme à roue codeuse ?
Parce ce qui fait le sel d'un spinner , c'est l'inertie et l'absence de frictions. Le roulement à bille y est pour beaucoup.

J'ai déjà tenté la souris USB. La roue est minuscule donc assez galère à intégrer, c'est fragile et c'est vraiment de la méga bidouille au final. J'ai pas été convaincu.
Mais çà reste une alternative :)
"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

LES TUTOS DE GAMO   

chiourme

Merci lipide512 pour toutes ces infos.
Du coup, je vais surement me tourner vers un Mini-pac pour gerer le spinner.

lipide512

#72
De rien !  <:)

Je ne connais pas l'intérêt du mini-pac... surtout pour le spinner.

Attention les boutons rotatifs à 180° des jeux analogiques type pong sont parfois considérés (à tort) comme des spinners. Dans ce cas, le uno les gère également puisqu'il s'agit uniquement de potards.

Pour le spinner DIY USB, il suffit de récupérer la partie optique de la souris pour la positionner à l'envers et visser au spinner une roue colorée en noir et blanc sous le panel. Celle ci passe juste devant le faisceau de la souris qui est fixe et fait office de détecteur optique. Lorsque tu tournes le spinner, la souris détecte le déplacement de la roue, sans aucun contact ou frottement. Effet ultra spin garanti ! :)

Avantage : DIY facile, rapide, indestructible et pas de drivers spécifique sous dos etc... participe au sauvetage et à la réutilisation de matériels obsolètes ! ;)

@IRO : L'encodeur rotatif peut avoir un effet cogging assez marqué. C'est dû aux bobines qui générent l'impulsion.
Ça dépendra aussi de l'inertie liée au poids du bouton qui l'entraîne.

Iro

Ah oui pour les souris optique. J'avais en tête une à boule.
En effet, c'est une solution propre mais avec les technos dispo maintenant , je préfère ne plus bidouiller   :-\ :-\
"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

LES TUTOS DE GAMO   

lipide512

A la différence, c'est que de nos jours, il est assez simple d'imprimer une roue d'encodage "sur mesures" avec une imprimante 3d. Elle collera parfaitement aux spécificités du système de spinner retenu.
Idem du support de pcb de la souris ! :)

Iro

"Jet set 2, c'est avec Robert Garcia ?" Kaneda, Lapsus de sac Vol.1
Peter Shou Owner' Club

WIPs : Naomi - SEGA Rally - AB Cop - Lethal Enforcers - COMPUMI - Terminator 2 - Space Invaders - Artworks pour Boitiers K7 Naomi CF - Ma collec' de panels

LES TUTOS DE GAMO   

SDF

Salut, le projet est toujours d'actualité? J'ai deja acheté des arduino mega pour monter sur ma le mans twin, et pour essayer de faire un daytona usb de sailorsat mais comme je debute (en twin et en arduino :-\), je me dis que ca serai peut etre plus simple de commencer par ton projet (si ca fonctionne avec un mega) en attendant de bidouiller le deuxieme cokpit en daytona usb pour avoir le support du ffb. Le cablage est le meme je suppose, et le programme? Compatible? Enfin voila, plein de questions. Merci

lipide512

Salut !
Le mega peut se comporter comme un super unojoy, il se dénomme alors ... megajoy.

https://github.com/AlanChatham/UnoJoy/tree/master/MegaJoy

Pour le ffb, je n'ai pas eu le temps de me re-pencher dessus sérieusement.

Etienne

#78
Sinon pour faire des devices HID avec des cartes qui ne peuvent pas le faire en natif, il y a aussi HoodLoader2 de Nicohood : https://github.com/NicoHood/HoodLoader2

jpb63

Bonjour,
J'ai acheté  une carte de développement :
« Geekcreit® Arduino Compatible UNO R3 ATmega16U2 AVR USB»

Pourriez-vous me donner votre avis,  car je n'arrive pas à lancer le fichier «TurnIntoAJoystick.bat ».
J'ai le message d'erreur dans windows\system32   «can't load jvm.dll » et pourtant le fichier est bien présent dans :   UnoJoywin/ATmega8u2Code/jvm.dll
----------------------------
Arduino  est bien branché    OK
Arduino UNO est bien en mode DFU   OK
----------------------------
Je suis sous windows 10. Je vous communique une image regroupant de mes affichages.
Avec mes remerciements.
Jpb63