Tuesday, 4 October 2005

Configuring Serial Wheel mouse (Microsoft Intellimouse) in Linux

I own a serial port, Microsoft Intellimouse which I have attached to my PC. But each time I reinstall, linux on the machine, the mouse fails to work. Here I will explain how to configure this mouse to work in Linux.

You can use mouseconfig script (found in Fedora) to configure the mouse. First log in as root and enter the command:
#  mouseconfig
It will ask a few questions like which port the mouse is connected (in my case the serial DOS COM1 port), what kind of mouse it is and so on. Then it creates a character device called /dev/ttyS0 and map it to the COM1 port.
Note: If your mouse is connected to the COM2 port, you have to specify it when asked in the mouseconfig script.

Alternately, you can create a character device using the "mknod" program instead of the mouseconfig script; provided you know the major and minor modes of the device. In the case of /dev/ttyS0, it is 4 and 64 respectively.
# mknod c 4 64 /dev/ttyS0
Now check whether it is working or not by doing :
# cat /dev/ttyS0
... and then moving the mouse. If you see characters being written on the screen, it means the device is working properly.

Now change the relavent section in the /etc/X11/xorg.conf file to get it working in X.
My /etc/X11/xorg.conf file's modified Input section is as follows:

# File: /etc/X11/xorg.conf
...
Section "InputDevice"
Identifier "Mouse0"
Driver "mouse"
# Option "Protocol" "IMPS/2"
Option "Protocol" "IntelliMouse"
# Option "Device" "/dev/input/mice"
Option "Device" "/dev/ttyS0"
Option "ZAxisMapping" "4 5" #For enabling wheel
Option "Buttons" "3"
Option "Emulate3Buttons" "no"
EndSection
...
The commented out lines were the default original settings after I installed Fedora core 2; and the lines below it are the settings I have inserted. "IMPS/2" protocol can be used if you have a PS/2 wheel mouse; in which case, you have to change the Device settings too.
Then you restart X.
That is all there is to it. Now you can use your Microsoft Intellimouse to its full potential in linux.

No comments:

Post a Comment