SOLVED: Elantech Touchpad ELAN061D not working

Questions about hardware, drivers and peripherals
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Locked
pheasant

SOLVED: Elantech Touchpad ELAN061D not working

Post by pheasant »

Greetings.

We have two Lenovo ideapad-330-15ikb laptops. Though they are the same models, one has a synaptic touchpad and the other what I think is an Elantech. The Elantech does not work with any Linux distro. At the moment I am dual booting Windows 10, Xubuntu, and Mint Xfce. The touchpad works with Windows. I am a newbie to Linux and at a loss having spent the weekend installing various distros. I have been researching and see that others have similar issues. I have tried the numerous suggestions to modifying the GRUB line "GRUB_CMDLINE_LINUX_DEFAULT=" which have not worked.

May I have some help please?

Thank You

Release Linux Mint 19 Tara 64-bit
Kernel Linux 4.15.0-20-generic x86_64

hdk@hdk-330:~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech USB Optical Mouse id=8 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Video Bus id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ EasyCamera: EasyCamera id=9 [slave keyboard (3)]
↳ Ideapad extra buttons id=10 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]

hdk@hdk-330:~$ sudo acpidump | grep -C3 ELAN
E5D0: 4E 55 4D 0C 0F 00 02 02 49 4E 54 31 70 49 4E 55 NUM.....INT1pINU
E5E0: 4D 0C 0F 00 02 02 49 4E 54 32 A0 11 93 53 44 4D M.....INT2...SDM
E5F0: 30 00 53 48 50 4F 0C 0F 00 02 02 01 A0 25 93 54 0.SHPO.......%.T
E600: 50 54 59 01 70 0D 45 4C 41 4E 30 36 31 44 00 5F PTY.p.ELAN061D._
E610: 48 49 44 70 0A 15 42 41 44 52 70 01 48 49 44 32 HIDp..BADRp.HID2
E620: A4 00 A0 27 93 54 50 54 59 0A 02 70 0D 53 59 4E ...'.TPTY..p.SYN
E630: 41 32 42 34 39 00 5F 48 49 44 70 0A 2C 42 41 44 A2B49._HIDp.,BAD
--
E880: A0 30 93 53 44 53 31 0A 02 70 0D 41 54 4D 4C 32 .0.SDS1..p.ATML2
E890: 39 35 32 00 5F 48 49 44 70 00 48 49 44 32 70 0A 952._HIDp.HID2p.
E8A0: 4A 42 41 44 52 70 0C 80 1A 06 00 53 50 45 44 A4 JBADRp.....SPED.
E8B0: 00 A0 30 93 53 44 53 31 0A 03 70 0D 45 4C 41 4E ..0.SDS1..p.ELAN
E8C0: 32 30 39 37 00 5F 48 49 44 70 01 48 49 44 32 70 2097._HIDp.HID2p
E8D0: 0A 10 42 41 44 52 70 0C 80 1A 06 00 53 50 45 44 ..BADRp.....SPED
E8E0: A4 00 A0 30 93 53 44 53 31 0A 04 70 0D 4E 54 52 ...0.SDS1..p.NTR

hdk@hdk-330:~$ dmesg | grep i2c
[ 1.280453] i2c /dev entries driver
[ 13.994508] i2c_hid i2c-ELAN061D:00: i2c-ELAN061D:00 supply vdd not found, using dummy regulator

hdk@hdk-330:~$ dmesg | grep elan
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 2 times in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: Elantech Touchpad ELAN061D not working

Post by JeremyB »

I think this module I made will work for you on the 4.15.0-20 kernel, in terminal do

Code: Select all

cd /lib/modules/4.15.0-20-generic/kernel/drivers/input/mouse
sudo wget https://www.dropbox.com/s/e0qhczllt8havfg/elan_i2c.ko
Reboot
pheasant

Re: Elantech Touchpad ELAN061D not working

Post by pheasant »

Thank You JeremyB.

I downloaded your module and found, I presume, there was an existing module .ko and the new one renamed .ko.1. I'm guessing the original was not working. I renamed the .ko to .ko.orig and yours to .ko. Loaded module manually, it worked. Ran depmod -a and all works on reboot.

Hope I did this right.

How do I mark as solved?

