| Summary: | Mouse is broken | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | xorg | Reporter: | |||||||||
| Component: | Input/libinput | Assignee: | Peter Hutterer <peter.hutterer> | ||||||||
| Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> | ||||||||
| Severity: | normal | ||||||||||
| Priority: | medium | CC: | peter.hutterer | ||||||||
| Version: | unspecified | ||||||||||
| Hardware: | Other | ||||||||||
| OS: | Linux (All) | ||||||||||
| Whiteboard: | |||||||||||
| i915 platform: | i915 features: | ||||||||||
| Attachments: |
|
||||||||||
did you run: sudo udevadm hwdb --update Run udev hwdb --test="mouse:usb:v045ep071d:name:Microsoft Microsoft® 2.4GHz Transceiver V1.0:", if that doesn't show anything then it's not yet picked up by the hwdb. If it does, run udevadm test /sys/class/input/eventX and check for any errors in there. Yes, I did run udevadm trigger and I rebootet the system, several times in trying to fix the problem.
udevadm hwdb --test... does not show any result.
[root@localhost ~]# udevadm hwdb --test="mouse:usb:v045ep071d:name:Microsoft Microsoft® 2.4GHz Transceiver V1.0:"
[root@localhost ~]#
[root@localhost ~]# cat /usr/lib/udev/hwdb.d/71-mouse-local.hwdb
mouse:usb:v045ep071d:name:Microsoft Microsoft® 2.4GHz Transceiver V1.0:
MOUSE_DPI=1000@142
[root@localhost ~]#
[root@localhost ~]# lsusb
Bus 001 Device 005: ID 045e:071d Microsoft Corp.
[root@localhost ~]#
[root@localhost ~]# lsusb -v -s 1:5
Bus 001 Device 005: ID 045e:071d Microsoft Corp.
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x045e Microsoft Corp.
idProduct 0x071d
bcdDevice 2.70
iManufacturer 1 Microsoft
iProduct 2 Microsoft® 2.4GHz Transceiver V1.0
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 100mA
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.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 63
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 10
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0 No Subclass
bInterfaceProtocol 0 None
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 571
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 0x0008 1x 8 bytes
bInterval 10
Device Status: 0x0000
(Bus Powered)
[root@localhost ~]#
It's this device:
http://www.microsoft.com/hardware/en-ie/p/wireless-laser-desktop-6000
Mouse is ok in Gnome on Wayland and in GDM. But after login the mouse becomes unusable. Both running on Fedora 22 Beta.
(In reply to mail from comment #2) > Mouse is ok in Gnome on Wayland and in GDM. But after login the mouse > becomes unusable. Both running on Fedora 22 Beta. wait, really? That would actually indicate that libinput is working just fine and that something in the xorg stack has issues. also, reading the hwdb entry again: libinput assumes 1000dpi as default and ignores the frequency, so even if the hwdb entry is recognised it won't change the behaviour, you're just re-setting the defaults. anyway, found the issue: the (R) sign. replace that with a * in the hwdb entry and it should work (at least it does here): mouse:usb:v045ep071d:name:Microsoft Microsoft* 2.4GHz Transceiver V1.0: MOUSE_DPI=1000@142 might want to file a new systemd bug for that, we should be able to handle 'funky' signs like this... I'll move this bug over to some xorg product once I know what exactly is happening. so first question: what's the output of xinput list-props "device name"? [root@localhost ~]# xinput list-props "pointer:Microsoft Microsoft® 2.4GHz Transceiver V1.0" Device 'Microsoft Microsoft® 2.4GHz Transceiver V1.0': Device Enabled (136): 1 Coordinate Transformation Matrix (138): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 libinput Calibration Matrix (274): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 libinput Calibration Matrix Default (275): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 libinput Accel Speed (276): 0.151079 libinput Accel Speed Default (277): 0.000000 libinput Natural Scrolling Enabled (278): 0 libinput Natural Scrolling Enabled Default (279): 0 libinput Send Events Modes Available (257): 1, 0 libinput Send Events Mode Enabled (258): 0, 0 libinput Send Events Mode Enabled Default (259): 0, 0 libinput Left Handed Enabled (280): 0 libinput Left Handed Enabled Default (281): 0 libinput Scroll Methods Available (282): 0, 0, 1 libinput Scroll Method Enabled (283): 0, 0, 0 Device Node (260): "/dev/input/event6" Device Product ID (261): 1118, 1821 [root@localhost ~]# Anything I can help with ? This non-working mouse is really really annoying. two things: file a separate bug for the issue with the ® please, against systemd. the other thing: record your device and some movements with evemu-record and attach the output here. I'm assuming by "is broken" you mean it doesn't move, or doesn't move correctly, right? I already reported the funky device string problem: https://bugs.freedesktop.org/show_bug.cgi?id=90343 Created attachment 115888 [details]
description
Created attachment 115889 [details]
evemu-record
yes. Broken means the movement is very slow. I have to move the mouse about a meter to cross the screen once. ok, this is a problem in the xorg libinput driver, the device is set up as absolute device and thus the scaling happens in the server, and is incorrect. To make sure, please attach the output of xinput list "device name" here. [root@localhost ~]# xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Microsoft Microsoft® 2.4GHz Transceiver V1.0 id=11 [slave pointer (2)]
⎜ ↳ AlpsPS/2 ALPS DualPoint TouchPad id=14 [slave pointer (2)]
⎜ ↳ AlpsPS/2 ALPS DualPoint Stick id=15 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ Microsoft Microsoft® 2.4GHz Transceiver V1.0 id=10 [slave keyboard (3)]
↳ UVC Camera (046d:08c9) id=12 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]
↳ Dell WMI hotkeys id=16 [slave keyboard (3)]
[root@localhost ~]# xinput list pointer:"Microsoft Microsoft® 2.4GHz Transceiver V1.0"
Microsoft Microsoft® 2.4GHz Transceiver V1.0 id=11 [slave pointer (2)]
Reporting 8 classes:
Class originated from: 11. Type: XIButtonClass
Buttons supported: 9
Button labels: "Button Left" "Button Middle" "Button Right" "Button Wheel Up" "Button Wheel Down" "Button Horiz Wheel Left" "Button Horiz Wheel Right" "Button Side" "Button Extra"
Button state:
Class originated from: 11. Type: XIKeyClass
Keycodes supported: 248
Class originated from: 11. Type: XIValuatorClass
Detail for Valuator 0:
Label: Abs X
Range: 0.000000 - 65535.000000
Resolution: 0 units/m
Mode: absolute
Current value: 2778.000000
Class originated from: 11. Type: XIValuatorClass
Detail for Valuator 1:
Label: Abs Y
Range: 0.000000 - 65535.000000
Resolution: 0 units/m
Mode: absolute
Current value: 21595.000000
Class originated from: 11. Type: XIValuatorClass
Detail for Valuator 2:
Label: Rel Horiz Scroll
Range: -1.000000 - -1.000000
Resolution: 0 units/m
Mode: relative
Class originated from: 11. Type: XIValuatorClass
Detail for Valuator 3:
Label: Rel Vert Scroll
Range: -1.000000 - -1.000000
Resolution: 0 units/m
Mode: relative
Class originated from: 11. Type: XIScrollClass
Scroll info for Valuator 2
type: 2 (horizontal)
increment: 15.000000
flags: 0x0
Class originated from: 11. Type: XIScrollClass
Scroll info for Valuator 3
type: 1 (vertical)
increment: 15.000000
flags: 0x0
[root@localhost ~]#
Created attachment 115906 [details] [review] 0001-Only-init-abs-axes-if-we-don-t-have-acceleration.patch give this one a try please, thanks. Applied the patch to xorg-x11-drv-libinput-0.9.0-1.fc22.x86_64.rpm and installed it. Works like a charm. Many thanks. thanks, sent it to the list to get some more eyeballs on it http://patchwork.freedesktop.org/patch/50062/ commit 3d6afca975e5c54d458974ca2e9ada3df209587c Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Wed May 20 13:22:45 2015 +1000 Only init abs axes if we don't have acceleration |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
I followed the instructions, but to no effect. [root@localhost ~]# mouse-dpi-tool /dev/input/event7 Mouse Microsoft Microsoft® 2.4GHz Transceiver V1.0 on /dev/input/event7 Move the device 250mm/10in or more along the x-axis. Pause 3 seconds before movement to reset, Ctrl+C to exit. Covered distance in device units: 9837 at frequency 142.9Hz | /^C Estimated sampling frequency: 142Hz To calculate resolution, measure physical distance covered and look up the matching resolution in the table below 624mm 24.59in 400dpi 416mm 16.39in 600dpi 312mm 12.30in 800dpi 249mm 9.84in 1000dpi 208mm 8.20in 1200dpi 178mm 7.03in 1400dpi 156mm 6.15in 1600dpi 138mm 5.46in 1800dpi 124mm 4.92in 2000dpi 113mm 4.47in 2200dpi 104mm 4.10in 2400dpi If your resolution is not in the list, calculate it with: resolution=9837/inches, or resolution=9837 * 25.4/mm Entry for hwdb match (replace XXX with the resolution in DPI): mouse:usb:v045ep071d:name:Microsoft Microsoft® 2.4GHz Transceiver V1.0: MOUSE_DPI=XXX@142 [root@localhost ~]# cat /usr/lib/udev/hwdb.d/71-mouse-local.hwdb mouse:usb:v045ep071d:name:Microsoft Microsoft® 2.4GHz Transceiver V1.0: MOUSE_DPI=1000@142 [root@localhost ~]# But no MOUSE_DPI shows up: udevadm info /dev/input/event7 | grep MOUSE_DPI [root@localhost ~]# udevadm info /dev/input/event7 P: /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.1/0003:045E:071D.0003/input/input9/event7 N: input/event7 S: input/by-id/usb-Microsoft_Microsoft®_2.4GHz_Transceiver_V1.0-if01-event-mouse S: input/by-path/pci-0000:00:1a.0-usb-0:1.1.1:1.1-event-mouse E: DEVLINKS=/dev/input/by-id/usb-Microsoft_Microsoft®_2.4GHz_Transceiver_V1.0-if01-event-mouse /dev/input/by-path/pci-0000:00:1a.0-usb-0:1.1.1:1.1-event-mouse E: DEVNAME=/dev/input/event7 E: DEVPATH=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1.1/1-1.1.1:1.1/0003:045E:071D.0003/input/input9/event7 E: ID_BUS=usb E: ID_INPUT=1 E: ID_INPUT_KEY=1 E: ID_INPUT_KEYBOARD=1 E: ID_INPUT_MOUSE=1 E: ID_MODEL=Microsoft®_2.4GHz_Transceiver_V1.0 E: ID_MODEL_ENC=Microsoft®\x202.4GHz\x20Transceiver\x20V1.0 E: ID_MODEL_ID=071d E: ID_PATH=pci-0000:00:1a.0-usb-0:1.1.1:1.1 E: ID_PATH_TAG=pci-0000_00_1a_0-usb-0_1_1_1_1_1 E: ID_REVISION=0270 E: ID_SERIAL=Microsoft_Microsoft®_2.4GHz_Transceiver_V1.0 E: ID_TYPE=hid E: ID_USB_DRIVER=usbhid E: ID_USB_INTERFACES=:030101:030000: E: ID_USB_INTERFACE_NUM=01 E: ID_VENDOR=Microsoft E: ID_VENDOR_ENC=Microsoft E: ID_VENDOR_ID=045e E: LIBINPUT_DEVICE_GROUP=usb-0000:00:1a.0-1.1 E: MAJOR=13 E: MINOR=71 E: SUBSYSTEM=input E: USEC_INITIALIZED=98450 I'm running Fedora 23 beta. The mouse is a wireless MS Laser mouse 6000 V2.0 with an USB dongle. Regards, Robert