Xboxdrv not working with Krom Key in ubuntu 18.04
-
Hi, I'm trying to make ubuntu 18.04 recognize my Krom Key gamepad (https://www.kromgaming.com/en/controllers/key), but i have no luck yet. I have tried xpad and xboxdrv gives the following error when executing " sudo xboxdrv"
xboxdrv 0.8.8 - http://pingus.seul.org/~grumbel/xboxdrv/
Copyright © 2008-2011 Ingo Ruhnke grumbel@gmail.com
Licensed under GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details.Controller: Microsoft X-Box 360 pad
Vendor/Product: 045e:028e
USB Path: 003:011
Controller Type: Xbox360Your Xbox/Xbox360 controller should now be available as:
/dev/input/js0
/dev/input/event22Press Ctrl-C to quit, use '--silent' to suppress the event output
[ERROR] USBController::on_read_data(): USB read failure: 32: LIBUSB_TRANSFER_ERROR
[ERROR] USBController::on_write_data(): USB write failure: 3: LIBUSB_TRANSFER_ERRORI have managed to make the controller work automatically but using ubuntu 16.04 but I just can't in ubuntu 18.04. Any help is deeply appreciated.
-
Looks like a multi-mode controller (PS3/XInput/Dinput/Android) - make sure you start it in Xinput mode. You don't need the
xboxdrv
driver installed, if it works as a XBox clone, then it may be recognized and configured by thexpad
driver - check if it's installed. -
@mitu Thank you for your repply. Yes indeed as you mention the gamepad seems a multicontroller. I can't start it in Xinput mode because i don't receive any input from the controller (although a generic driver is assigned to it, no input event is detected). I have tried xpad driver too and didn't work.
The only time I managed to make it work was with the previous ubuntu released version 16.04, and it was only plug and play, but I want it to be used with ubuntu 18.04, because its a newer machine with faster characteristics, rather than my very old cpu having ubuntu 16.04 ...
I believe something must have changed in the kernel of 18.04 version, could it be some missing driver?
Is it possible to extract the driver for this particular controller from 16.04 and put it on 18.04? ... -
@pai_gorik said in Xboxdrv not working with Krom Key in ubuntu 18.04:
Is it possible to extract the driver for this particular controller from 16.04 and put it on 18.04? ...
If you know which driver was used, then it might be possible to find a solution for a newer kernel. I don't think the driver is missing, could be that there's a change that makes it not work with your gamepad.
-
@mitu It seems that the correct module is joydev, since in Ubuntu 16.04 if I remove my controller stops working. I put it back and works again (recognized as SHANWAN android Gamepad), but in ubuntu 18.04 I have it active and doesn't show anything. Using xpad in ubuntu 18.04 it recognizes it as a Microsoft Xbox Controller but no input is detected. Any work around this issue?
-
(18.04) Try removing both modules (
xpad
andjoydev
) and then load onlyjoydev
. See if it works and make sure that you don't have thexboxdrv
loaded while you test.
If it doesn't, then can you post the output ofcat /proc/bus/input/devices
here in the topic ? -
@mitu I tried removing, xpad and joydev and reloading joydev as you mentioned. Xboxdrv was not longer installed. This is the output of cat /proc....
I: Bus=0019 Vendor=0000 Product=0005 Version=0000
N: Name="Lid Switch"
P: Phys=PNP0C0D/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input0
U: Uniq=
H: Handlers=event0
B: PROP=0
B: EV=21
B: SW=1I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button"
P: Phys=PNP0C0C/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1
U: Uniq=
H: Handlers=kbd event1
B: PROP=0
B: EV=3
B: KEY=10000000000000 0I: Bus=0019 Vendor=0000 Product=0003 Version=0000
N: Name="Sleep Button"
P: Phys=PNP0C0E/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0E:00/input/input2
U: Uniq=
H: Handlers=kbd event2
B: PROP=0
B: EV=3
B: KEY=4000 0 0I: Bus=0019 Vendor=0000 Product=0001 Version=0000
N: Name="Power Button"
P: Phys=LNXPWRBN/button/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXPWRBN:00/input/input3
U: Uniq=
H: Handlers=kbd event3
B: PROP=0
B: EV=3
B: KEY=10000000000000 0I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input4
U: Uniq=
H: Handlers=sysrq kbd event4 leds
B: PROP=0
B: EV=120013
B: KEY=1100f02902000 8380307cf910f001 feffffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7I: Bus=0019 Vendor=0000 Product=0006 Version=0000
N: Name="Video Bus"
P: Phys=LNXVIDEO/video/input0
S: Sysfs=/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input7
U: Uniq=
H: Handlers=kbd event5
B: PROP=0
B: EV=3
B: KEY=3e000b00000000 0 0 0I: Bus=0011 Vendor=0002 Product=0007 Version=01a1
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input6
U: Uniq=
H: Handlers=mouse0 event6
B: PROP=5
B: EV=b
B: KEY=e520 10000 0 0 0 0
B: ABS=660800011000003I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="Intel HID events"
P: Phys=
S: Sysfs=/devices/platform/INT33D5:00/input/input11
U: Uniq=
H: Handlers=rfkill kbd event10
B: PROP=0
B: EV=13
B: KEY=81000300000000 5000004000 1e294000000020 0
B: MSC=10I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="Intel HID 5 button array"
P: Phys=
S: Sysfs=/devices/platform/INT33D5:00/input/input12
U: Uniq=
H: Handlers=kbd event11
B: PROP=0
B: EV=33
B: KEY=1000000000000 0 201c000000000000 0
B: MSC=10
B: SW=1000I: Bus=0019 Vendor=0000 Product=0000 Version=0000
N: Name="Dell WMI hotkeys"
P: Phys=
S: Sysfs=/devices/platform/PNP0C14:01/wmi_bus/wmi_bus-PNP0C14:01/9DBB5994-A997-11DA-B012-B622A1EF5492/input/input13
U: Uniq=
H: Handlers=rfkill kbd event12
B: PROP=0
B: EV=13
B: KEY=800000000000 0 0 101500b00000c00 200300000 e000000000000 0
B: MSC=10I: Bus=0018 Vendor=06cb Product=76af Version=0100
N: Name="DELL07E6:00 06CB:76AF Touchpad"
P: Phys=i2c-DELL07E6:00
S: Sysfs=/devices/pci0000:00/0000:00:15.1/i2c_designware.1/i2c-7/i2c-DELL07E6:00/0018:06CB:76AF.0005/input/input16
U: Uniq=
H: Handlers=mouse2 event13
B: PROP=5
B: EV=1b
B: KEY=e520 10000 0 0 0 0
B: ABS=260800000000003
B: MSC=20I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH Headphone Mic"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input21
U: Uniq=
H: Handlers=event14
B: PROP=0
B: EV=21
B: SW=4I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=3"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input22
U: Uniq=
H: Handlers=event15
B: PROP=0
B: EV=21
B: SW=140I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=7"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input23
U: Uniq=
H: Handlers=event16
B: PROP=0
B: EV=21
B: SW=140I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=8"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input24
U: Uniq=
H: Handlers=event17
B: PROP=0
B: EV=21
B: SW=140I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=9"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input25
U: Uniq=
H: Handlers=event18
B: PROP=0
B: EV=21
B: SW=140I: Bus=0000 Vendor=0000 Product=0000 Version=0000
N: Name="HDA Intel PCH HDMI/DP,pcm=10"
P: Phys=ALSA
S: Sysfs=/devices/pci0000:00/0000:00:1f.3/sound/card0/input26
U: Uniq=
H: Handlers=event19
B: PROP=0
B: EV=21
B: SW=140I: Bus=0003 Vendor=0bda Product=58f4 Version=7279
N: Name="Integrated_Webcam_HD: Integrate"
P: Phys=usb-0000:00:14.0-5/button
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/input/input27
U: Uniq=
H: Handlers=kbd event20
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0I: Bus=0003 Vendor=0bda Product=58f4 Version=7279
N: Name="Integrated_Webcam_HD: Integrate"
P: Phys=usb-0000:00:14.0-5/button
S: Sysfs=/devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.2/input/input28
U: Uniq=
H: Handlers=kbd event21
B: PROP=0
B: EV=3
B: KEY=100000 0 0 0I: Bus=0003 Vendor=1241 Product=1166 Version=0110
N: Name="HID 1241:1166"
P: Phys=usb-0000:39:00.0-1.4.4/input0
S: Sysfs=/devices/pci0000:00/0000:00:1c.4/0000:03:00.0/0000:04:02.0/0000:39:00.0/usb3/3-1/3-1.4/3-1.4.4/3-1.4.4:1.0/0003:1241:1166.000C/input/input34
U: Uniq=
H: Handlers=mouse1 event7
B: PROP=0
B: EV=17
B: KEY=1f0000 0 0 0 0
B: REL=103
B: MSC=10I: Bus=0003 Vendor=1a2c Product=0e24 Version=0110
N: Name="SEM USB Keyboard"
P: Phys=usb-0000:39:00.0-1.4.3/input0
S: Sysfs=/devices/pci0000:00/0000:00:1c.4/0000:03:00.0/0000:04:02.0/0000:39:00.0/usb3/3-1/3-1.4/3-1.4.3/3-1.4.3:1.0/0003:1A2C:0E24.000D/input/input35
U: Uniq=
H: Handlers=sysrq kbd event8 leds
B: PROP=0
B: EV=120013
B: KEY=1000000000007 ff800000000007ff febeffdff3cfffff fffffffffffffffe
B: MSC=10
B: LED=7I: Bus=0003 Vendor=1a2c Product=0e24 Version=0110
N: Name="SEM USB Keyboard"
P: Phys=usb-0000:39:00.0-1.4.3/input1
S: Sysfs=/devices/pci0000:00/0000:00:1c.4/0000:03:00.0/0000:04:02.0/0000:39:00.0/usb3/3-1/3-1.4/3-1.4.3/3-1.4.3:1.1/0003:1A2C:0E24.000E/input/input36
U: Uniq=
H: Handlers=kbd event9
B: PROP=0
B: EV=1f
B: KEY=300ff 0 0 483ffff17aff32d bf54444600000000 1 130c730b17c000 267bfad941dfed 9e168000004400 10000002
B: REL=40
B: ABS=100000000
B: MSC=10 -
@mitu If my load back xpad the output of cat /proc/bus/input/devices detects the following (not showing the rest)...
I: Bus=0003 Vendor=045e Product=028e Version=0110
N: Name="Microsoft X-Box 360 pad"
P: Phys=usb-0000:39:00.0-1.4.1/input0
S: Sysfs=/devices/pci0000:00/0000:00:1c.4/0000:03:00.0/0000:04:02.0/0000:39:00.0/usb3/3-1/3-1.4/3-1.4.1/3-1.4.1:1.0/input/input40
U: Uniq=
H: Handlers=event22 js0
B: PROP=0
B: EV=20000b
B: KEY=7cdb000000000000 0 0 0 0
B: ABS=3003f
B: FF=107030000 0 -
According to the
xpad
sources (see here), the VendorID/ModelD of the gamepad are indeed from the Xbox 360 gamepad. It looks like the controller tries to mimic an original Xbox 360 controller, but it's not correctly working.If you use
jstest /dev/input/js0
, are the buttons/joysticks recognized ? -
@mitu said in Xboxdrv not working with Krom Key in ubuntu 18.04:
jstest /dev/input/js0
Yes, I can see that gets registered as an xpad. When I execute jstest /dev/input/js0, I can see the buttons/joysticks recognized but no event input is detected, I press/touch the joysticks or any other button and nothing moves...
Driver version is 2.1.0.
Joystick (Microsoft X-Box 360 pad) has 8 axes (X, Y, Z, Rx, Ry, Rz, Hat0X, Hat0Y)
and 11 buttons (BtnA, BtnB, BtnX, BtnY, BtnTL, BtnTR, BtnSelect, BtnStart, BtnMode, 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:offI also executed the same command: cat /proc/bus/input/devices using the same gamepad but in another pc that has ubuntu 16.04. The result was the following:
I: Bus=0003 Vendor=20bc Product=5500 Version=0111 N: Name="SHANWAN Android Gamepad" P: Phys=usb-0000:00:1a.1-1/input0 S: Sysfs=/devices/pci0000:00/0000:00:1a.1/usb4/4-1/4-1:1.0/0003:20BC:5500.0002/input/input17 U: Uniq= H: Handlers=event15 js1 B: PROP=0 B: EV=20001b B: KEY=7fff000000000000 0 0 0 0 B: ABS=30627 B: MSC=10 B: FF=107030000 0 I: Bus=0003 Vendor=20bc Product=5500 Version=0111 N: Name="SHANWAN Android Gamepad" P: Phys=usb-0000:00:1a.1-1/input1 S: Sysfs=/devices/pci0000:00/0000:00:1a.1/usb4/4-1/4-1:1.1/0003:20BC:5500.0003/input/input18 U: Uniq= H: Handlers=kbd event16 B: PROP=0 B: EV=13 B: KEY=1000002000000 39fad941d801 1c000000000000 0 B: MSC=10
How can the same gamepad may be assigned different VendorID/ProductID numbers?
-
@mitu Thanks to another thread of yours I have found the solution.
https://retropie.org.uk/forum/topic/17492/retropie-4-4-and-tronsmart-mars-g02-with-wireless-dongle-problemThe issue was that the controller by default comes recognized as a X mode (Xbox), I had to change it to D-mode (Android) by pressing 5 seconds the button home. After that joydev inmediately recognized it as Sharwan model.
Once again, thaks a lot for your help.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.