LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware
User Name
Password
Linux - Hardware This forum is for Hardware issues.
Having trouble installing a piece of hardware? Want to know if that peripheral is compatible with Linux?

Notices


Reply
  Search this Thread
Old 04-08-2022, 09:48 AM   #1
anon206
LQ Newbie
 
Registered: Apr 2022
Posts: 7

Rep: Reputation: Disabled
Need help installing touchscreen drivers on smartboard


Hi,
I need help installing touchscreen drivers for my school's smartboards. They seem to use a driver for a really old kernel. I found the source code but I cannot compile it on newer kernels. Is there anything that I could do to make it work? Thanks.

Here is the source code
https://github.com/E-Tahta/eta-touchdrv
https://depo.pardus.org.tr/etap/pool...v_0.1.8.tar.xz
 
Old 04-08-2022, 03:06 PM   #2
TB0ne
LQ Guru
 
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 26,650

Rep: Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970
Quote:
Originally Posted by N9gVZV9D View Post
Hi,
I need help installing touchscreen drivers for my school's smartboards. They seem to use a driver for a really old kernel. I found the source code but I cannot compile it on newer kernels. Is there anything that I could do to make it work? Thanks.

Here is the source code
https://github.com/E-Tahta/eta-touchdrv
https://depo.pardus.org.tr/etap/pool...v_0.1.8.tar.xz
No idea, since you don't give us any details at all. You don't say what actual problem(s) you're having, what you're doing, on what kind of hardware, etc. We can't guess. Also, if these devices are owned by your school, chances are very good that you WILL NOT be able to modify them. And if you do, there may be repercussions.
 
Old 04-09-2022, 03:51 AM   #3
anon206
LQ Newbie
 
Registered: Apr 2022
Posts: 7

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by TB0ne View Post
No idea, since you don't give us any details at all. You don't say what actual problem(s) you're having, what you're doing, on what kind of hardware, etc. We can't guess. Also, if these devices are owned by your school, chances are very good that you WILL NOT be able to modify them. And if you do, there may be repercussions.
Hi,

I have tried running "dpkg-buildpackage --no-sign -tc" to create a deb file from the source and install it to Ubuntu 20 and 22. Both give an error when building the kernel with dkms. lsusb gives out this "6615:0c20" code for the touchscreen. I do have permission from my school to update all of the smartboards.
 
Old 04-09-2022, 09:13 AM   #4
anon206
LQ Newbie
 
Registered: Apr 2022
Posts: 7

Original Poster
Rep: Reputation: Disabled
Here is the error I receive when building on Devuan ASCII.

DKMS make.log for eta-touchdrv-0.1.8 for kernel 4.9.0-18-amd64 (x86_64)
Cts Nis 9 17:07:31 +03 2022
make -C /lib/modules/4.9.0-18-amd64/build SUBDIRS=/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2 modules
make[1]: Entering directory '/usr/src/linux-headers-4.9.0-18-amd64'
CC [M] /var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.o
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.c:1174:10: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
.read = optictouch_read,
^~~~~~~~~~~~~~~
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.c:1174:10: note: (near initialization for ‘optictouch_fops.read’)
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.c:1175:11: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
.write = optictouch_write,
^~~~~~~~~~~~~~~~
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.c:1175:11: note: (near initialization for ‘optictouch_fops.write’)
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.c:269:13: warning: ‘optictouch_translatePoint’ defined but not used [-Wunused-function]
static void optictouch_translatePoint(struct optictouch_point pt, int *x, int *y)
^~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
/usr/src/linux-headers-4.9.0-18-common/scripts/Makefile.build:318: recipe for target '/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.o' failed
make[4]: *** [/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2/optictouch.o] Error 1
/usr/src/linux-headers-4.9.0-18-common/Makefile:1560: recipe for target '_module_/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2' failed
make[3]: *** [_module_/var/lib/dkms/eta-touchdrv/0.1.8/build/touch2] Error 2
Makefile:152: recipe for target 'sub-make' failed
make[2]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.9.0-18-amd64'
Makefile:22: recipe for target 'all' failed
make: *** [all] Error 2
make -C /lib/modules/4.9.0-18-amd64/build SUBDIRS=/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4 modules
make[1]: Entering directory '/usr/src/linux-headers-4.9.0-18-amd64'
Building with KERNELRELEASE = 4.9.0-18-amd64
CC [M] /var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.o
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.c:538:10: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
.read = otd_read,
^~~~~~~~
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.c:538:10: note: (near initialization for ‘otd_fops.read’)
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.c:539:11: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
.write = otd_write,
^~~~~~~~~
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.c:539:11: note: (near initialization for ‘otd_fops.write’)
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.c: In function ‘otd_mkdev’:
/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.c:561:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
dev_t otd_devno = MKDEV(MAJOR_DEVICE_NUMBER,MINOR_DEVICE_NUMBER);
^~~~~
cc1: some warnings being treated as errors
/usr/src/linux-headers-4.9.0-18-common/scripts/Makefile.build:318: recipe for target '/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.o' failed
make[4]: *** [/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4/OtdTouchDriver.o] Error 1
/usr/src/linux-headers-4.9.0-18-common/Makefile:1560: recipe for target '_module_/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4' failed
make[3]: *** [_module_/var/lib/dkms/eta-touchdrv/0.1.8/build/touch4] Error 2
Makefile:152: recipe for target 'sub-make' failed
make[2]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.9.0-18-amd64'
Makefile:23: recipe for target 'all' failed
make: *** [all] Error 2
 
