Ubuntu – Lenovo IdeaPad S145 touchpad not working


There are many similar questions in the forum but I couldn't find a solution.
I've purchased a new Lenovo Ideapad S145 and installed ubuntu 19.10.
And I can't get my touchpad to work.
I've tried adding multiple commands to grub's GRUB_CMDLINE_LINUX_DEFAULT and of course ran sudo update-grub and rebooted and it didn't seem to work.

When I'm pressing the f6 key, it shows a touchpad icon with a small 'x'.

My Kernel version is 5.3.0-42-generic.

My xinput command result is:

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [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)]
    ↳ Integrated Camera: Integrated C           id=9    [slave  keyboard (3)]
    ↳ Ideapad extra buttons                     id=10   [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]

Thanks in advance :)

Best Answer

I had this same issue. The problem is with the kernel. The kernel hasn't detected the touch pad. Firstly edit the kernel boot parameters. This is what i did to solve it - EDIT: It is recommended to take a backup using cp /etc/default/grub /etc/default/grub.bak

  1. sudo nano /etc/default/grub
  2. Edit GRUB_CMDLINE_LINUX_DEFAULT to GRUB_CMDLINE_LINUX_DEFAULT="quiet i8042.nopnp=1 pci=nocrs"
  3. Now save and exit.
  4. Run sudo update-grub

The next steps will be to patch the kernel

  1. Now run git clone https://github.com/pavlepiramida/elan_i2c_dkms.git
  2. After that install make and dkms, so run sudo apt install make dkms
  3. Now run cd elan_i2c_dkms
  4. After that run sudo dkms install .
  5. Finally, run reboot

Now, once you reboot, the touch pad should be working perfectly fine! Glad I could help!