DebuggingTouchpadDetection
Size: 12656
Comment: Reconstructed 'In case your Touchpad stops working after a while'
|
Size: 13786
Comment: 1) Reworded section == In case your Touchpad... as it read weird. 2) kernel(linux) -> kernel (linux). 3) Lots of misc. syntax and info presentation fixes.
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
Line 9: | Line 10: |
1. Features of Mouse works but features of Touchpad (like Tapping, Scrolling) does not work at all. | 1. Your Touchpad has the simple features of a mouse, but Touchpad features, like tapping, scrolling, etc. do not work at all. |
Line 12: | Line 13: |
Line 16: | Line 16: |
Consider this document on filing Touchpad bugs with relevant information. Before filing a bug please check the list of known bugs at the end of this document. If your are unsure to which package the bug should be filed or your problem is not listed in any of the categories then, in general file your touchpad related bugs against '''xserver-xorg-input-synaptics'''. If the bug turns out to be a bug related to kernel('''linux''') or any other package, bug triagers will assign your bug additionally to that package and mark the task related to xserver-xorg-input-synaptics, as invalid. | Before filing a bug please check the list of known bugs at the end of this document. If your are unsure to which package the bug should be filed, or your problem is not listed in any of the categories, then please file your touchpad related bugs against '''xserver-xorg-input-synaptics'''. If the bug turns out to be a bug related to the kernel ('''linux''') or any other package, bug triagers will assign your bug additionally to that package and mark the task related to xserver-xorg-input-synaptics, as invalid. |
Line 19: | Line 20: |
Line 20: | Line 22: |
1. Laptop model. | 1. Laptop model. |
Line 26: | Line 28: |
However if you think that the bug is a general one with the type of the Touchpad and is irrespective of the Laptop model you could omit mentioning the Laptop model in the description. But only consider doing this, when you are very sure that the bug is affecting all laptops with that Touchpad model. | However, if you think that the bug is a general one with your Touchpad, and is irrespective of the laptop model, you could omit mentioning the laptop model in the description. Please only consider doing this when you are very sure that the bug is affecting all laptops with that Touchpad model. |
Line 30: | Line 32: |
This is generally a case of kernel('''linux''') or '''xorg''' bug. Check by connecting a mouse that if it works or not. *If no, then you should file the bug against '''HAL''' and follow the steps below. 1. Switch to a VT using Crtl+Alt+F2 and enter following in your terminal {{{ $ sudo evtest /dev/input/eventX > ~/evtest }}} * See [[DebuggingTouchpadDetection/evtest|this]] for help on how to enter VT and log evtest events. 2. Scroll, tap, drag, press buttons and create various other possible events on the Touchpad and then press CTRL+C to exit. {{{ $ cp /var/log/Xorg.0.log ~/Xorg.0.log }}} 4. Press Crtl+Alt+F7 to switch back to X. 3. Add {{{~/evtest}}} and {{{Xorg.o.log}}} to the bug report in seperate attachments. *Check your {{{ cat /proc/bus/input/devices }}} , if you do not find something like this {{{ |
This is generally a case of a kernel ('''linux''') or '''xorg''' bug. Check by connecting an external mouse to see if that works or not. * If no, then you should file the bug against '''HAL''' and follow the steps below. * Switch to a VT using Crtl+Alt+F2 and enter following in your terminal: {{{ sudo evtest /dev/input/eventX > ~/evtest}}} where the "X" in "eventX" is the event number found by typing in a terminal: {{{ cat /proc/bus/input/devices}}} Please see [[DebuggingTouchpadDetection/evtest|this]] for help on how to enter VT and log evtest events. * Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit and execute: {{{ cp /var/log/Xorg.0.log ~/Xorg.0.log }}} * Press Crtl+Alt+F7 to switch back to X. * Add {{{~/evtest}}} and {{{Xorg.o.log}}} to the bug report as separate attachments. * Execute at a terminal:{{{ cat /proc/bus/input/devices }}} One should see: {{{ |
Line 50: | Line 53: |
B: ABS=11000003 }}} *In that case the bug is in the kernel itself and follow these steps: 1. File the bug against '''linux''' |
B: ABS=11000003 }}} If you do not find something like this, then the bug is in the linux kernel. Please follow these steps: 1. File the bug against the '''[[https://launchpad.net/ubuntu/+source/linux|linux]]''' package. |
Line 56: | Line 56: |
1. Enter the following command in a terminal/console: {{{ $ dmesg > ~/dmesg }}} 1. Attach {{{~/dmesg}}} and your {{{/var/log/Xorg.0.log}}} to the bug report in separate attachments. |
1. Enter the following command in a terminal: {{{ dmesg > ~/dmesg }}} 1. Attach {{{~/dmesg}}} and your {{{/var/log/Xorg.0.log}}} to the bug report as separate attachments. |
Line 62: | Line 62: |
This is generally a case of kernel('''linux''') or '''xorg''' bug. In this case, '''in description field, specify the steps to make the touchpad stop working'''. eg- hit a key, drag or something. Now check by connecting a mouse that if it works or not. | This is generally a case of a kernel ('''linux''') or '''xorg''' bug. In this case, '''in the description field, specify the steps to make the touchpad stop working''' (e.g. hit a key, drag an icon, etc.). Now connect an external mouse to see if it works or not. |
Line 66: | Line 66: |
1. Switch to a VT using Crtl+Alt+F2 and enter following in your terminal {{{ $ sudo evtest /dev/input/eventX > ~/evtest }}} |
1. Switch to a VT using Crtl+Alt+F2 and enter following in your terminal: {{{ sudo evtest /dev/input/eventX > ~/evtest }}} |
Line 69: | Line 69: |
2. Scroll, tap, drag, press buttons and create various other possible events on the Touchpad and then press CTRL+C to exit. {{{ $ cp /var/log/Xorg.0.log ~/Xorg.0.log }}} |
2. Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit. {{{ cp /var/log/Xorg.0.log ~/Xorg.0.log }}} |
Line 72: | Line 72: |
4. Add {{{~/evtest}}} and {{{Xorg.o.log}}} to the bug report in separate attachments. *Check your {{{ cat /proc/bus/input/devices }}} , if you do not find something like this {{{ |
4. Add {{{~/evtest}}} and {{{Xorg.o.log}}} to the bug report as separate attachments. * Execute at a terminal: {{{ cat /proc/bus/input/devices }}} One should see something like this: {{{ |
Line 83: | Line 84: |
B: ABS=11000003 }}} *If you do not find a Touchpad in you /proc/bus/inpus/devices, in that case the bug is in the kernel itself and you should follow these steps: |
B: ABS=11000003 }}} If you do not find a Touchpad in you /proc/bus/inpus/devices, the bug is in the kernel itself and you should follow these steps: |
Line 88: | Line 86: |
1. Direct after logging in to GNOME, KDE or Xfce open a terminal and enter the following commands: {{{ $ dmesg > ~/dmesg_boot $ cp /var/log/Xorg.0.log ~/Xorg.0.log }}} |
1. Directly after logging in to GNOME, KDE, or Xfce open a terminal and enter the following commands: {{{ dmesg > ~/dmesg_boot cp /var/log/Xorg.0.log ~/Xorg.0.log }}} |
Line 94: | Line 92: |
$ LANG=C $ dmesg > ~/dmesg $ diff -ns ~/dmesg_boot ~/dmesg > ~/dmesg_diff $ cp /var/log/Xorg.0.log ~/Xorg.0.log_tmp $ diff -ns ~/Xorg.0.log ~/Xorg.0.log_tmp > ~/Xorg.0.log_diff }}} 1. Attach {{{~/dmesg_boot}}}, {{{~/dmesg_diff}}}, {{{~/Xorg.0.log}}} and {{{~/Xorg.0.log_diff}}} to the bug report in separate attachments. == In case Touchpad features like scrolling, tapping, etc do not work at all. == This happens when 'Touchpad' Tab is not there in System>Preferences>Mouse. This may be a wrong detection by the '''xserver''' or the '''kernel''' itself. So xserver-xorg-input-synaptics has nothing to do with it. In case, filing a bug against the kernel('''linux'''), please note that you should not mark the bug as duplicate even if you can find a closely related bug and you have a strong feeling that the bug should be duplicate. This is a new policy of Kernel Team and it help them to handle the bugs better. To check whether to report for kernel or not {{{ $ cat /proc/bus/input/devices >~/devices }}} If the output includes the name of your Touchpad eg Name="SynPS/2 Synaptics TouchPad", then kernel has detected it right. In this case, please don't report the bug against the kernel, rather report it against '''HAL'''. For more information on reporting bugs against HAL, refer DebuggingHal |
LANG=C dmesg > ~/dmesg diff -ns ~/dmesg_boot ~/dmesg > ~/dmesg_diff cp /var/log/Xorg.0.log ~/Xorg.0.log_tmp diff -ns ~/Xorg.0.log ~/Xorg.0.log_tmp > ~/Xorg.0.log_diff }}} 1. Attach {{{~/dmesg_boot}}}, {{{~/dmesg_diff}}}, {{{~/Xorg.0.log}}} and {{{~/Xorg.0.log_diff}}} to the bug report as separate attachments. == In case Touchpad features like scrolling, tapping, etc. do not work at all. == Common symptom is absence of the ''''Touchpad'''' tab in System -> Preferences -> Mouse. This may be a wrong detection by '''xserver''' or the '''kernel''' itself. So, xserver-xorg-input-synaptics has nothing to do with it. Please note in the case of filing a bug against the kernel ('''linux'''), you should not mark the bug a duplicate of another. Even if you can find a closely related bug and you have a strong feeling that the bug should be duplicate. This is a policy of the Ubuntu Kernel Team and it helps them to handle bugs better. For more on this, please see [[https://wiki.ubuntu.com/Bugs/BestPractices#X.2BAC8-Reporting.Focus_on_One_Issue|here]]. Please execute at a terminal: {{{ cat /proc/bus/input/devices > ~/devices }}} If the output includes the name of your Touchpad (e.g. Name="SynPS/2 Synaptics TouchPad"), then the linux kernel has detected it right. In this case, please don't report the bug against the kernel, rather report it against '''HAL'''. For more information on reporting bugs against HAL, refer DebuggingHal ## Isn't HAL deprecated?! 20121018 https://launchpad.net/~penalvch |
Line 112: | Line 110: |
$ cat /proc/bus/input/devices >~/devices $ xinput --list > ~/xinput $ cat /var/log/Xorg.0.log > Xorg.0.log }}} Attach all four, to the bug report in separate attachments. '''IMP :''' Please do not file bug against the kernel unless you are very sure that it should be filed and do it only after reading this whole document. If you are unsure, file it against xserver-xorg-input-synaptics, somebody will change to kernel if is so. == In case at least one of Touchpad features works but does not work correctly and as expected == eg - Jumpy cursor, scrolling problems, Touchpad area is misdetected, circular scrolling, buttons not correctly mapped. 1. Enter the following command in a terminal/console: {{{ $ xmodmap -pp >~/xmodmap $ xinput --list-props <id> >~/xinput }}} 1. Switch to a VT using Crtl+Alt+F2 and enter following in your terminal {{{ $ sudo evtest /dev/input/eventX > ~/evtest }}} 2. Scroll, tap, drag, press buttons and create various other possible events on the Touchpad and then press CTRL+C to exit. 4. Press Crtl+Alt+F7 to switch back to X. 5. Attach {{{~/xmodmap}}}, {{{~/xinput}}} and your {{{~/evtest}}} to the bug report in separate attachments. In {{{ xinput --list-props <id> }}}, <id> is of your Touchpad in {{{ xinput --list }}}. Check your {{{ /dev/input/eventX }}} for your Touchpad in {{{ cat /proc/bus/input/devices }}} , you may see something like this {{{ I: Bus=0011 Vendor=0002 Product=0007 Version=01b1 }}} {{{ N: Name="SynPS/2 Synaptics TouchPad" }}} {{{ P: Phys=isa0060/serio2/input0 }}} {{{ S: Sysfs=/devices/platform/i8042/serio2/input/input8 }}} {{{ U: Uniq= }}} {{{ H: Handlers=mouse2 event8 }}} {{{ B: EV=b }}} {{{ B: KEY=420 0 70000 0 0 0 0 0 0 0 0 }}} {{{ B: ABS=11000003 }}} Here your {{{ /dev/input/eventX }}} is {{{ /dev/input/event8 }}} |
cat /proc/bus/input/devices > ~/devices xinput --list > ~/xinput cat /var/log/Xorg.0.log > Xorg.0.log }}} Attach all four to the bug report as separate attachments. '''IMPORTANT:''' Please do not file bug against the [[https://launchpad.net/ubuntu/+source/linux|linux]] package unless you know it should. If you are unsure, file it against xserver-xorg-input-synaptics, and somebody will change it to linux if applicable. == In case at least one of the Touchpad features work, but does not work correctly and as expected == Examples of this are jumpy cursor, scrolling problems, Touchpad area is misdetected, circular scrolling, and buttons not correctly mapped. Please attach the following files as separate attachments to your bug report: * Execute in a terminal: {{{ xmodmap -pp > ~/xmodmap }}} * Execute in a terminal: {{{ xinput --list-props <id> > ~/xinput }}} * Please note that <id> is the number of your Touchpad found executing in a terminal: {{{ xinput --list }}} * An example, partial output of this notes the id is 12: {{{ ↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)] }}} * Switch to a VT using Crtl+Alt+F2 and enter the following in a terminal: {{{ sudo evtest /dev/input/eventX > ~/evtest }}} * See [[DebuggingTouchpadDetection/evtest|this]] for help on how to enter VT and log evtest events. * Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit. * Press Crtl+Alt+F7 to switch back to X. * After reading [[DebuggingTouchpadDetection/xev|this]], execute the following in a terminal, and perform the relevant actions: {{{ xev > ~/xev.log }}} |
Line 151: | Line 139: |
This bug is common in Synaptics Touchpad V7.2 where multitouch works perfect in windows but not in linux. This is not a bug related to xserver-xorg-input-synaptics. Multitouch capabilities are not detected but the kernel itself as evident in {{{ xinput --list-props <id of your touchpad> }}} shows {{{ Synaptics Capabilities (277): 1, 1, 1, 0, 0 }}} This bug is already known (see the '''Known bugs''' below). In this case please don't file any new bugs and instead add a comment in the existing bug for any relevant information that you have. '''NOTE :''' Synaptics is not willing to disclose the protocol it uses for the multitouch support for its newer Touchpads. As soon as Synaptics come up with its protocol, this issue will be fixed. So this is not a bug in general. So it has been classified as a wishlist. |
This bug is common in Synaptics Touchpad V7.2 where multitouch works perfect in windows but not in linux. This is not a bug related to xserver-xorg-input-synaptics. Multitouch capabilities are not detected but the kernel itself as evident in: {{{ xinput --list-props <id of your touchpad> }}} shows: {{{ Synaptics Capabilities (277): 1, 1, 1, 0, 0 }}} This bug is already known (see the '''Known bugs''' below). In this case please don't file any new bugs, but add a comment in the existing bug for any relevant information that you have. '''NOTE :''' Synaptics is not willing to disclose the protocol it uses for the multitouch support for its newer Touchpads. As soon as Synaptics discloses it's protocol, this issue will be fixed. So, this is not a bug in general, and has been classified as a wishlist. |
Line 159: | Line 148: |
$ xinput --list-props <id> >~/xinput }}} 2. Switch to a VT using Crtl+Alt+F2 and enter following in your terminal {{{ $ sudo evtest /dev/input/eventX > ~/evtest }}} 3. Scroll, tap, drag, press buttons and create various other possible events on the Touchpad and then press CTRL+C to exit. |
xinput --list-props <id> > ~/xinput }}} * In {{{ xinput --list-props <id> }}}, <id> is the number of your touchpad found by executing at a terminal: {{{ xinput --list }}} 1. Switch to a VT using Crtl+Alt+F2 and enter following in your terminal: {{{ sudo evtest /dev/input/eventX > ~/evtest }}} * See [[DebuggingTouchpadDetection/evtest|this]] for help on how to enter VT and log evtest events. 2. Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit. |
Line 165: | Line 157: |
$ xev | grep -i button > ~/xev}}} 6. Attach {{{~/xev}}}, {{{~/xinput}}} and your {{{~/evtest}}} to the bug report in separate attachments. In {{{ xinput --list-props <id> }}}, <id> is of your touchpad in xinput --list. Check your {{{ /dev/input/eventX }}} for your Touchpad in {{{ cat /proc/bus/input/devices }}} , you may see something like this {{{ I: Bus=0011 Vendor=0002 Product=0007 Version=01b1 }}} {{{ N: Name="SynPS/2 Synaptics TouchPad" }}} {{{ P: Phys=isa0060/serio2/input0 }}} {{{ S: Sysfs=/devices/platform/i8042/serio2/input/input8 }}} {{{ U: Uniq= }}} {{{ H: Handlers=mouse2 event8 }}} {{{ B: EV=b }}} {{{ B: KEY=420 0 70000 0 0 0 0 0 0 0 0 }}} {{{ B: ABS=11000003 }}} Here your {{{ /dev/input/eventX }}} is {{{ /dev/input/event8 }}} Before filing new bug please look in the '''common bugs''' section. |
xev | grep -i button > ~/xev}}} 6. Attach {{{~/xev}}}, {{{~/xinput}}} and your {{{~/evtest}}} to the bug report as separate attachments. '''Before filing new bug please look in the '''common bugs''' section.''' === Enabling right button click for clickpads on Ubuntu 12.04 LTS === Ubuntu 12.04 LTS added support for clickpads. The buttons are pressed by pressing the surface of the trackpad itself. All known clickpads, with the exception of the Apple Magic Trackpad, have indications on the trackpad for where the left and right buttons are. Clicking in the right button area should cause a right button click action. However, right button click support was added too late in the 12.04 LTS development cycle to be enabled by default. It is enabled by default in Ubuntu 12.10 and on. Fortunately, the right click functionality is present and working in the release. It simply needs to be enabled. The attached [[attachment:enable-rightbutton.sh]] script may be used to simplify the process. After downloading the script, execute the following: {{{ chmod a+x enable-rightbutton.sh ./enable-rightbutton.sh <device id|device name> }}} Be sure to use the device id or name of your specific trackpad. You can list the devices on your computer using the "xinput" command. |
Line 188: | Line 177: |
If the features of your Touchpad (like Tapping, Scrolling) do '''not''' work at all. In this case, user will not see the '''Touchpad''' Tab in System>Administration>Mouse in Main menu. This means that Touchpad is misdetected as PS/2 mouse. Here the following workflow must be followed. 1. Check whether Kernel has detected the Touchpad or not by the following. {{{ $ cat /proc/bus/input/devices }}} If a Touchpad is detected, then something like following will appear. '''Name="SynPS/2 Synaptics TouchPad"''' If Touchpad is not detected then following will appear. In this case the bug must be a kernel issue. '''Name="ImPS/2 Generic Wheel Mouse"''' 2. Check whether xserver has detected the Touchpad correctly by. {{{ $ xinput --list }}} You will see the same name of Touchpad as above. 3. Check whether synaptics module is correctly loaded in xserver or not in. {{{ $cat /var/log/Xorg.0.log | grep -i synaptics }}} For problems such as scrolling area, touch area, button wrong mapping, multitouch try investigating with {{{ $ evtest /dev/input/eventX $ xev }}} Look for name in xinput --list eg - for ↳ TouchPad id=6 [slave pointer (2)], then type {{{ $ xinput --list-props 6 }}} |
If features of Touchpad like tapping and scrolling do '''not''' work at all, the user will not see the '''Touchpad''' Tab in System -> Administration -> Mouse in the Main menu. This means that Touchpad is misdetected as PS/2 mouse. Here the following workflow must be followed. 1. Check whether the kernel has detected the Touchpad or not by executing at a terminal: {{{ cat /proc/bus/input/devices }}} If Touchpad is detected, then something like the following will appear: {{{ Name="SynPS/2 Synaptics TouchPad" }}} If Touchpad is not detected then the following will appear: {{{ Name="ImPS/2 Generic Wheel Mouse"}}} In this case the bug must be a kernel issue. 1. Check whether xserver has detected the Touchpad correctly by executing at a terminal: {{{ xinput --list }}} You will see the same name of Touchpad as above. 1. Check whether the synaptics module is correctly loaded in xserver or not via executing at a terminal: {{{ cat /var/log/Xorg.0.log | grep -i synaptics }}} 1. For problems such as scrolling area, touch area, button wrong mapping, and multitouch, try investigating with: {{{ evtest /dev/input/eventX xev }}} Look for name in: {{{ xinput --list }}} For example: {{{ ↳ TouchPad id=6 [slave pointer (2)] }}} Then, type: {{{ xinput --list-props 6 }}} |
Line 222: | Line 196: |
Synaptics Touchpad Multitouch https://bugs.edge.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/308191 Jumpy cursor https://bugs.edge.launchpad.net/xorg-driver-synaptics/+bug/365943 Synaptics Touchpad is incorrectly detected by kernel https://bugs.edge.launchpad.net/ubuntu/+source/linux/+bug/565543 |
*[[https://bugs.edge.launchpad.net/ubuntu/+source/xserver-xorg-input-synaptics/+bug/308191|Synaptics Touchpad Multitouch]] *[[https://bugs.edge.launchpad.net/xorg-driver-synaptics/+bug/365943|Jumpy cursor]] *[[https://bugs.edge.launchpad.net/ubuntu/+source/linux/+bug/565543|Synaptics Touchpad is incorrectly detected by kernel]] * [[https://bugs.launchpad.net/ubuntu/+source/linux/+bug/565543|AlPS touchpad misdetected as PS/2 mouse in sony VAIO E series and some ACER laptops]] |
This page is part of the debugging series — pages with debugging details for a variety of Ubuntu packages. |
Introduction
Problems with touchpad detection typically fall into one of these categories:
- Your Touchpad doesn't work at all.
- Your Touchpad stops working after a while.
- Your Touchpad has the simple features of a mouse, but Touchpad features, like tapping, scrolling, etc. do not work at all.
- Some features of your Touchpad like scrolling, tapping, dragging don't work as expected.
How to file the bug report
Before filing a bug please check the list of known bugs at the end of this document. If your are unsure to which package the bug should be filed, or your problem is not listed in any of the categories, then please file your touchpad related bugs against xserver-xorg-input-synaptics. If the bug turns out to be a bug related to the kernel (linux) or any other package, bug triagers will assign your bug additionally to that package and mark the task related to xserver-xorg-input-synaptics, as invalid.
General information before filing the bug
This information should be provided in the bug description itself:
- Laptop model.
- Manufacturer of the Touchpad.
- When the symptom first appeared.
Sample Description - 'ALPS Touchpad' incorrectly detected as PS/2 mouse in 'Sony Vaio VPCCW16FG' after the kernel upgrade.
However, if you think that the bug is a general one with your Touchpad, and is irrespective of the laptop model, you could omit mentioning the laptop model in the description. Please only consider doing this when you are very sure that the bug is affecting all laptops with that Touchpad model.
In case your Touchpad doesn't work at all (No response from the Touchpad)
This is generally a case of a kernel (linux) or xorg bug. Check by connecting an external mouse to see if that works or not.
If no, then you should file the bug against HAL and follow the steps below.
Switch to a VT using Crtl+Alt+F2 and enter following in your terminal:
sudo evtest /dev/input/eventX > ~/evtest
where the "X" in "eventX" is the event number found by typing in a terminal:
cat /proc/bus/input/devices
Please see this for help on how to enter VT and log evtest events.
Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit and execute:
cp /var/log/Xorg.0.log ~/Xorg.0.log
- Press Crtl+Alt+F7 to switch back to X.
Add ~/evtest and Xorg.o.log to the bug report as separate attachments.
Execute at a terminal:
cat /proc/bus/input/devices
One should see:
I: Bus=0011 Vendor=0002 Product=0007 Version=01b1 N: Name="SynPS/2 Synaptics TouchPad" P: Phys=isa0060/serio2/input0 S: Sysfs=/devices/platform/i8042/serio2/input/input8 U: Uniq= H: Handlers=mouse2 event8 B: EV=b B: KEY=420 0 70000 0 0 0 0 0 0 0 0 B: ABS=11000003
If you do not find something like this, then the bug is in the linux kernel. Please follow these steps:File the bug against the linux package.
Provide the general information.
Enter the following command in a terminal:
dmesg > ~/dmesg
Attach ~/dmesg and your /var/log/Xorg.0.log to the bug report as separate attachments.
In case your Touchpad stops working after a while
This is generally a case of a kernel (linux) or xorg bug. In this case, in the description field, specify the steps to make the touchpad stop working (e.g. hit a key, drag an icon, etc.). Now connect an external mouse to see if it works or not.
If no, then you should file the bug against HAL and follow the steps below.
Switch to a VT using Crtl+Alt+F2 and enter following in your terminal:
sudo evtest /dev/input/eventX > ~/evtest
See this for help on how to enter VT and log evtest events.
Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit.
cp /var/log/Xorg.0.log ~/Xorg.0.log
- Press Crtl+Alt+F7 to switch back to X.
Add ~/evtest and Xorg.o.log to the bug report as separate attachments.
Execute at a terminal:
cat /proc/bus/input/devices
One should see something like this:
I: Bus=0011 Vendor=0002 Product=0007 Version=01b1 N: Name="SynPS/2 Synaptics TouchPad" P: Phys=isa0060/serio2/input0 S: Sysfs=/devices/platform/i8042/serio2/input/input8 U: Uniq= H: Handlers=mouse2 event8 B: EV=b B: KEY=420 0 70000 0 0 0 0 0 0 0 0 B: ABS=11000003
If you do not find a Touchpad in you /proc/bus/inpus/devices, the bug is in the kernel itself and you should follow these steps:Provide the general information.
Directly after logging in to GNOME, KDE, or Xfce open a terminal and enter the following commands:
dmesg > ~/dmesg_boot cp /var/log/Xorg.0.log ~/Xorg.0.log
- Wait until your touchpad stops working.
- Open a Virtual Terminal by pressing Ctrl-Alt-F1.
Enter the following commands:
LANG=C dmesg > ~/dmesg diff -ns ~/dmesg_boot ~/dmesg > ~/dmesg_diff cp /var/log/Xorg.0.log ~/Xorg.0.log_tmp diff -ns ~/Xorg.0.log ~/Xorg.0.log_tmp > ~/Xorg.0.log_diff
Attach ~/dmesg_boot, ~/dmesg_diff, ~/Xorg.0.log and ~/Xorg.0.log_diff to the bug report as separate attachments.
In case Touchpad features like scrolling, tapping, etc. do not work at all.
Common symptom is absence of the 'Touchpad' tab in System -> Preferences -> Mouse.
This may be a wrong detection by xserver or the kernel itself. So, xserver-xorg-input-synaptics has nothing to do with it. Please note in the case of filing a bug against the kernel (linux), you should not mark the bug a duplicate of another. Even if you can find a closely related bug and you have a strong feeling that the bug should be duplicate. This is a policy of the Ubuntu Kernel Team and it helps them to handle bugs better. For more on this, please see here.
Please execute at a terminal:
cat /proc/bus/input/devices > ~/devices
If the output includes the name of your Touchpad (e.g. Name="SynPS/2 Synaptics TouchPad"), then the linux kernel has detected it right. In this case, please don't report the bug against the kernel, rather report it against HAL. For more information on reporting bugs against HAL, refer DebuggingHal
In any case, include the outputs of the following commands:
cat /proc/bus/input/devices > ~/devices xinput --list > ~/xinput cat /var/log/Xorg.0.log > Xorg.0.log
Attach all four to the bug report as separate attachments.
IMPORTANT: Please do not file bug against the linux package unless you know it should. If you are unsure, file it against xserver-xorg-input-synaptics, and somebody will change it to linux if applicable.
In case at least one of the Touchpad features work, but does not work correctly and as expected
Examples of this are jumpy cursor, scrolling problems, Touchpad area is misdetected, circular scrolling, and buttons not correctly mapped. Please attach the following files as separate attachments to your bug report:
Execute in a terminal:
xmodmap -pp > ~/xmodmap
Execute in a terminal:
xinput --list-props <id> > ~/xinput
Please note that <id> is the number of your Touchpad found executing in a terminal:
xinput --list
An example, partial output of this notes the id is 12:
↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)]
Switch to a VT using Crtl+Alt+F2 and enter the following in a terminal:
sudo evtest /dev/input/eventX > ~/evtest
See this for help on how to enter VT and log evtest events.
- Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit.
- Press Crtl+Alt+F7 to switch back to X.
After reading this, execute the following in a terminal, and perform the relevant actions:
xev > ~/xev.log
In case your multitouch features does not work
This bug is common in Synaptics Touchpad V7.2 where multitouch works perfect in windows but not in linux. This is not a bug related to xserver-xorg-input-synaptics. Multitouch capabilities are not detected but the kernel itself as evident in:
xinput --list-props <id of your touchpad>
shows:
Synaptics Capabilities (277): 1, 1, 1, 0, 0
This bug is already known (see the Known bugs below). In this case please don't file any new bugs, but add a comment in the existing bug for any relevant information that you have.
NOTE : Synaptics is not willing to disclose the protocol it uses for the multitouch support for its newer Touchpads. As soon as Synaptics discloses it's protocol, this issue will be fixed. So, this is not a bug in general, and has been classified as a wishlist.
For any other case, include the outputs in the bug report in separate comments.
xinput --list-props <id> > ~/xinput
In xinput --list-props <id> , <id> is the number of your touchpad found by executing at a terminal:
xinput --list
Switch to a VT using Crtl+Alt+F2 and enter following in your terminal:
sudo evtest /dev/input/eventX > ~/evtest
See this for help on how to enter VT and log evtest events.
- Add identifier, Scroll, tap, drag, press buttons, and create various other possible events on the Touchpad. Then, press CTRL+C to exit.
- Press Crtl+Alt+F7 to switch back to X.
Take your pointer in the windows and hold down your two fingers on the Touchpad and raise. Also try to tap with two fingers.
xev | grep -i button > ~/xev
Attach ~/xev, ~/xinput and your ~/evtest to the bug report as separate attachments.
Before filing new bug please look in the common bugs section.
Enabling right button click for clickpads on Ubuntu 12.04 LTS
Ubuntu 12.04 LTS added support for clickpads. The buttons are pressed by pressing the surface of the trackpad itself. All known clickpads, with the exception of the Apple Magic Trackpad, have indications on the trackpad for where the left and right buttons are. Clicking in the right button area should cause a right button click action. However, right button click support was added too late in the 12.04 LTS development cycle to be enabled by default. It is enabled by default in Ubuntu 12.10 and on.
Fortunately, the right click functionality is present and working in the release. It simply needs to be enabled. The attached enable-rightbutton.sh script may be used to simplify the process. After downloading the script, execute the following:
chmod a+x enable-rightbutton.sh ./enable-rightbutton.sh <device id|device name>
Be sure to use the device id or name of your specific trackpad. You can list the devices on your computer using the "xinput" command.
Some general work flow for Triagers
If features of Touchpad like tapping and scrolling do not work at all, the user will not see the Touchpad Tab in System -> Administration -> Mouse in the Main menu. This means that Touchpad is misdetected as PS/2 mouse. Here the following workflow must be followed.
Check whether the kernel has detected the Touchpad or not by executing at a terminal:
cat /proc/bus/input/devices
If Touchpad is detected, then something like the following will appear:
Name="SynPS/2 Synaptics TouchPad"
If Touchpad is not detected then the following will appear:
Name="ImPS/2 Generic Wheel Mouse"
In this case the bug must be a kernel issue.Check whether xserver has detected the Touchpad correctly by executing at a terminal:
xinput --list
You will see the same name of Touchpad as above.Check whether the synaptics module is correctly loaded in xserver or not via executing at a terminal:
cat /var/log/Xorg.0.log | grep -i synaptics
For problems such as scrolling area, touch area, button wrong mapping, and multitouch, try investigating with:
evtest /dev/input/eventX xev
Look for name in:
xinput --list
For example:
↳ TouchPad id=6 [slave pointer (2)]
Then, type:
xinput --list-props 6
Known bugs
DebuggingTouchpadDetection (last edited 2019-02-26 09:05:55 by anthonywong)