multiple_mice_under_X

This is part of The Pile, a partial archive of some open source mailing lists and newsgroups.



Date: Mon, 20 Nov 2000 14:33:02 -0800
To: svlug@lists.svlug.org
Subject: Re: [svlug] Re:  Visitors from afar.
From: Rick Moen <rick@linuxmafia.com>

begin  David Madison quotation:

> Btw, does anyone have experience with using multiple mice with Linux?
> I see that XFree4 supposedly supports it....

I see nothing in the XFree86 v. 4.x docs about _simultaenous_ support
for multiple mice.  Mouse support docs are here:

http://www.xfree86.org/4.0.1/mouse.html

> ...and so does something called KGI/GGI, whatever that is

KGI is a software interface in the kernel, for communicating with
hardware.  libggi (which implements the GGI notion) is a set of routines
to speak to KGI, libX11, and some other software interfaces for hardware
communication.

The Berlin project uses GGI as its interface to hardware (and thus
operates through KGI in the kernel).

===
To: Rick Moen <rick@linuxmafia.com>
Subject: Re: [svlug] Re: Visitors from afar. 
Date: Mon, 20 Nov 2000 14:50:44 -0800
From: J C Lawrence <claw@kanga.nu>

On Mon, 20 Nov 2000 14:33:02 -0800 
Rick Moen <rick@linuxmafia.com> wrote:

> begin David Madison quotation:
>> Btw, does anyone have experience with using multiple mice with
>> Linux?  I see that XFree4 supposedly supports it....

> I see nothing in the XFree86 v. 4.x docs about _simultaenous_
> support for multiple mice.  Mouse support docs are here:

> http://www.xfree86.org/4.0.1/mouse.html

http://lists.openresources.com/Gimp/gimp-user/msg00006.html
http://www.linuxgazette.com/issue33/gm.html


===
Date: Mon, 20 Nov 2000 15:16:40 -0800
From: Rick Moen <rick@linuxmafia.com>
To: svlug@lists.svlug.org
Subject: Re: [svlug] Re: Visitors from afar.

begin  J C Lawrence quotation:

> http://lists.openresources.com/Gimp/gimp-user/msg00006.html
> http://www.linuxgazette.com/issue33/gm.html

Just to confirm:  Your URLs cast no light (as far as I can tell) on how
to do multiple, simultaneous mice on XFree86 4.x.

But who knows?  David Madison (_not_ Ian -- sorry) might be able to play
around with those techniques and make it work with his PS/2 and serial
rodents.

===

From: David Madison <svlug.org@daveola.com>
To: svlug@lists.svlug.org
Date: Tue Nov 21 02:19:56 2000
Subject: [svlug] Two mouse solution

