0

I have an arcade controller I bought so my dying dad can play old school games.

but it does not show up under xinput, where it does show up under lsusb

Bus 003 Device 021: ID 0079:187c DragonRise Inc. FightStick

I've tried


xinput --reattached 0079:187c {various things}

but that ID is not in xinput's list.

my system is:

OS: Manjaro Linux x86_64
Kernel: 5.10.70-1-MANJARO
Shell: bash 5.1.8

so my question is: how do I get this device working?

or - how do I force a device to be visible to xinput? (if I know it should be)

3
  • 2
    random search on Internet using DragonRise Inc. FightStick "linux": reddit.com/r/linux4noobs/comments/8qp5xn/… . If that works for you, please write an answer with the steps you had to do.
    – A.B
    Oct 12, 2021 at 5:33
  • 1
    "lsusb sees it, xinput doesn't" -> usb level works, X driver doesn't pick it up. Check if it's visible on the kernel event input layer (edit question with new lines in dmesg after you plug it in). If dmesg doesn't show an event input driver picking it up, you need a driver.
    – dirkt
    Oct 12, 2021 at 8:28
  • thank you! will try these things tonight!
    – altruios
    Oct 12, 2021 at 14:35

1 Answer 1

1

okay, thanks to the comments here: got it sorted and working:

first things first need python-pip

then needed to sort out the xboxdrv package:

Clone this repo

Open the PKGBUILD

then make two changes: in the makedepends and build(){}

CHANGE:
makedepends=( 'scons' 'boost' 'pkg-config' 'libx11' 'python')
INTO:
makedepends=( 'boost' 'pkg-config' 'libx11' 'python')


AND


CHANGE:
build() {
  cd ${pkgname}-${pkgver}
 scons \

build() {
  cd ${pkgname}-${pkgver}
  python3 ~/.local/bin/scons \



Then make sure the python dependency is installed:

    pip install 'scons==4.1'

whoot, xboxdrv now installs properly with

makepgk -si

now that's installed: we need to make modprobe not see xpad: by blacklisting:

sudo nano /etc/modprobe.d/blacklist.conf  

( it errors if you don't blacklist xpad)

then insert the following:

blacklist xpad

once that's done we can force xboxdrv to use device by ID.

lsusb 

Bus 005 Device 009: ID **0079:187c** DragonRise Inc

(the device id: was identical to the reddit post from 3 years ago)

now do the magic

xboxdrv --type xbox360 --device-by-id 0079:187c &

optimizations are how to make it so this command automatically runs when it detects the device connecting: but I'm happy being able to have this command in a script to start the emulator as well after :) bin that call it emulator or whatever and call it a day.

thank you for the help.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .