On Tue, Oct 16, 2018 at 09:45:52PM -0400, Charles Daniels wrote:
> First off, I'm new around here, so my apologies in advance if this is
> the wrong list or I've formatted something incorrectly.
>
> I've recently installed OpenBSD 6.3 on my Thinkpad X220. I'm happy to
> report that almost everything seems to work the way it should
> (suspend/resume, wireless, volume controls, etc.). However, I've been
> having some difficulty with the TrackPoint.
>
> The TrackPoint works fine as a pointing device, however the "WS
> Pointer Wheel Emulation" emulation feature is not working. For those
> unfamiliar, this allows the middle mouse button to be held down, and
> while it is held, the TrackPoint can be used to scroll vertically or
> horizontally.
>
> After conducting some research, I have written the following script to
> set the appropriate xinput properties to properly enable the pointer
> wheel emulation functionality:
>
> #!/bin/sh
>
> xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation" 1
> xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation Button" 2
> xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation Axes" 6 7 4 5
> xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation Timeout" 500
> xinput set-prop /dev/wsmouse "WS Pointer Wheel Emulation Inertia" 20
>
> I have tried many different variations on the input parameters.
> One interesting behavior I have discovered is that if I set the
> emulation axes to "4 5 0 0" then I can scroll up and down by moving
> the track point left or right by holding the middle mouse button.
> However, when I use "6 7 4 5" or "0 0 4 5", the up and down scrolling
> generally does not work at all (occasionally jumping in the direction
> the trackpoint was pushed).
>
> I have spent several days troubleshooting this issue and haven't had
> any luck. I think this may be a bug, but I wanted to see if anyone
> else had similar issues and knew of a solution before submitting a bug
> report. I am under the impression that this list does not permit
> attachments, so I will refrain from attaching the full output of dmesg
> and other long logs, but I will include the output of some
> commands that I think might be relevant.
>
> Finally, I tried digging into some of the source code for Xenocara and
> the wsmouse drive. Unfortunately, my knowledge of OpenBSD and Xorg are
> insufficient to draw any useful conclusions. However, I think the
> following files may be relevant / a good starting point for someone
> more knowledgeable than I:
>
> * xenocara/driver/xf86-input-ws/include/ws-properties.h
> * xenocara/driver/xf86-input-ws/src/emuwheel.c
>
> I would really appreciate any suggestions to troubleshoot further.
>
> Charles
>
>
> ### possibly relevant output follows
>
> nessus$ dmesg | grep -i mouse
> wsmouse0 at pms0 mux 0
> nessus$ dmesg | grep -i ws
> wsdisplay0 at inteldrm0 mux 1: console (std, vt100 emulation)
> wsdisplay0: screen 1-5 added (std, vt100 emulation)
> wskbd0 at pckbd0: console keyboard, using wsdisplay0
> wsmouse0 at pms0 mux 0
> nessus$ xinput
> ⎡ Virtual core pointer id=2 [master pointer (3)]
> ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer
> (2)]
> ⎜ ↳ /dev/wsmouse id=7 [slave pointer
> (2)]
> ⎣ Virtual core keyboard id=3 [master keyboard (2)]
> ↳ Virtual core XTEST keyboard id=5 [slave keyboard
> (3)]
> ↳ /dev/wskbd id=6 [slave keyboard
> (3)]
> nessus$ xinput list-props /dev/wsmouse
> Device '/dev/wsmouse':
> Device Enabled (140): 1
> Coordinate Transformation Matrix (141): 1.00, 0.00,
> 0.00, 0.00, 1.00, 0.00, 0.00, 0.00, 1.00
> Device Accel Profile (253): 0
> Device Accel Constant Deceleration (254): 1.00
> Device Accel Adaptive Deceleration (255): 1.00
> Device Accel Velocity Scaling (256): 10.00
> WS Pointer Middle Button Emulation (257): 2
> WS Pointer Middle Button Timeout (258): 50
> WS Pointer Wheel Emulation (259): 1
> WS Pointer Wheel Emulation Axes (260): 4, 5, 0, 0
> WS Pointer Wheel Emulation Inertia (261): 20
> WS Pointer Wheel Emulation Timeout (262): 500
> WS Pointer Wheel Emulation Button (263): 2
> nessus$ cat /etc/X11/xorg.conf
> nessus$ X -version
>
> X.Org X Server 1.19.6
> Release Date: 2017-12-20
> X Protocol Version 11, Revision 0
> Build Operating System: OpenBSD 6.3 amd64
> Current Operating System: OpenBSD nessus.domain_redacted 6.3 GENERIC.MP#107
> amd64
> Build Date: 24 March 2018 02:38:24PM
>
> Current version of pixman: 0.34.0
> Before reporting problems, check http://wiki.x.org
> to make sure that you have the latest version.
>
>
The jumping up and down vertically should have been fixed via this