Thank you again so much. I learned a little.
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: Elantech Touchpad ELAN061D not working

Post by JeremyB »

You just need to click the edit button on your original post and add Solved to the subject. If you plan on updating kernels, I think I can make up some source code that will update with the kernel using dkms as that module will only work on your current kernel version
pheasant

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by pheasant »

That would be great, though I don't know when the need might arise. It's not my laptop, but I encourage the owner to keep it up to date. When it breaks then I get involved.

All the best.
pheasant

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by pheasant »

The need has arrived today. With an update the Elantech Touchpad quit working. I am stuck again. Can someone help us? Thank You.
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by JeremyB »

In terminal

Code: Select all

wget https://www.dropbox.com/s/tq0kyr7epns6ao6/mouse.tar.gz
tar -zxvf mouse.tar.gz
cd mouse
sudo apt-get install build-essential
cp /usr/src/linux-headers-$(uname -r)/.config .
cp /usr/src/linux-headers-$(uname -r)/Module.symvers .
make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
cd /lib/modules/$(uname -r)/kernel/drivers/input/mouse
sudo mv elan_i2c.ko elan_i2c.bak
cd ~/mouse
sudo cp elan_i2c.ko /lib/modules/$(uname -r)/kernel/drivers/input/mouse/
sudo depmod -a
make -C /lib/modules/$(uname -r)/build M=$(pwd) clean
Reboot

After any 4.15 kernel updates do

Code: Select all

cd mouse
cp /usr/src/linux-headers-$(uname -r)/.config .
cp /usr/src/linux-headers-$(uname -r)/Module.symvers .
make -C /lib/modules/$(uname -r)/build M=$(pwd) modules
cd /lib/modules/$(uname -r)/kernel/drivers/input/mouse
sudo mv elan_i2c.ko elan_i2c.bak
cd ~/mouse
sudo cp elan_i2c.ko /lib/modules/$(uname -r)/kernel/drivers/input/mouse/
sudo depmod -a
make -C /lib/modules/$(uname -r)/build M=$(pwd) clean
Last edited by JeremyB on Sun Nov 11, 2018 6:37 pm, edited 1 time in total.
pheasant

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by pheasant »

Thank You JeremyB ...

When I run make clean it returns:

make: *** No rule to make target 'clean'. Stop.
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by JeremyB »

Do

Code: Select all

make -C /lib/modules/$(uname -r)/build M=$(pwd) clean
I will fix the other post
pheasant

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by pheasant »

Still no joy. Trying to load module returns:

hdk@hdk-330:/lib/modules/4.15.0-38-generic/kernel/drivers/input/mouse$ sudo insmod elan_i2c.ko

insmod: ERROR: could not insert module elan_i2c.ko: Required key not available
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by JeremyB »

Go into BIOS settings and disable Secure Boot
pheasant

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by pheasant »

In BIOS changed "Boot Mode" from "UEFI" to "Legacy Support." System then booted into Windows with no GRUB.

Revisited BIOS and changed above back to "UEFI." Noticed "EFI" order was "Windows Boot Manager" first. Changed order to "ubuntu" and all is well.

Thank You JeremyB
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by JeremyB »

You can check

Code: Select all

mokutil --sb-state
To check Secure Boot status, since my old fix worked, I figured Secure Boot was disabled as the kernel has been enforcing secure boot rules for a couple years
pheasant

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by pheasant »

Oops. Revisited BIOS settings again and see I was under "Boot" and not "Security" menu. "Secureboot" is and was indeed disabled all along.

Thank You again and in appreciation for the help I just ordered Linux All-In-One for Dummies (5th Edition) - Paperback (1118844351) from OSDisc.com.

Looking forward to the book!
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by JeremyB »

Just added a needed command to posting.php?mode=reply&f=49&t=275517#pr1551538
As sudo depmod -a is needed so the module will be loaded automatically
phydroxide

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by phydroxide »

Any solution that doesn't require downloads from (very helpful) strangers' dropboxes?
JeremyB
Level 21
Level 21
Posts: 13854
Joined: Fri Feb 21, 2014 8:17 am

Re: SOLVED: Elantech Touchpad ELAN061D not working

Post by JeremyB »

I think it was included in newer kernels
Locked

Return to “Hardware Support”