You are not logged in.

#1 2009-12-18 12:51:51

Runiq
Member
From: Germany
Registered: 2008-10-29
Posts: 1,053

jscal reports too many axes

I lost my old gamepad recently, so I decided to buy a Hama Black Force USB gamepad. It's one of those PS2-type controllers with 2 analog sticks, a D-pad and 12 buttons overall (i.e. 6 axes and 12 buttons). As soon as I plug it in, it is recognized, although under a different name:

$ dmesg | tail -n5
usb 6-1: new low speed USB device using uhci_hcd and address 8
usb 6-1: configuration #1 chosen from 1 choice
input: DragonRise Inc.   Generic   USB  Joystick   as /devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1:1.0/input/input16
dragonrise 0003:0079:0006.0008: input,hidraw0: USB HID v1.10 Joystick [DragonRise Inc.   Generic   USB  Joystick  ] on usb-0000:00:1d.0-1/input0
dragonrise 0003:0079:0006.0008: Force Feedback for DragonRise Inc. game controllers by Richard Walmsley <richwalm@gmail.com>

When I try to calibrate the gamepad using jscal, it reports 7 axes instead of the actual 6:

$ jscal -c /dev/input/js0
Joystick has 7 axes and 12 buttons.
Correction for axis 0 is broken line, precision is 0.
Coeficients are: 128, 128, 4194176, 4227201
Correction for axis 1 is broken line, precision is 0.
Coeficients are: 128, 128, 4194176, 4227201
Correction for axis 2 is broken line, precision is 1.
Coeficients are: 130, 131, 4129650, 4329472
Correction for axis 3 is broken line, precision is 0.
Coeficients are: 128, 128, 4194176, 4227201
Correction for axis 4 is broken line, precision is 0.
Coeficients are: 128, 128, 4194176, 4227201
Correction for axis 5 is broken line, precision is 0.
Coeficients are: 0, 0, 536854528, 536854528
Correction for axis 6 is broken line, precision is 0.
Coeficients are: 0, 0, 536854528, 536854528

Calibrating precision: wait and don't touch the joystick.
Done. Precision is:                                               128,  128 Axis 4:  128,  128 Axis 5:    0,    0 Axis 6:    0,    0 
Axis: 0:     0
Axis: 1:     0
Axis: 2:     3
Axis: 3:     0
Axis: 4:     0
Axis: 5:     0
Axis: 6:     0

Move axis 0 to minimum position and push any button.
Hold ... OK.                                                                  
Move axis 0 to center position and push any button.
Hold ... OK.                                                                  
Move axis 0 to maximum position and push any button.
Hold ... OK.                                                                  
Move axis 1 to minimum position and push any button.
Hold ... OK.                                                                  
Move axis 1 to center position and push any button.
Hold ... OK.                                                                  
Move axis 1 to maximum position and push any button.
Hold ... OK.                                                                  
Move axis 2 to minimum position and push any button.
Hold ... OK.                                                                  
Move axis 2 to center position and push any button.
Hold ... OK.                                                                  
Move axis 2 to maximum position and push any button.
Hold ... OK.                                                                  
Move axis 3 to minimum position and push any button.
Hold ... OK.                                                                  
Move axis 3 to center position and push any button.
Hold ... OK.                                                                  
Move axis 3 to maximum position and push any button.
Hold ... OK.                                                                  
Move axis 4 to minimum position and push any button.
Hold ... OK.                                                                  
Move axis 4 to center position and push any button.
Hold ... OK.                                                                  
Move axis 4 to maximum position and push any button.
Hold ... OK.                                                                  
Move axis 5 to minimum position and push any button.
Hold ... OK.                                                                  
Move axis 5 to center position and push any button.
Hold ... OK.                                                                  
Move axis 5 to maximum position and push any button.
Hold ... OK.                                                                  
Move axis 6 to minimum position and push any button.
Hold ... OK.                                                                  
Move axis 6 to center position and push any button.
Hold ... OK.                                                                  
Move axis 6 to maximum position and push any button.
Hold ... OK.                                                                  

Setting correction to:
Correction for axis 0: broken line, precision: 0.
Coeficients: 128, 128, 4194176, 4227201
Correction for axis 1: broken line, precision: 0.
Coeficients: 128, 128, 4194176, 4227201
Correction for axis 2: broken line, precision: 3.
Coeficients: 131, 131, 4098126, 4329472
Correction for axis 3: broken line, precision: 0.
Coeficients: 128, 128, 4194176, 4227201
Correction for axis 4: broken line, precision: 0.
Coeficients: 128, 128, 4194176, 4227201
Correction for axis 5: broken line, precision: 0.
Coeficients: 0, 0, 536854528, 536854528
Correction for axis 6: broken line, precision: 0.
Coeficients: 0, 0, 536854528, 536854528

As you can see, the odd one out is #2: Different precision values; different amplitudes (0 to 255 instead of the usual -255 to +255); when calibrating it, I can change its value by moving either axis 0 or axis 4. All other axes work fine, buttons too.

I tried changing the values created by jscal manually, but jscal just replies with

jscal: joystick has 7 axes and not 6 as specified on command line

I also tried a Ubuntu patch to jscal which allows remapping axes/buttons manually, but to no avail, jscal exits with the same error message as above. Does anybody have an idea how I could remove this axis? I'd like to use the pad with epsxe, but the additional axis messes up the button configuration.

Last edited by Runiq (2009-12-18 12:56:11)

Offline

#2 2009-12-20 15:05:59

Runiq
Member
From: Germany
Registered: 2008-10-29
Posts: 1,053

Re: jscal reports too many axes

Bump, anyone?

Offline

Board footer

Powered by FluxBB