After wrangling for an hour or so, I figured out how to get *my*
two mice to work, you probably wouldn't want to use this for a
graphics tablet since I've used gpm, not Xinput as my solution
(since I couldn't get Xinput to work properly :)

The trick I used is to use the gpm repeater function.  gpm is the
daemon that handles the mouse for virtual consoles, but you can
'repeat' the mouse information into the /dev/gpmdata pipe, and gpm
can handle multiple mice (and even remap buttons :)

So I start up gpm:

% gpm -k				# Kill the gpm daemon
% gpm	\				# And restart it..
	-R MouseSystems \		#   repeat to gpmdata as MouseSystems
	-t ps2 -m /dev/psaux \		#   first mouse, PS/2
	-M -t ms -m /dev/ttyS0 -B 132	#   second mouse, serial, switch buttons

Then I configure X to use the repeated data as if it
were a MouseSystems mouse, as specified above:

# File:  /etc/X11/XF86Config (or /usr/X11R6... or..)
--------------------------------------------------
Section "Pointer"
    Protocol    "MouseSystems"
    Device      "/dev/gpmdata"
--------------------------------------------------

Now I have to setup my laptop the same way for different mouse reasons.
I'm surprised that more people don't run into multiple mice difficulties.

As a side-note, I couldn't get Xinput to work, though I didn't read
all the docs..  Here's my failed attempt:

--------------------------------------------------
Section "Xinput"
  SubSection "Mouse"
    Port "/dev/ttyS0"
    DeviceName "Mouse"
    #Mode Relative
    AlwaysCore
    Protocol    "Microsoft"
  EndSubSection
EndSection
--------------------------------------------------

If anyone familiar with Xinput can see any obvious problems, I'd love
to know for future reference.

-- 

===

Date: Mon, 20 Nov 2000 21:34:44 -0800 (PST)
From: Romain Kang <romain@kzsu.stanford.edu>
To: svlug@lists.svlug.org
Subject: [svlug] Re: Two mouse solution

Below are the relevant sections from my XF86Config.

It's been a few months, so I don't recall exactly why I did this.
I may have set up the USB trackball in the Pointer section if I
couldn't get Emulate3Buttons to work under Xinput.  Also, I think
I needed both ps2Mouse and ps2Core in order for the PS/2 side to
work...

I gave up running gpm because I couldn't get the two mice to coexist
in gpm.  IIRC, gpm couldn't deal with the dead USB side after doing
a suspend-to-RAM followed by a resume.  XF86 just ignores it until
I rmmod/insmod the USB driver (usb-uhci in a K7V/Athlon machine).

(I got the Marble Mouse trackball because I didn't have a space
within easy reach where I could put a regular a mouse; I leave the
trackball perched on top of the numeric keypad.  I could never get
used to the thumb-driven trackball on the Cordless TrackMan Wheel.)

Romain Kang                             Disclaimer: I speak for myself alone,
romain@kzsu.stanford.edu                except when indicated otherwise.

# **********************************************************************
# Pointer section
# **********************************************************************

Section "Pointer"
    # USB: Logitech Marble Mouse
    Protocol    "ps/2"
    Device      "/dev/input/mice"

# Emulate3Buttons is an option for 2-button Microsoft mice
# Emulate3Timeout is the timeout in milliseconds (default is 50ms)
    Emulate3Buttons
    Emulate3Timeout    50

EndSection

Section "Xinput"
    # PS/2: Logitech Cordless Wheel Mouse
    SubSection "Mouse"
        DeviceName  "ps2Mouse"
        Protocol    "imps/2"
        Device      "/dev/psaux
        ZAxisMapping 4 5
        AlwaysCore
    EndSubSection
    SubSection "Mouse"
        DeviceName  "ps2Core"
        Protocol    "imps/2"
        Device      "/dev/psaux
        ZAxisMapping 4 5
        AlwaysCore
    EndSubSection
EndSection

===

Date: Mon, 20 Nov 2000 21:42:04 -0800 (PST)
From: Romain Kang <romain@kzsu.stanford.edu>
To: svlug@lists.svlug.org
Subject: [svlug] Re: Two mouse solution

I wrote:
> Also, I think
> I needed both ps2Mouse and ps2Core in order for the PS/2 side to
> work...

I tried it again, and it seemed perfectly happy with just the ps2Mouse
definition.  So here's the revised XF86Config incantation:

# **********************************************************************
# Pointer section
# **********************************************************************

Section "Pointer"
    # USB: Logitech Marble Mouse
    Protocol    "ps/2"
    Device      "/dev/input/mice"

# Emulate3Buttons is an option for 2-button Microsoft mice
# Emulate3Timeout is the timeout in milliseconds (default is 50ms)
    Emulate3Buttons
    Emulate3Timeout    50

EndSection

Section "Xinput"
    # PS/2: Logitech Cordless Wheel Mouse
    SubSection "Mouse"
        DeviceName  "ps2Mouse"
        Protocol    "imps/2"
        Device      "/dev/psaux
        ZAxisMapping 4 5
        AlwaysCore
    EndSubSection
EndSection


===

the rest of The Pile (a partial mailing list archive)

doom@kzsu.stanford.edu