Salut ou, re salut.
J'aimerais connecter un joystick (logitech attack 3) à pure data. J'utilise comme driver USB Overdrive X. En passant par [hid], pure data reconnait mon joystick, mais impossible de récupérer mes variables X ou Y ni les informations transmises (ou pas) par les nombreux boutons. Je ne comprends pas pourquoi, merde. Je suis sous OSX 10.5.5.
Si quelqu'un à la solution...
Merci.
Hors ligne
Re salut
Le print fonctionne sans problème. Pure data reconnait chaque boutons, l'axe X, Y et même Z, tout s'affiche dans la console d'erreur immédiatement.
--------------------------------------------------------------------------------------
Device 0: 'Logitech' 'Logitech Attack 3' version 517 @ location 0x1d100000
device type: joystick usage page: 0x0001 usage: 0x0004
vendorID: 0x046d productID: 0xc214
--------------------------------------------------------------------------------------
[hid] found 14 elements:
TYPE CODE # EVENT NAME
-----------------------------------------------------------
key btn_0 0 Button Input, Button #1
key btn_1 0 Button Input, Button #2
key btn_2 0 Button Input, Button #3
key btn_3 0 Button Input, Button #4
key btn_4 0 Button Input, Button #5
key btn_5 0 Button Input, Button #6
key btn_6 0 Button Input, Button #7
key btn_7 0 Button Input, Button #8
key btn_8 0 Button Input, Button #9
key btn_9 0 Button Input, Button #10
key btn_10 0 Button Input, Button #11
abs abs_x 0 Miscellaneous Input, X-Axis
abs abs_y 0 Miscellaneous Input, Y-Axis
abs abs_z 0 Miscellaneous Input, Z-Axis
Voilà ce qui s'affiche dans ma console.
Seulement, quand j'actionne le manche du joystick, je n'ai aucune réponse de [hid] et je ne comprends pas pourquoi.
J'espère que c'est un peut plus précis comme cela.
Merci
Fanch.
Hors ligne
tiens j'ai plus hid sur la derniere extended
jai limpression que c'est remplacé par hidin et il faut un message start pour commencer à capter les évenement
il me semble qu'avec hid c'était [poll 20(
(pour capter la position des joysticks toute les 20ms)
et il faut aussi activer le hid (toggle)
tas pas oublié un truc comme ça ?
sinon t'as testé ton joypad avec un autre soft ?
Hors ligne
Ah Ah !!
Je ne sais pas si cela va résoudre le problème Fanchovitch étant donné qu'il est sous Mac, mais ça a résolu le mien et j'en pétille...
Il faut préciser que je suis sous Ubuntu 8.04.
J'ai lancé pd en root (sudo pd) puis affiché la liste des périphériques reconnus avec un bon [print( dans le [hid]
Device 0: 'Macintosh mouse button emulation' on '/dev/input/event0' Device 1: 'AT Translated Set 2 keyboard' on '/dev/input/event1' Device 2: 'Logitech USB-PS/2 Optical Mouse' on '/dev/input/event2' Device 3: 'PC Speaker' on '/dev/input/event3' Device 4: 'Power Button (FF)' on '/dev/input/event4' Device 5: 'Power Button (CM)' on '/dev/input/event5' Device 6: 'Saitek P990 Dual Analog Pad' on '/dev/input/event6'
J'ai alors ouvert le joystick dans le [hid] avec un [open 6( et.... ça marche !!
Hors ligne
vraiment pas terrible de lancer pd en root
Il y a d'autre solution, comme se rajouter dans le groupe de ton joystick.
Bien plus élégante
Hors ligne
Bonjour, je suis nouveau ici et bien content de l'existence des forums de codelab
j'ai un soucis avec pure data extended et HID, il se produit sur trois différents ordinateurs (portable amilo l6820, ibm thinkpad X32, dual opteron 240), sur des versions d'ubuntu différentes (8.04, ubuntustudio, apodio (ubuntu 9.x), avec des versions différentes de PD-extended 0.41.4, 0.40.x...) avec différents joystick (logitech extreme 3D et logitech attack 3)
les ordinateurs et les joysticks fonctionnent bien, j'ai organisé des joystick battle sans soucis avec la librairie JOYSTIK de MOONLIBS intégrée à l'apodio 4.3.9 (mandriva cooker 2006)
j'ai néanmoins envie de passer à un linux plus récent car je n'arrive pas à installer moonlibs et je voudrais employer HID... pour employer ma carte son firewire (presonus - qui fonctionne bien sous linux)
j'ouvre la fenêtre d'aide de HID, je coche le toggle vert, et hop ça plante
Sauriez-vous m'aider?
Dernière modification par toyoto (2009-10-13 16:54:45)
Hors ligne
précisions : moonlibs ne se trouve plus (le site n'est pas fonctionnel) et semble obsolète... j'essaye d'installer la librairie HID sur un pure data normal mais pas moyen de connaître le chemin de l'application pour rajouter la ligne dans le "makefile"
HELP !!!!
Hors ligne
je viens d'installer Pd-0.42.5-extended-ubuntu-jaunty-i386 sur ma distrib ubuntustudio 9 jaunty et ça plante toujours autant en utilisateur normal et ça fonctionne en ROOT...
comment faire et surtout que signifie
citation :
se rajouter dans le groupe de ton joystick
merci d'avance
Dernière modification par toyoto (2009-10-13 20:39:21)
Hors ligne
ya moyen de faire ça via une interface graphique
http://doc.ubuntu-fr.org/users-admin#ge … ilisateurs
sinon en ligne de commande c'est
sudo adduser nomDuUser nomDuGroupe
pour connaitre le nom du groupe à qui appartient le joystick ça doit être un genre de
ls -l /dev/input/
j'ai plugdev pour js0
donc sans doute un truc genre
sudo adduser toyoto plugdev
j'imagine que ça devrait marcher (pas test)
Dernière modification par kro (2009-10-22 19:08:44)
Hors ligne
Testé sur Ubuntu 8.04 :
citation :
j'ai plugdev pour js0
En fait Puredata n'utilise pas js0.
Quand on branche des joysticks, js0, js1, js2... sont effectivement créés mais sont aussi créés des eventX, eventY, eventZ... où X, Y, Z varient suivant la config de la machine et si oui ou non ils avaient été branchés avant le démarrage de l'ordi...
Ce serait, a priori, ces event qui seraient utilisés par [hid ] pour détecter les périphériques.
Le groupe de ces event étant root, je n'ai pas osé m'y ajouter car je n'est pas vraiment d'idée sur ce que cela entraîne à long terme. (si vous savez, n'hésitez pas... hein... )
J'ai donc collé un petit 666 sur les event en question et effectivement, les joysticks sont bien reconnus sans avoir à lancer Pd en root.
Pour déterminer le numéro des event :
Avant de brancher les joysticks, il faut taper :
ls -l /dev/input/
Puis retaper la commande après les avoir branchés.
Les nouveaux event seront ceux des joysticks.
Il faut maintenant changer les droits sur ces event (dans la commande, X, Y... sont à remplacer par les bon chiffres, bien entendu...)
sudo chmod 666 /dev/input/eventX /dev/input/eventY
Ceci fait il suffira de faire un [open X( , [open Y( dans la boite [joystick ] avant de l'activer avec un 1.
Cela fonctionne sur plusieurs machines...
... sauf la mienne.
C'est bête hein ?
(EDIT : Je viens de virer l'extended 0.41.4 pour remettre la 0.40.3... et cela fonctionne désormais aussi sur ma machine...
Il faut bien comprendre que cette manip est à effectuer à chaque utilisation...
Il doit bien y avoir un moyen d'automatiser la chose, mais mes connaissances s'arrêtent ici.
Dernière modification par Olivier (2010-01-12 16:15:00)
Hors ligne
Bien bien...
J'ai réussi à faire fonctionner la boite [joystick ] sur les extended supérieurs à 0.40.3.
A confirmer, mais vraisemblablement, la boite [hid ] qui est en fait le coeur de [joystick ] acceptait avant le message [open joystick X ( pour ouvrir le joystick associé à /dev/input/eventX...
Or, il semble qu'il suffise désormais d'envoyer un [open X ( pour obtenir le même effet...
Étant donné que la boite [joystick ] contient un [open joystick $1(, l'erreur pourrait venir de là.
Donc, soit vous utilisez la boite [hid ] directement soit vous modifiez la boite [joystick ] en conséquence...
(je vais essayer de poster la boite corrigée ici, mais il faut que je fasse plusieurs teste avant).
A noter qu'il reste toujours nécessaire de changer les droits sur /dev/input/eventX...
Une piste pourrait-être d'attribuer définitivement les droits 666 sur /dev/input/ (merci Benj)
A suivre...
Dernière modification par Olivier (2010-01-10 16:03:16)
Hors ligne
Bon, j'ai patché une boite qui fonctionne chez moi...
Dans le tissage lui-même j'ai juste remplacé [open joystick $1( par [open $1(
Le reste, c'est pour mon confort perso...
PS: Par contre, il est toujours nécessaire de coller un 666 sur l'eventX comme expliqué précédemment.
Testé sur Ubuntu 8.04 / extended 0.42.5 (sur les versions antérieures à pd-ext 0.41.3, la boite originale fonctionne)
Dernière modification par Olivier (2010-01-11 03:53:31)
Hors ligne
Bonjour, j'ai exactement le même problème que toi Francovitch avec le même Joystick, a tu réussi finalement a ce qu'il soit reconnu ? J'ai beau chercher je ne trouve pas de solutions... Si quelqu'un d'autres à déjà eu ce problème...
Merci
Hors ligne