0

I have a strange issue where my usb joystick is detected properly and then nicely removed by the kernel.

dmesg output when inserting the usb connector:

[ 2319.770016] usb 1-1.5: new full-speed USB device number 7 using ehci-pci
[ 2319.880607] usb 1-1.5: New USB device found, idVendor=0483, idProduct=5750
[ 2319.880609] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 2319.880611] usb 1-1.5: Product: FALENCI
[ 2319.880613] usb 1-1.5: Manufacturer: FALENCI
[ 2319.880615] usb 1-1.5: SerialNumber: 206739655233
[ 2319.882481] input: FALENCI FALENCI as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.0009/input/input26
[ 2319.942381] hid-generic 0003:0483:5750.0009: input,hiddev0,hidraw0: USB HID v1.11 Gamepad [FALENCI FALENCI] on usb-0000:00:1a.0-1.5/input0

However in the syslog I find:

Oct 17 23:25:51 Axe kernel: [ 2319.770016] usb 1-1.5: new full-speed USB device number 7 using ehci-pci
Oct 17 23:25:51 Axe kernel: [ 2319.880607] usb 1-1.5: New USB device found, idVendor=0483, idProduct=5750
Oct 17 23:25:51 Axe kernel: [ 2319.880609] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Oct 17 23:25:51 Axe kernel: [ 2319.880611] usb 1-1.5: Product: FALENCI
Oct 17 23:25:51 Axe kernel: [ 2319.880613] usb 1-1.5: Manufacturer: FALENCI
Oct 17 23:25:51 Axe kernel: [ 2319.880615] usb 1-1.5: SerialNumber: 206739655233
Oct 17 23:25:51 Axe kernel: [ 2319.882481] input: FALENCI FALENCI as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.0009/input/input26
Oct 17 23:25:51 Axe kernel: [ 2319.942381] hid-generic 0003:0483:5750.0009: input,hiddev0,hidraw0: USB HID v1.11 Gamepad [FALENCI FALENCI] on usb-0000:00:1a.0-1.5/input0
Oct 17 23:25:51 Axe mtp-probe: checking bus 1, device 7: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5"
Oct 17 23:25:51 Axe mtp-probe: bus: 1, device: 7 was not an MTP device
Oct 17 23:25:51 Axe acpid: input device has been disconnected, fd 16

and using udevadm monitor I get:

KERNEL[2849.850516] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5 (usb)
KERNEL[2849.850688] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0 (usb)
KERNEL[2849.851478] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A (hid)
KERNEL[2849.852165] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27 (input)
KERNEL[2849.912343] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/event2 (input)
KERNEL[2849.912420] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/js0 (input)
KERNEL[2849.912565] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/usbmisc/hiddev0 (usbmisc)
KERNEL[2849.912616] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/hidraw/hidraw0 (hidraw)
UDEV  [2849.934209] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5 (usb)
UDEV  [2849.936100] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0 (usb)
UDEV  [2849.937515] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A (hid)
UDEV  [2849.938171] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/usbmisc/hiddev0 (usbmisc)
UDEV  [2849.940255] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/hidraw/hidraw0 (hidraw)
KERNEL[2849.992217] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/event2 (input)
KERNEL[2850.008233] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/js0 (input)
KERNEL[2850.032209] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27 (input)
KERNEL[2850.032252] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/usbmisc/hiddev0 (usbmisc)
KERNEL[2850.032317] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/hidraw/hidraw0 (hidraw)
KERNEL[2850.032347] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A (hid)
UDEV  [2850.033024] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/hidraw/hidraw0 (hidraw)
UDEV  [2850.033116] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/usbmisc/hiddev0 (usbmisc)
UDEV  [2850.033273] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27 (input)
UDEV  [2850.034723] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/event2 (input)
UDEV  [2850.035337] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/event2 (input)
UDEV  [2850.036645] add      /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/js0 (input)
UDEV  [2850.037334] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27/js0 (input)
UDEV  [2850.037954] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A/input/input27 (input)
UDEV  [2850.038398] remove   /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0/0003:0483:5750.000A (hid)

I do appreciate the system cleaning up after itself, but I would like to use it a bit in between :-(

The setup worked previously without problems, thought this was while running 16.04 instead of 17.04

Anyone a suggestion what could be going wrong or which way to go to debug this problem?

EDIT: I have debugged a bit more and found a probable cause of my misery/mystery. When exporting the udev database using udevadm info -e I find the following about my device:

P: /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5
N: bus/usb/001/011
E: BUSNUM=001
E: DEVNAME=/dev/bus/usb/001/011
E: DEVNUM=011
E: DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5
E: DEVTYPE=usb_device
E: DRIVER=usb
E: ID_BUS=usb
E: ID_MODEL=FALENCI
E: ID_MODEL_ENC=FALENCI
E: ID_MODEL_ID=5750
E: ID_REVISION=0200
E: ID_SERIAL=FALENCI_FALENCI_206739655233
E: ID_SERIAL_SHORT=206739655233
E: ID_USB_INTERFACES=:030000:
E: ID_VENDOR=FALENCI
E: ID_VENDOR_ENC=FALENCI
E: ID_VENDOR_FROM_DATABASE=STMicroelectronics
E: ID_VENDOR_ID=0483
E: MAJOR=189
E: MINOR=10
E: PRODUCT=483/5750/200
E: SUBSYSTEM=usb
E: TYPE=0/0/0
E: USEC_INITIALIZED=8384101306

P: /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0
E: DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.5/1-1.5:1.0
E: DEVTYPE=usb_interface
E: DRIVER=usbfs
E: ID_VENDOR_FROM_DATABASE=STMicroelectronics
E: INTERFACE=3/0/0
E: MODALIAS=usb:v0483p5750d0200dc00dsc00dp00ic03isc00ip00in00
E: PRODUCT=483/5750/200
E: SUBSYSTEM=usb
E: TYPE=0/0/0
E: USEC_INITIALIZED=8384114545

However usbfs is an obsolete driver which is not a module on my system. Because the driver does not exist it can not be blacklisted. I checked if there was any mention to this driver in the existing udev rules in lib and etc, but there aren't. Cleaning the database using udevadm info -c removes it from the list, but it is back there the moment I retry to plug in the device.

So, where does this usbfs come from, and more importantly how to remove it from the hwdb?

0

Thought this seems a bit a workaround, I'll post my (temporary?) solution anyway since for now it fixes my problem.

I use usb_modeswitch to detach the non-functional driver and reset the usb:

usb_modeswitch -v VID -p PID -d -R

exchange VID and PID to the values given to you by lsusb. The numbers after ID are VID:PID

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.