Find the answer to your Linux question:
Page 1 of 2 1 2 LastLast
Results 1 to 10 of 17
Hi everyone. I just bought an adaptor to use playstation joysticks on computer, through usb. I'm getting it auto detected, but when I try to cat the device, or use ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Feb 2007
    Posts
    60

    problem with usb playstation adaptor


    Hi everyone.

    I just bought an adaptor to use playstation joysticks on computer, through usb.

    I'm getting it auto detected, but when I try to cat the device, or use it in a game it is like it is not detected properly, because it is as if all the buttons were pressed, or some, or I don't know. The fact it is that it works like hell.

    I tried it in my knoppix, and worked fine.

    can I change my joydev.ko for some other compatible with this hardware or something?

    Please give me a hand!!

    thank you

    PS: I'm using Fedora 6

  2. #2
    Just Joined!
    Join Date
    Feb 2007
    Posts
    60
    guys thanks for the help

    you're really great.

  3. #3
    Linux User Muser's Avatar
    Join Date
    May 2004
    Location
    Maryland
    Posts
    363
    Quote Originally Posted by tauro_kpo
    guys thanks for the help

    you're really great.
    I'll ignore the sarcasm and attempt to help...

    Output of lsusb?

  4. #4
    Just Joined!
    Join Date
    Feb 2007
    Posts
    60
    Thank you!

    lsusb output looks like

    Code:
    Bus 002 Device 001: ID 0000:0000  
    Bus 002 Device 002: ID 0458:7004 KYE Systems Corp. (Mouse Systems) VideoCAM Express
    Bus 001 Device 001: ID 0000:0000  
    Bus 004 Device 001: ID 0000:0000  
    Bus 005 Device 001: ID 0000:0000  
    Bus 003 Device 001: ID 0000:0000  
    Bus 003 Device 002: ID 0810:0003 Personal Communication Systems, Inc.
    The last one it is the adapter.

  5. #5
    Linux User Muser's Avatar
    Join Date
    May 2004
    Location
    Maryland
    Posts
    363
    Well what are you trying to configure it in and does the joystick get an entry in /dev?

  6. #6
    Just Joined!
    Join Date
    Feb 2007
    Posts
    60
    The joystick gets and entry in /dev/ it is js0.

    When I cat /dev/js0 the answer is a lot of code that is "crazy"

    looks like this:

    Code:
    [root@localhost tauro]# cat /dev/js0
    9v      �9v     �9v    �9v    �9v    �9v    �9v     �9v    �9v     9v     �9v      �
    9v      �
             9v     �9v     �9v    �9v    �9v    �9v    �@v     �@v  Pv   �Pv   `v    �`v  pv    �pv  �v    ��v  �v    ��v  �v   ��v   �v    ��v  �v    ��v  �v    ��v  �v    ��v  �v   ��v   w     �w   w    �w   w    � w  0w    �0w  @w   �@w   Pw    �Pw  `w    �`w  pw    �pw  �w    ��w  �w   ��w   �w    ��w  �w    ��w  �w    ��w  �w    ��w  �w   ��w   �w    ��w  x     �x   x    �x   x    � x  0x   �0x   @x    �@x  Px    �Px  `x    �`x  px    �px  �x   ��x   �x    ��x  �x    ��x  �x    ��x  �x    ��x  �x   ��x   �x    ��x  �x    ��x  y     �y   y    �y   y   � y   0y    �0y  @y    �@y  Py    �Py  `y    �`y  py   �py   �y    ��y  �y    ��y  �y    ��y  �y    ��y  �y   ��y   �y    ��y  �y    ��y  �y    ��y  z     �z   z   �z    z    � z  0z    �0z  @z    �@z  Pz    �Pz  `z   �`z   pz    �pz  �z    ��z  �z    ��z  �z    ��z  �z   ��z   �z    ��z  �z    ��z  �z    ��z  �z    ��z  {    �{    {    �{   {    � {  0{    �0{  @{    �@{  P{   �P{   `{    �`{  p{    �p{  �{    ��{  �{    ��{  �{   ��{   �{    ��{  �{    ��{  �{    ��{  �{    ��{  �{   ��{   |    �|  |    �|  !|    �!|  1|    �1|  A|   �A|   Q|    �Q|  a|    �a|  q|    �q|  �|    ��|  �|   ��|   �|    ��|  �|    ��|  �|    ��|  �|    ��|  �|   ��|   �|    ��|  }    �}  }    �}  !}    �!}  1}   �1}   A}    �A}  Q}    �Q}  a}    �a}  q}    �q}  �}   ��}   �}    ��}  �}    ��}  �}    ��}  �}    ��}  �}   ��}   �}    ��}  �}    ��}  ~    �~  ~    �~  !~   �!~   1~    �1~  A~    �A~  Q~    �Q~  a~    �a~  q~   �q~   �~    ��~  �~    ��~  �~    ��~  �~    ��~  �~   ��~   �~    ��~  �~    ��~  �~    ��~      �     �   !    �!  1    �1  A    �A  Q    �Q  a   �a   q    �q  �    ��  �    ��  �    ��  �   ��   �    ��  �    ��  �    ��  �    ��  �   ��   �    ��  !�    �!�  1�    �1�  A�    �A�  Q�   �Q�   a�    �a�  q�    �q�  ��    ���  ��    ���  ��   ���   ��    ���  ��    ���  р     �р   ��    ���  ��   ���   �    ��  �    ��  !�    �!�  1�    �1�  A�   �A�   Q�    �Q�  a�    �a�  q�    �q�  ��    ���  ��   ���   ��    ���  ��    ���  ��    ���  с     �с   ��   ���   ��    ���  �    ��  �    ��  !�    �!�  
    And when I do jstest /dev/js0 it shows like I was pressing all the buttons all the time, and don't stopping.

    If I press a button it shows it, but the it shows as if all the other buttons are still being pressed and released, pressed and released all the time.

  7. #7
    Linux Newbie dilbert's Avatar
    Join Date
    Sep 2006
    Location
    Yorkshire, GB
    Posts
    237
    Quote Originally Posted by tauro_kpo
    The fact it is that it works like hell.
    What does this mean? That it's looks like the buttons are pressed and released continously, or what?

    The output from "cat /dev/js0 " might be normal as those are presumably raw data.

    If it works in Knoppix, try to get hold of the drivers and compare them like "diff -su /directory_1/joydev.ko /directory_2/joydev.ko".

    On both systems check the diffrences.

    "/sbin/lsmod" gives you a list of all drivers already loaded by the kernel. Search there for your "joydev".

    "dmesg" gives you the last kernel messages. So, launch a "dmesg" and remember or copy the last lines into a file. Then, plug the USB device in. Launch "dmesg" again. There must be new messages related to your USB devices. Maybe depends on your distro, but often you see there if a driver has been loaded into the kernel or you get even name and directory of the driver that uses (or messes around) with your USB device.

    When you got hold in both systems of these joydev.ko files, compare them as described above.

    Or, other method, do a "cat /proc/bus/usb/devices" and search within those blocks for "Product" and "Manufacturer". Those are the data that the USB stack directly from the hardware of your USB device.

    If you found the reight block, look for the four digit hexadecimal numbers of "ProdID" and "Vendor". Those numbers are again the original ones read out from the hardware of your USB device.

    With those two four digit numbers do:
    a) a Web search together with "Linux driver" or so
    or
    b) try to get hold of the joydev.c source file if installed on your system.

    What I described is a general way to find out what sort of USB hardware you got and how to find a driver for it.

    You see all is easy peasy lemon squeezy.
    Bus Error: Passengers dumped. Hech gap yo'q.

  8. #8
    Just Joined!
    Join Date
    Feb 2007
    Posts
    60
    Code:
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off 
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off 
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  
    Axes:  0:     0  1:     0  2:     0  3:     0  4:     0  5:     0 Buttons:  0:off  1:off  2:off  3:off  4:off  5:off  6:off  7:off  8:off  9:off 10:off 11:off
    This is what I mean when I say it works like hell. This is the output for jstest /dev/js0.
    It shows like the up button from the right stick axis is pushed all the time (because the only thing that changes is 0 2:-32767). If I press any other button it shows it in the output, but if I press this one, is like I wasn't pressing it, because it keeps showing the same (there's where I found out which button was but it's really not important)

    When you say it is presumably raw data I agree with you, but, the thing is that it keeps showing more and more and more, not like it should, it does it in excess, when I don't press any buttons, and the normal thing it is it to do it when you're pressing some buttons, or one. I tested this with one simple usb joystick, and it's like I'm telling you. The playstation joystick that uses the usb adapter for working it is the one that is working bad.

    I don't really know what I need, because the device is auto recognized, and auto configured, the only thing is this :-S that it acts crazy.

    Well, I tried what you suggested.

    First of all I tried doing

    diff -su /directory_1/joydev.ko /directory_2/joydev.ko

    (obviously one file was the debian knoppix's joydev.ko, and the other one was the fedora's joydev.ko)

    And it tells me that the binary files are different. :-S

    This is the output for joydev of lsmod on Knoppix:

    Module Size Used by
    joydev 13760 0

    And this on Fedora:

    Module Size Used by
    joydev 13313 0

    This is the output for the joystick of dmesg on Knoppix:

    usb 4-2: new low speed USB device using uhci_hcd and address 6jo
    usb 4-2: configuration #1 chosen from 1 choice
    input: USB Gamepad as /class/input/input7
    input: USB HID v1.10 Joystick [USB Gamepad ] on usb-0000:00:10.2-2

    And this is in Fedora:

    usb 3-1: new low speed USB device using uhci_hcd and address 3
    usb 3-1: configuration #1 chosen from 1 choice
    input: USB Gamepad as /class/input/input8
    input: USB HID v1.10 Joystick [USB Gamepad ] on usb-0000:00:10.2-1

    Finally this is the output for cat /proc/bus/usb/devices in Knoppix (This one is the entry that matches the number in the dmesg so I asume it is the joystick's entry):

    T: Bus=04 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 6 Spd=1.5 MxCh= 0
    D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
    P: Vendor=0810 ProdID=0003 Rev= 1.06
    S: Product=USB Gamepad
    C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=350mA
    I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbh
    id
    E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=17ms

    And in Fedora:

    T: Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 3 Spd=1.5 MxCh= 0
    D: Ver= 1.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
    P: Vendor=0810 ProdID=0003 Rev= 1.06
    S: Product=USB Gamepad
    C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=350mA
    I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid
    E: Ad=81(I) Atr=03(Int.) MxPS= 8 Ivl=17ms




    That's it.

    I can't find the way to solve this out!

    I tried looking as you told me for 0810 0003 in google, but no way, there's nothing I can find.

    What the **** is wrong here? :'(

    I tried looking for joydev.c but, what can I do with it? it is useful? I found it with a simple locate.

    I need some help here!

    thank you all for helping!

  9. #9
    Linux Newbie dilbert's Avatar
    Join Date
    Sep 2006
    Location
    Yorkshire, GB
    Posts
    237
    Well, looking back to your initial questions in your first post and making the assumption that it's obviously a driver problem you could do the following.

    Have the knoppix CD in the drive of your box, but start your Fedora build.

    Check with "lsmod" if the joydev driver is loaded.

    If yes, be sure that the USB device is disconnected and do a "rmmod -f joydev".

    The joydev driver shouldn't be anymore in the listing that "lsmod" produces.

    Now, do an "insmod -f /location_on_your_knoppix_drive/joydev.ko". Use here the *.ko ending that you left out with rmmod (little inconsistencies against monotony ).

    Check with "lsmod" that the joydev driver has been added to the drivers list. You can compare the byte size to be sure you loaded the knoppix driver.

    Connect your USB device. Be optimistic.

    Your joystick should play fine now as with knoppix.

    If it doesn't or you got already error messages before, then you learned at least something and can call yourself confidently a Linux kernel and USB guru.

    But tell us if it failed, maybe we can fix that, too. If it succeeded, you have to load the knoppix driver permanently to your Fedora build. But first good luck with the above steps.
    Bus Error: Passengers dumped. Hech gap yo'q.

  10. #10
    Just Joined!
    Join Date
    Feb 2007
    Posts
    60
    Hi Dilbert.

    You had such cool idea, I tried it, but it doesn't work

    First I unplug the adapter and do a rmmod -f joydev. Then I try to insmod -f the joydev.ko from the Knoppix but it can't. Shows me this:

    insmod: error inserting '/down/joydev.ko': -1 Invalid module format

    And if I look at the dmesg shows:

    joydev: disagrees about version of symbol struct_module

    Is there a way to hack this??? :-S

Page 1 of 2 1 2 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •