6

I just bought a Lenovo Ideapad Flex 15 and ripped Windows out of it to put Ubuntu 13.10 on. For other people with Ideapad Flex's, if you have the issue where Ubuntu loads with 0 brightness, try adding:

echo 85 > /sys/class/backlight/acpi_video0/brightness

before the 'exit 0' line of your /etc/rc.local file.

The only other problem I've noticed is that the touchpad drivers do not load and the touchpad reacts essentially as a simple mouse with left and right click, no scrolling and no multi-touch capabilities. The touchscreen seems to work fine, but I don't know what to really expect from a touchscreen in Ubuntu.

Here is my xinput:

freedom@flex15:~$ xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00 id=9    [slave  pointer  (2)]
⎜   ↳ PS/2 Generic Mouse                        id=12   [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)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Lenovo EasyCamera                         id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Ideapad extra buttons                     id=13   [slave  keyboard (3)]

My dmesg info on my touchpad/touchscreen:

freedom@flex15:~$ dmesg | grep -i touch
[    1.900295] usb 2-1: Product: eGalaxTouch EXC7910-1026-13.00.00
[   18.021041] psmouse serio1: alps: Unknown ALPS touchpad: E7=73 03 0a, EC=88 b6 06
[   18.212564] input: eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00 as /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/input/input5
[   18.212704] hid-multitouch 0003:0EEF:A111.0001: input,hiddev0,hidraw0: USB HID v2.10 Device [eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00] on usb-0000:00:14.0-1/input0

And if I try to use synaptiks for anything I get:

freedom@flex15:~$ synclient -l
Couldn't find synaptics properties. No synaptics driver loaded?

Also if I install synaptiks from the Ubuntu Software Centre, it installs okay but trying to launch synaptiks gives the error that no touchpad is detected.

Obviously Lenovo doesn't offer support unless you use Windows 8, but according to their website the touchpads are either made by Synaptics, Elantech or ALPS. After looking here: Mouse/Touchpad Settings for Samsung Series 9 in Ubuntu 13.04 I found a solution for Elantech touchpads, which I tried but had no effect. It looks like, from dmesg, that I have an ALPS touchpad. Also that the patch was already committed to an earlier kernel. I used these intructions:

http://ubuntuforums.org/showthread.php?t=2111236&p=12692065#post12692065

with no errors, but I still get the same outputs from dmesg, synclient and xinput. So from what I can gather, the touchpad drivers are not loaded? Or there is a lack of support for this laptop with the current version of Ubuntu. Could anyone advise please? Thank you.

Also

sudo modprobe psmouse

returns absolutely nothing.

The keyboard function to toggle the touchpad on and off works fine.

Update: I tried this guide for 13.04: http://linuxg.net/ubuntu-13-04-touchpad-option-does-not-exist-error-fix/ and it provided a bit of information in the terminal (everything went fine up until dkms autoinstall):

freedom@flex15:/var/lib/dkms/psmouse$ sudo dkms autoinstall

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area....
make KERNELRELEASE=3.11.0-15-generic -C /lib/modules/3.11.0-15-generic/build M=/var/lib/dkms/psmouse/alps-1.3/build/src psmouse.ko....
cleaning build area....

DKMS: build completed.
Error! This module/version combo is already installed for kernel: 3.11.0-15-generic (x86_64)

Then running

sudo rmmod psmouse && modprobe psmouse

disables the touchpad functionality completely and returns

ERROR: could not insert 'psmouse': Operation not permitted

running

sudo modprobe psmouse && rmmod psmouse

returns basic touchpad functionality (movement, left/right click, no scrolling or multitouch) and outputs

libkmod: ERROR ../libkmod/libkmod-module.c:753 kmod_module_remove_module: could not remove 'psmouse': Operation not permitted
Error: could not remove module psmouse: Operation not permitted

All in all nothing has changed except dmesg, but not really:

freedom@flex15:/var/lib/dkms/psmouse$ dmesg | grep -i touch
[    1.422626] usb 2-1: Product: eGalaxTouch EXC7910-1026-13.00.00
[    8.683181] psmouse serio1: alps: Unknown ALPS touchpad: E7=73 03 0a, EC=88 b6 06
[    8.715623] input: eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00 as /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/input/input5
[    8.715756] hid-multitouch 0003:0EEF:A111.0001: input,hiddev0,hidraw0: USB HID v2.10 Device [eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00] on usb-0000:00:14.0-1/input0
[ 2653.427571] usb 2-1: Product: eGalaxTouch EXC7910-1026-13.00.00
[ 2653.429091] input: eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00 as /devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/input/input15
[ 2653.429267] hid-multitouch 0003:0EEF:A111.0002: input,hiddev0,hidraw0: USB HID v2.10 Device [eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00] on usb-0000:00:14.0-1/input0

and I'm still searching for a solution. Thank you very much for the help so far.

