Recently, I've purchased a pre-owned Logitech Marble FX trackball. I'm enjoying it in my Fedora 27, but I can't make the scroll work. I'm using an active PS/2 to USB converter in order to connect the trackball to the computer (https://www.amazon.es/dp/B00DHD6TQ6/...740151_TE_item).
The converter is automatically detected and I can use the trackball (except the red button) without problems right out of the box.
lsusb displays this:
Code:
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 8087:07dc Intel Corp.
Bus 001 Device 003: ID 413c:2003 Dell Computer Corp. Keyboard
Bus 001 Device 002: ID 13ba:0018 PCPlay Barcode PCP-BCG4209
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
With more detail:
Code:
Bus 001 Device 002: ID 13ba:0018 PCPlay Barcode PCP-BCG4209
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.10
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x13ba PCPlay
idProduct 0x0018 Barcode PCP-BCG4209
bcdDevice 0.01
iManufacturer 0
iProduct 1
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 59
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 0
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 400mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 1 Keyboard
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 62
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 8
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.10
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 130
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0005 1x 5 bytes
bInterval 8
It is detected as a a BarCode Reader! (https://usb-ids.gowdy.us/read/UD/13ba)
It doesn't matter. Using xev i can see the events of the three buttons and the ball (again, red button doesn't appear to work).
The output of xinput is:
Code:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ xwayland-pointer:13 id=6 [slave pointer (2)]
⎜ ↳ xwayland-relative-pointer:13 id=7 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ xwayland-keyboard:13 id=8 [slave keyboard (3)]
I can, for example, use the next command and the middle button doesn't work:
Code:
xinput set-button-map 6 1 0 3
Listing the props I get:
Code:
Device 'xwayland-pointer:13':
Device Enabled (117): 1
Coordinate Transformation Matrix (119): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (242): 0
Device Accel Constant Deceleration (243): 1.000000
Device Accel Adaptive Deceleration (244): 1.000000
Device Accel Velocity Scaling (245): 10.000000
Listing the /dev/input/by-id/ I get:
Code:
total 0
drwxr-xr-x. 2 root root 120 Feb 16 20:08 .
drwxr-xr-x. 4 root root 360 Feb 16 20:08 ..
lrwxrwxrwx. 1 root root 9 Feb 16 20:08 usb-13ba_Barcode_Reader-event-kbd -> ../event2
lrwxrwxrwx. 1 root root 9 Feb 16 20:08 usb-13ba_Barcode_Reader-if01-event-mouse -> ../event3
lrwxrwxrwx. 1 root root 9 Feb 16 20:08 usb-13ba_Barcode_Reader-if01-mouse -> ../mouse0
lrwxrwxrwx. 1 root root 9 Feb 16 20:08 usb-Dell_Dell_USB_Keyboard-event-kbd -> ../event4
I have used the command Xorg :1 -configure in order to obtain my xorg.conf file, which is:
Code:
...
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
EndSection
...
Then, I've copied this file to /etc/X11/xorg.conf and made some changes, for example, adding the option of mapping buttons in order to deactivate the middle button, but after rebooting the computer, the middle button still works.
Code:
...
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/input/mice"
Option "ZAxisMapping" "4 5 6 7"
Option "ButtonMapping" "1 0 3 4 5 6 7 8 9"
EndSection
...
My first objective is to use the middle button as the EmulateWheelButton in order to trigger the scroll. It would be awesome if somebody knows how to "force" the detection of that red button, to use it instead of the middle button.
I've followed several procedures (pretty outdatted):
https://forums.linuxmint.com/viewtopic.php?t=117923
https://forums.fedoraforum.org/showt...heel-Emulation
And also other steps for the Logitech Marble (not FX):
https://forums.fedoraforum.org/showt...rakball-scroll
https://wiki.archlinux.org/index.php...h_Marble_Mouse
https://forums.fedoraforum.org/showt...h-Marble-Mouse
And some mixes, but without success.
Any tip or help will be appreciated! I really need the scroll! Thanks!