Skip to contentSkip to conversation

X-Box One Controler (Covert Forces) no Input/Static Input

DISCUSSION Jonathan Beilharz 2 participants 2 messages Dec 5, 2015 – Dec 6, 2015 HID

lore
Share & tools
lore
#0 lore raw

I own a "Covert Forces edition of the Xbox One controller".

The controller gets detected as the Covert Forces Controller with right amount of Axes and buttons but the Input (if I look at it with jstest) is static/ doesn't change when I move the axes or click the buttons. I also tried Calibrating.

Steps to reproduce:
1. Connect a "Covert Forces X-box Controller"
2. start "jstest"
3. Output is static

Example Output:

$ jstest /dev/input/js0
Driver version is 2.1.0.
Joystick (Microsoft X-Box One pad (Covert Forces)) has 8 axes (X, Y, Z, Rx, Ry, Rz, Hat0X, Hat0Y)
and 11 buttons (BtnX, BtnY, BtnTL, BtnTR, BtnTR2, BtnSelect, BtnThumbL, BtnThumbR, ?, ?, ?).
Testing ... (interrupt to exit)
Axes:  0:     0  1:     0  2:-32767  3:     0  4:     0  5:-32767 6:     0  7:     0 Buttons:  0:off  1:off  2:off  3:off  4:off 5:off  6:off  7:off  8:off  9:off 10:off

It would be great if someone would be able to look into this.

#1 lore raw

I also have a Covert Forces Xbox One controller and can confirm this issue. It looks like the 5 byte initialization packet used for rumble support in various other Xbox One drivers (xboxdrv, forks of xpad) is actually required for proper initialization of these new controllers. Without it, we won't receive input data (as if initialization never occurred at all).

Luckily, there's a trivial fix for this. We'll just send the larger initialization packet, even without sending a sequence number in the rumble packets yet. I've confirmed that this fixes the issue for me. I'll send a patch shortly.

Cameron