OESF | ELSI | pdaXrom | OpenZaurus | Zaurus Themes | Community Links | Ibiblio

IPB

Welcome Guest ( Log In | Register )

> Android Porting : Trouble With Touchscreen
joey
post Jan 28 2008, 08:16 PM
Post #1





Group: Members
Posts: 5
Joined: 28-January 08
Member No.: 21,291



Hello all,

I am porting android to my ARM9 device and am having problems getting
the touchscreen to work. On my device the touchpanel driver passes
absolute X/Y co-ordinate values to the kernel input subsystem. When i
touch the screen, more often than not , nothing happens. But on rare
occassions the main screen left/right scroll button might move or the
browser "google search" button might get pressed - but even for this i
have to give a real good thumb press, a firm tap is not enough.


I ran open source program evtest (which is an input event tester) and
it reported the co-ordinates of all my touches.


I then ran strace for the zygote process - i noticed that all of my
taps/touches/presses are read() by some thread which opens the /dev/
input/event1 device, but no action is taken on the reported events.


I also modified the (touchpanel) hardware reported raw X/Y co-ordinate
values so that they correspond to the screen size (640x480 landscape)
and then passed these values to the kernel input subsytem, but there
was no change in behaviour.


I have read on some posts about "porting tslib" - what is this for ?
Is it required here ? Also some posts mention "normarlization of the
coordination" and "auto calibration using sysfs" - what do they
mean ?


Any pointers/help would be appreciated


Regards
Joey

Go to the top of the page
 
+Quote Post
 
Start new topic
Replies (1 - 2)
joey
post Feb 5 2008, 08:13 PM
Post #2





Group: Members
Posts: 5
Joined: 28-January 08
Member No.: 21,291



My touchscreen driver was incorrectly initialising the ABS_X [MIN/MAX], ABS_Y [MIN/MAX] values - these were supposed to be initialised according to the dimensions of the VGA panel (640x480) i am using. Also i had to calibrate the hardware reported X/Y values according to the 640 x 480 screen - i now pass these calibrated values (alongwith pressure value) to the input subsystem. My touch screen works fairly well now.
Go to the top of the page
 
+Quote Post
cortez
post Feb 6 2008, 12:47 PM
Post #3





Group: Members
Posts: 376
Joined: 18-March 04
From: The Netherlands
Member No.: 2,380



QUOTE(joey @ Feb 6 2008, 05:13 AM) *
My touchscreen driver was incorrectly initialising the ABS_X [MIN/MAX], ABS_Y [MIN/MAX] values - these were supposed to be initialised according to the dimensions of the VGA panel (640x480) i am using. Also i had to calibrate the hardware reported X/Y values according to the 640 x 480 screen - i now pass these calibrated values (alongwith pressure value) to the input subsystem. My touch screen works fairly well now.


Sounds great! How did you pass the calibrated values to the subsystem exactly?
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 23rd September 2014 - 04:25 PM