Reply To: Linux on EZPad 5S

Reply To: Linux on EZPad 5S

TechTablets Forums Jumper Discussion EZPad series Linux on EZPad 5S Reply To: Linux on EZPad 5S

#52678
ahlidap
Participant
  • Posts: 30

Silead TouchScreen – How to put it to work

I managed to put the touchscreen to work on this device.

The driver is here: https://github.com/onitake/gslx680-acpi

You also need the firmware.
There’s a list of available firmwares here: https://github.com/onitake/gsl-firmware

But there’s no firmware for this device (yet, I will do a pull request to contribute) so we need to use the tools provided to extract the firmware from the original files on WINDOWS 10 (C:\Windows\system32\drivers\SileadTouch.fw)

I’ve used the file on my machine. Please note that it may not apply to your device.
I’m saying this because the touchscreen files available for download on here on the website, do not work on my device, I only got half touchscreen working with them on Windows.

 

Here’s the procedure, executed on Linuxian 16.10 beta 2 (it should work on any other recent distro, I think):

1. Install git if not yet installed and download the firmware / tools

sudo apt-get install git
git clone https://github.com/onitake/gsl-firmware.git

2. Extract firmware for your original windows file (you can use my in attachment to see if it works) and copy firmware to correct folder

copy the SileadTouch.fw to gsl-firmware/tools and run

unscramble SileadTouch.fw firmware.fw
./fwtool -c firmware.fw -m 1680 -w 1920 -h 1080 -t 2 silead_ts.fw
sudo cp silead_ts.fw /lib/firmware/

3. compile and install driver

go back to the folder where you cloned the firmware/tools and

git clone https://github.com/onitake/gslx680-acpi.git
cd gslx680-acpi
make
sudo cp gslx680_ts_acpi.ko /lib/modules/$(uname -r)/kernel/drivers/

4. Testing

at this point you can test the touchscreen.
In the same folder as the step above just do:

sudo insmod ./gslx680_ts_acpi.ko

You should now have a working and not calibrated touch screen

5. Calibrating touch

It’s good to have a tool for that.
Just install xinput_calibrator:

sudo apt-get install xinput_calibrator
xinput_calibrator

and touch the screen on the points.

It will output a configuration text that you should put on a file (or use mine in attachment)

6. Make everything permanent:

sudo gedit /usr/share/X11/xorg.conf.d/99-calibration.conf

and paste your config output, or mine:

Section "InputClass"
Identifier "calibration"
MatchProduct "Silead GSLx680 Touchscreen"
Option "Calibration" "5 1958 26 1545"
Option "SwapAxes" "0"
EndSection

As we’ve already copied the driver to /lib/modules/$(uname -r)/kernel/drivers/ now we just need to tell the system to load it on boot:

sudo echo 'gslx680_ts_acpi' | sudo tee -a /etc/modules
sudo depmod

7. Reboot and you’re done.

https://www.youtube.com/watch?v=puh3L6tG-Ec

how can I embed youtube videos here? Tried with iframe and object and none of them worked…

 

I will probably make a script for all this, because I don’t want to keep this modified version of Ubuntu, nor even Ubuntu.
I will then update this post.

 

Cheers

Lost Password