danielotero / linux-on-hi10

My attempt to provide full Linux support to Chuwi Hi10 Pro
53 stars 10 forks source link

Working Touchscreen infos for Chuwi Hi10Plus #20

Closed gsantner closed 6 months ago

gsantner commented 4 years ago

Just leaving this as a note here, for Hi10Plus the touchscreen fw file needs to be named slightly different now, some patches got merged into linux mainline recently.

wget "https://github.com/onitake/gsl-firmware/blob/master/firmware/linux/silead/gsl1680-chuwi-hi10plus.fw?raw=true"
--->
/lib/firmware/silead/mssl0017.fw

Also here is a working touchscreen calibration (i.e. touch input works with that as one would expect it):

$ cat /etc/udev/rules.d/50-touchscreen.rules
DRIVERS=="silead_ts" ENV{LIBINPUT_CALIBRATION_MATRIX}="2.15 0 0 -0.04 3.25 0 0 0 0"
#                                                       xH +H     +V   xV
$ udevadm control --reload-rules && udevadm trigger

Infos for calib:

https://wiki.archlinux.org/index.php/Calibrating_Touchscreen#Calculate_the_Coordinate_Transformation_Matrix

xinput list-props "silead_ts"
Device 'silead_ts':
        Device Enabled (169):   1
        Coordinate Transformation Matrix (171): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000  <--- original value
        libinput Calibration Matrix (568):      2.150000, 0.000000, 0.000000, 0.000000, 3.150000, 0.000000, 0.000000, 0.000000, 1.000000 <--- adjustead values show up here
Danct12 commented 4 years ago

Which kernel version and device model? I checked kernel source and Hi10 Plus is still here. https://github.com/torvalds/linux/blob/194098915ac74daddca9d6ed46fd11be57f45e16/drivers/platform/x86/touchscreen_dmi.c#L102-L116

gsantner commented 4 years ago

5.8 (Arch) and Ubuntu 20.04 Kernel (not installed anymore). Both have been asking for the mss.fw file in dmesg.

Btw, somebody at the Chuwi forum reported exact same case.

Danct12 commented 4 years ago

Can you try dmidecode and send the output (as a file)?

jwrdegoede commented 3 years ago

Upstream/mainline maintainer of the Silead touchscreen_dmi.c info / Silead driver here.

FWIW I have a Chuwi Hi10 Plus (CWI527) tablet for testing now and it works fine with the existing information in touchscreen_dmi.c .

I also have it working with the Chuwi H2 pen in combination with some Silead driver patches to add pen support which I'm working on. I might tweak the min / width / height settings in touchscreen_dmi.c a bit for somewhat less sucky accuracy with the pen (this cheap touchscreen + pen will never be very accurate). Also see #16 .

jwrdegoede commented 3 years ago

p.s. At least from a mainline kernel pov I believe that this issue can be closed.