Ibuntu
  • 795
  • It does not appear your touchpad appears as a mouse. It clearly states "eGalax Inc. eGalaxTouch EXC7910-1026-13.00.00 id=9" where your PS2 mouse has a unique id of 12 – Panther Jan 01 '14 at 16:38
  • On Ubuntu 11.04, there was already a bug with touchpad. The solution back then was to do echo "options psmouse proto=imps"|sudo tee -a /etc/modprobe.d/psmouse.conf; sudo modprobe -r psmouse; sudo modprobe psmouse. It was configuring the touchpad to work like a PS/2 mouse with a scroll. Horizontal scrolling was not working, but vertical was. This may be a lead for you? – MrVaykadji Jan 05 '14 at 02:15
  • This comment is probably useless but... have you tried install or reinstall xserver-xorg-input-synaptics package ? x) – MrVaykadji Jan 05 '14 at 02:18
  • Reinstall didn't change anything. The first command returns 'options psmouse proto=imps' but didn't allow any type of scrolling. How is this supposed to work? At the side edge, with two fingers or some other way? – Ibuntu Jan 06 '14 at 06:14
  • Your "not permitted" errors in the latter part edit are due to improper shell syntax: use sudo rmmod psmouse && sudo modprobe psmouse. This will not solve anything, though, as you have succeeded in loading psmouse in your next command. – Jari Laamanen Feb 12 '14 at 21:21
  • Seems that a developer should look at your issue. – Braiam Feb 24 '14 at 01:05
  • On Thinkpad E550 with Ubuntu 14.04 LTS the installation of the package linux-image-3.19.0-22-generic solved the same problem for me. – Tobias Jul 15 '15 at 21:47

2 Answers2

5

Your problem seems to be due to incomplete support for the newer ALPS v7 touchpads used in the Lenovo Flex series. A patch for the psmouse driver was created recently (http://www.spinics.net/lists/linux-input/msg29084.html), and here you can find a DKMS-version of the updated driver: https://github.com/he1per/psmouse-dkms-alpsv7

Try the following, in a terminal:

cd /tmp
git clone http://github.com/he1per/psmouse-dkms-alpsv7
cd psmouse-dkms-alpsv7
gedit install.sh &

Then replace the first line of the file install.sh by:

#!/bin/bash

And the modules directory location:

MDIR="/lib/modules/$(uname -r)"

because the modules are stored in /lib and not in /usr/lib in ubuntu

and save the file. Finally, run:

sudo ./install.sh

You'll get an error, but the driver does seem to get installed. After a reboot, dmesg reported:

input: AlpsPS/2 ALPS GlidePoint as /devices/platform/i8042/serio1/input/input7

and the touchpad on my Flex 14 worked as expected.

Levien
  • 66
  • 3
  • Thank you for your response, I figured everyone had given up. I tried what you said and got an error like you said, but after restarting dmesg still says unknown alps touchpad and I still have no options for my touchpad in system settings. This issue has made the laptop unusable and I am pretty much returning it this weekend pending the arrival of a new laptop I ordered. – Ibuntu Feb 07 '14 at 23:04
  • I am using "elantech" touchpad any solution ? – Lohith MV Sep 03 '14 at 17:09
  • Also works in debian Jessie. No need to change the install.sh file any more: the first line is the right one, and the install script correctly checks both /lib/modules and /usr/lib/modules. I got two errors when running the script: at start it complained about something missing line 16, and at completion it said both “DKMS: install completed” and “Error: dkms install failed”. But it worked anyway. – Olivier Cailloux Sep 26 '15 at 12:33
2

I cannot comment yet but I can confirm that the above solution, using the psmouse-dkms-alpsv7 worked for my Lenovo Z510 BUT it was a pain to cleanup a lot of stuff I tried already. I can now control my mouse with the usual System Settings -> Hardware -> Mouse and Touchpad and all settings are working(e.g. natural scrolling, two finger scrolling) I'm using Linux Mint 16 and the script had to be modified, to delete /usr, see below line

MDIR="/lib/modules/$(uname -r)"

I removed the gpointing-device-settings, the /etc/default/grub settings like

GRUB_CMDLINE_LINUX="i8042.reset i8042.nomux i8042.nopnp i8042.noloop"

What I think it was important, I had a file under /etc/modprobe.d with this content

options psmouse proto=imps

and this had to be removed too. Without this setting(recommended by other solutions) being removed the driver installation had no effect in my case.

I had to install the xserver-xorg-input-synaptics Version: 1.7.1-0ubuntu1 is what I have and I can finally see this:

cristi-Lenovo-IdeaPad-Z510 psmouse-dkms-alpsv7 # xinput 
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ ALPS PS/2 Device                          id=12   [slave  pointer  (2)]
⎜   ↳ AlpsPS/2 ALPS GlidePoint                  id=13   [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)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Video Bus                                 id=8    [slave  keyboard (3)]
    ↳ Power Button                              id=9    [slave  keyboard (3)]
    ↳ Lenovo EasyCamera                         id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ Ideapad extra buttons                     id=14   [slave  keyboard (3)]

and synclient works, no more "Couldn't find synaptics properties. No synaptics driver loaded?" !! The reinstall above also cleaned the useless(until now) settings into /usr/share/X11/xorg.conf.d/50-synaptics.conf Do not waist your time with such settings until synclient -l works.

I also updated my kernel to the below one, maybe this also matters

Linux cristi-Lenovo-IdeaPad-Z510 3.11.0-17-generic #31-Ubuntu SMP Mon Feb 3 21:52:43 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
cvomake
  • 129
  • 2