Old 04-09-2022, 09:59 AM   #5
TB0ne
LQ Guru
 
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 26,650

Rep: Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970
Quote:
Originally Posted by N9gVZV9D View Post
Hi,
I have tried running "dpkg-buildpackage --no-sign -tc" to create a deb file from the source and install it to Ubuntu 20 and 22. Both give an error when building the kernel with dkms. lsusb gives out this "6615:0c20" code for the touchscreen. I do have permission from my school to update all of the smartboards.
Ok, so you're using Ubuntu, and I'm guessing (since you didn't answer), from the github, that the brand/model is somewhere in what you posted. You posted one link with a .deb file already present, and another to a github, both are fairly old and unmaintained...and both seemingly doing the same thing. Why build it if there's a .deb package already available? Have you tried to just load that package?? You were also asked to show what you were typing in/doing, but haven't posted that either.

You don't say if you're trying that install script, but there are two things it does first: it loads a kernel module ("modprobe optictouch"), and starts the server for it ("/usr/bin/opticServer"). On that very github page, it says specifically:
Quote:
Originally Posted by Github Page
Kernel modules are open-source, but source code of server daemons are unavailable. They are provided by Vestel.
Do you HAVE the server daemon loaded and running??? And have you contacted Vestel support, since they not only make the device, but also provide drivers?
 
Old 04-09-2022, 11:35 AM   #6
anon206
LQ Newbie
 
Registered: Apr 2022
Posts: 7

Original Poster
Rep: Reputation: Disabled
Hi,
I used "sudo apt install ./eta-touchdrv_0.1.8_amd64.deb" to install the prebuilt deb file but it fails when building the kernel module. Building the deb myself and trying to install it with the same command gives the same error. I have to install the optictouch kernel module to be able to run the server. That script fails because the optictouch kernel module is not installed.
 
Old 04-09-2022, 12:53 PM   #7
TB0ne
LQ Guru
 
Registered: Jul 2003
Location: Birmingham, Alabama
Distribution: SuSE, RedHat, Slack,CentOS
Posts: 26,650

Rep: Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970Reputation: 7970
Quote:
Originally Posted by N9gVZV9D View Post
Hi,
I used "sudo apt install ./eta-touchdrv_0.1.8_amd64.deb" to install the prebuilt deb file but it fails when building the kernel module. Building the deb myself and trying to install it with the same command gives the same error. I have to install the optictouch kernel module to be able to run the server. That script fails because the optictouch kernel module is not installed.
There is a module from the other site you posted:
https://depo.pardus.org.tr/etap/pool...tictouch-busy/

Would seem to provide that module. And again, you've not actually told us what brand/model of hardware this is...if it is what you're implying, then I'm not sure why you're asking, since their own support site HAS the modules you need already. So again, have you contacted them??
 
Old 04-09-2022, 03:55 PM   #8
anon206
LQ Newbie
 
Registered: Apr 2022
Posts: 7

Original Poster
Rep: Reputation: Disabled
Hi,
My school uses the "Phase 1" smartboards provided by Vestel. They do not seem to support these smartboards anymore so I cannot contact them about it for drivers. The modules provided in the Pardus repository fail to install while recompiling the kernel with dkms. Were you able to find updated modules? Is there anything specific that you would like me to provide? Thanks in advance.
 
Old 04-10-2022, 05:28 PM   #9
anon206
LQ Newbie
 
Registered: Apr 2022
Posts: 7

Original Poster
Rep: Reputation: Disabled
Hi again,
I was able to install the touchscreen drivers after downgrading to kernel 4.4, but would it be possible to install them on newer kernels?
 
Old 04-11-2022, 09:44 AM   #10
ondoho
LQ Addict
 
Registered: Dec 2013
Posts: 19,872
Blog Entries: 12

Rep: Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053Reputation: 6053
Quote:
Originally Posted by N9gVZV9D View Post
Hi again,
I was able to install the touchscreen drivers after downgrading to kernel 4.4, but would it be possible to install them on newer kernels?
Once again, no details, so the reply is the same as before (posts #2 and #5).
But, if I had to guess, I'd guess no.
 
Old 04-11-2022, 04:36 PM   #11
anon206
LQ Newbie
 
Registered: Apr 2022
Posts: 7

Original Poster
Rep: Reputation: Disabled
Hi,
After some changes to the code I now get this error

call to ‘__read_overflow2’ declared with attribute error: detected read beyond size of object passed as 2nd parameter

on line 460

memcpy(&optictouchdev_context->calibX,&getData[5],sizeof(struct calib_param));

and 473

memcpy(&optictouchdev_context->calibY,&getData[5],sizeof(struct calib_param));

this seems to be caused by fortify_source. Would it be possible to fix the code without rebuilding the kernel with config_fortify_source disabled? Thanks in advance.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
3.0 touchscreen works. 5.0 upgrade touchscreen does not work Stonetablet Bodhi 4 12-08-2019 09:39 AM
Dual head setup with one touchscreen stretching over non-touchscreen display gutaker Linux - Hardware 0 03-13-2012 04:06 PM
looking for touchscreen drivers for mandriva 2008, touchscreen working with windows inder_18nec Linux - Software 3 02-20-2010 05:11 PM
Touchscreen Drivers - Toughbook CF-19 w/Red Hat 5.3 (Fujitsu USB Touchscreen) bsheridan Linux - Laptop and Netbook 0 11-17-2009 10:54 AM
Problems installing smartboard software LinuxWood Linux - Software 0 02-07-2006 11:41 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Hardware

All times are GMT -5. The time now is 08:19 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration