Scroll wheel emulation with Logitech Marble Mouse

Discussions about using Linux guests in VirtualBox.
Post Reply
carefully
Posts: 2
Joined: 25. Feb 2016, 00:47

Scroll wheel emulation with Logitech Marble Mouse

Post by carefully »

I have a Windows 7 host with a Linux Mint Guest and a Logitech Marble (trackball) Mouse.

I am trying to get scroll wheel emulation working in the Linux guest. I have tried various evdev configuration settings but not getting any result.

Two finger scrolling works with the built-in touchpad but not with the Marble Mouse. Both mice are using the ImExPS/2 Generic Explorer Mouse driver.

As far as I can tell scroll wheel events are being generated by the touchpad as mouse keys 4 and 5. But no scroll wheel events are generated by the marble mouse.

Code: Select all

$ xinput list
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ VirtualBox mouse integration            	id=9	[slave  pointer  (2)]
⎜   ↳ ImExPS/2 Generic Explorer Mouse         	id=11	[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)]
    ↳ Sleep Button                            	id=7	[slave  keyboard (3)]
    ↳ Video Bus                               	id=8	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=10	[slave  keyboard (3)]

Code: Select all

$ cat /usr/share/X11/xorg.conf.d/60-trackball.conf 
Section "InputClass"
        Identifier "Trackball"
        MatchIsPointer "on"
        MatchDevicePath "/dev/input/event*"
	MatchProduct "ImExPS/2 Generic Explorer Mouse"
        Driver "evdev"

	Option "Buttons" "9"
	Option "ButtonMapping" "1 2 3 4 5 6 7 8 9"
	Option "EmulateWheel" "1"
	Option "EmulateWheelButton" "2"
EndSection
With debugging enabled I get the following in the VBox log file.

Scrolling with the touchpad gives this:

Code: Select all

01:32:56.687935 ps2mPutEvent: dX=0 dY=0 dZ=1 dW=0 buttons=00
01:32:56.688044 ps2kInsertQueue: inserted 0x08 into queue 0000000047e92f7c
01:32:56.688076 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:32:56.688100 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:32:56.688123 ps2kInsertQueue: inserted 0x01 into queue 0000000047e92f7c
01:32:56.699839 ps2mPutEvent: dX=0 dY=0 dZ=1 dW=0 buttons=00
01:32:56.699941 ps2kInsertQueue: inserted 0x08 into queue 0000000047e92f7c
01:32:56.700005 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c01:32:56.687935 ps2mPutEvent: dX=0 dY=0 dZ=1 dW=0 buttons=00
01:32:56.688044 ps2kInsertQueue: inserted 0x08 into queue 0000000047e92f7c
01:32:56.688076 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:32:56.688100 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:32:56.688123 ps2kInsertQueue: inserted 0x01 into queue 0000000047e92f7c
01:32:56.699839 ps2mPutEvent: dX=0 dY=0 dZ=1 dW=0 buttons=00
01:32:56.699941 ps2kInsertQueue: inserted 0x08 into queue 0000000047e92f7c
01:32:56.700005 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:32:56.700029 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:32:56.700051 ps2kInsertQueue: inserted 0x01 into queue 0000000047e92f7c
01:32:56.700029 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:32:56.700051 ps2kInsertQueue: inserted 0x01 into queue 0000000047e92f7c
And attempting to scroll with the marble mouse gives this:

Code: Select all

01:37:28.572096 ps2mPutEvent: dX=0 dY=0 dZ=0 dW=0 buttons=01
01:37:28.572197 ps2kInsertQueue: inserted 0x09 into queue 0000000047e92f7c
01:37:28.572228 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:28.572252 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:28.572274 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:28.603478 ps2mPutEvent: dX=0 dY=0 dZ=0 dW=0 buttons=03
01:37:28.603617 ps2kInsertQueue: inserted 0x0B into queue 0000000047e92f7c
01:37:28.603650 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:28.603675 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:28.603698 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:29.491466 ps2mPutEvent: dX=0 dY=0 dZ=0 dW=0 buttons=01
01:37:29.491569 ps2kInsertQueue: inserted 0x09 into queue 0000000047e92f7c
01:37:29.491601 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:29.491626 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
01:37:29.491649 ps2kInsertQueue: inserted 0x00 into queue 0000000047e92f7c
Any ideas?
kchan
Posts: 4
Joined: 27. Jul 2016, 07:18
Primary OS: Linux other
VBox Version: OSE other
Guest OSses: FreeBSD, Windows

Re: Scroll wheel emulation with Logitech Marble Mouse

Post by kchan »

Can you post your /var/log/Xorg.0.log?
Post Reply