touchscreen driver (for LCD7)

can anybody point me out where in config I should enable the touchscreen driver (unless, it’s already a part of BBB-LCD7 module)?
and where is this file located?
I need to do some hacking to write a tslib which could be used by Qt.
we are moving from FriendlyArm mini6410 platform to BBB (FriendlyArm has a nice tslib library which allows Qt to talk to touchscreen: Qt does not know/care what Touchscreen driver is used, it simply talks to tslib, and that library then talks to the ts driver).

PS: we plan to use debian (if it matters)

also: I compiled 3.8.13-bone19 with debian rootfs, this combo allows me to use BBB with LCD7 cape. This is the reason why I mentioned the debian in the original post.

Works the same on the BBB. Install qt4-embedded-plugin-mousedriver-tslib from opkg and set QWS_MOUSE_PROTO to your tslib device. For example, the settings I use are:
export QWS_MOUSE_PROTO=tslib:/dev/input/event0
export TSLIB_CALIBFILE=/etc/pointercal
export TSLIB_CONFFILE=/etc/ts.conf
export TSLIB_PLUGINDIR=/usr/lib/ts

Then run your Qt application and the touchscreen will just work. (You may have to calibrate it first with ts_calibrate)

I can not apt-get qt4-embedded-plugin-mousedriver-tslib (there is no such package for debian).
are you running opkg from Angstrom?
here is the problem: Angstrom does not boot with LCD7 attached to BBB (kernel crashes somewhere in the middle of booting).

btw, should I see a /dev/input/touchscreen0 when I boot in my debian? I don’t see any touchscreen devices there.

in what package ts_calibrate is located? is it part of qt4-embedded-plugin-mousedriver-tslib?

Ah, I forgot that you are using debian. I’m using Angstrom, and I’m not sure what the package would be for debian?? Which Angstrom image were you using? Looks like the support for the LCD7 was added a few weeks ago, but I haven’t tested it and don’t know for sure if it works.

If the touchscreen driver is initialized it will add a device in the /dev/input/ directory. In my case it creates /dev/input/event0, but the touchscreen driver may create something else (like touchscreen0) (I’m using a pcap touch panel, so my setup is a little different than yours)

ts_calibrate is also an Angstrom package… don’t remember off hand which package it is in but if you do: opkg list | grep tslib, you should see it.

I doubt Debian has tslib because Ubuntu has not and I had to compile it manually on the target. Fortunately it compiles rather easy except the part that you need to install autotools, make, gcc and other compilation tools. However then just run configure and make install. After that you will have ts_calibrate and other ts_*utilities. Very useful ts_test is which enables you to draw on a screen and therefore you can understand how well the touchscreen works

Отправлено с iPad

01.06.2013, в 7:07, Brent <> написал(а):

maybe this will be helpful to others facing the same problem with debian:
here is what I had to do to be able to run ts_utilities (ts_calibrate, ts_test, etc.) on BBB + LCD7 cape with debian rootfs
first off all, libts-bin is a debian package. Thus

sudo apt-get install tslib libts-bin

I spent several hours trying to figure out what am i missing in my kernel to force /dev/input0 finally to work (i was playing with config and recompiling kernel over and over again). Until it finally hit me to try different /dev/eventX device.
I don’t know what input device is associated (in my environment, BBB + LCD7 cape) with /dev/event0, but apparently, touchscreen is “sitting” on /dev/input1.
Thus, adding these two lines into .bashrc was all I needed to do to be able to run ts_test, ts_calibrate, etc.

export TSLIB_TSDEVICE=/dev/input/event1
export TSLIB_CONFFILE=/etc/ts.conf

It does not mean that everything is perfect (when I run ts_test and move stylus across LCD diagonal in “draw” mode, I see artifacts - sudden jumps outside the intended line). Looks like, 4 wire touchscreen interface built into TI’s processor (4 analog inputs) is far from being perfect.
It may explain why FriendlyArm also abandoned 4 wire interface (with their Samsung S3C6410X CPU). They use custom touchscreen controller on their LCD panels (8051 cpu which is constantly polling 4-wire status, while ARM cpu on the main board is periodically checking the touch screen status via 1-wire communication protocol with that dedicated 8051 cpu).

PS: one can fiddle with settings of ts.conf to improve the behavior of LCD7 cape touchscreen.
I have not found an optimal set of parameters yet.

I did
cat /proc/bus/input/devices

and now I see the list of input devices.
Apparently, /dev/input/event0 is associated with power button (in the way how I compiled my kernel).
“ti-tsc” (this is a kernel driver for TI’s tscadc) is associated with /dev/input/event1.
This could help a newbie (like me) to find out what eventX should be used for your touchscreen


Have you had any luck with this?

Just trying debian wheezy on the BBB with the LCD7 and I find the mouse moves ok using the touch screen, but its constantly trying to draw selection boxes.
It also needs to be calibrated as it doesnt reach to the very edges of the display.


Update to above, I realised I was using Wheezy 7.0 and there was a 7.1 available, so I tried that, updated and installed LXDE, and some of the issues are resolved, however now the mouse pointer jumps all over the place, same as what happens on Angstrom.


Terry et all:

I am having the same issue with Wheezy and an LCD7. Sometimes it takes a touch and often it ignores the touch with the cursor flying all over the place. Seems to like the first touch or two then gets consistently bad.

Any progress/ideas?

Thanks, Will