• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root Dedicated Thread for Fixing Touchscreen

AndyDroidBot

Member
Jan 29, 2012
69
35
Possible solution:

After some quick Google searching I came across a couple links detailing how Android handles its I/O activity and as suspected as much of Android is based on the Linux kernel touch events and button inputs are handled similarly.

Possible solution 1: Fixing low-level touch input events


Clue from this link: All touch events are pre-coded and lie in the "/dev/input" system folder. Any given input on your phone (buttons, capacitive buttons, and the touchscreen) have a different variable stored in a file called "event" in this folder. For instance a Galaxy Prevail I am looking at has 5 of these files: "event0, event1, event2, event3, event4, and event5"

*I do not know if these files are simply a container or an actual script because they cannot be opened in any text editor or file manager I have*

According to the link, ADB can be used to dump the "action" of all possible touch events in hexa form.

Example: The output of these files looks similar to this
/dev/input/event2: 0003 0030 00000068
/dev/input/event2: 0003 0032 0000000a
/dev/input/event2: 0003 0035 0000022e
/dev/input/event2: 0003 0036 00000039
/dev/input/event2: 0000 0002 00000000
/dev/input/event2: 0003 0012 0000002f
/dev/input/event2: 0003 0014 00000001
/dev/input/event2: 0000 0000 00000000
/dev/input/event2: 0003 0030 00000000
/dev/input/event2: 0003 0032 0000000a
/dev/input/event2: 0003 0035 0000022e
/dev/input/event2: 0003 0036 00000039
/dev/input/event2: 0000 0002 00000000
/dev/input/event2: 0003 0012 00000020
/dev/input/event2: 0003 0014 00000000
/dev/input/event2: 0000 0000 00000000

This hexa code is broken down in the link and explained...each of the number sequences means "finger is up" "finger is down" and any associated coordinates can be shown here, too.

How this problem might be fixed: Using Android Commander or a file manager, copy these touch event from a phone with a similar screen size (3.5) and use root to paste them into the folder to see if it fixes the problem.
 
  • Like
Reactions: imfm and smith058
Possible solution 2: It's a driver issue


According to the first link drivers are stored in
kernel/drivers/input/touchscreen and
kernel/drivers/input/

if someone could help me find a downloadable version of the drivers of the digitizer and touchscreen controller I would be very greatful. If it's in-house by samsung we will need to find out if they've released the source code to
opensource.samsung.com/
and get somebody to compile it.

This second link details some of the programmers over at XDA trying to port android 2.xx and 3.xx drivers to android 4.xx The process should be similar for injecting or porting a "generic" driver to the TU.
 
  • Like
Reactions: smith058
Upvote 0
Possible solution 3: Using APPS to "patch" the broken software

The problem was originally uncovered when somebody used an app called "TouchUtil" by Peter Nemere because it can intercept touchscreen inputs and output 'verbose' in real-time and let you know what the touch screen is doing.

The issue only occurs if you're finger is on the screen and you STOP moving then try and move again, which tells me it's a transitional problem, there may be a "switch" of some sort that cannot properly detect these transitions.

A lot of users on this site have reported positive feedback with the use of an app called "SGS touchscreen Booster." but as it was only made for the original GS1, many are reporting mixed results as it may be a false hope.

solution: find out WHICH FILES TouchUtil is intercepting and find out WHICH FILES SGS Touchscreen Booster can temporarily change and see if we can permanently change them. What software can be used to decompile the APKs?
 
Upvote 0
I have downloaded the source code and push it to my github here: https://github.com/BobZhome/Samsung_SPH-M930_kernel
Your welcomed to fork it and work on it!
BobZhome.. you ever try to use the source from Samsung?

I know it was useless for the prevail when we worked on it but maybe different for the TU


I downloaded it already so I just dropped it into my Public folder for dropbox if anyone wants it:

SPH-M930_BST_Opensource.zip
 
Upvote 0
I uploaded two files suspected to be related to the touchscreen (they always run in the background as system processes)

I've also read they might be related to the calendar in some way but that is not verified.

InputEventApp.apk 2shared - download
InputEventApp.odex 2shared - download

download these two files and use Android Commander or Root Explorer to push them into the "/system/app" folder. then reset the phone to see if drag & drop and long press work any better
 
Upvote 0
Is it a joke???

No.

It's a modded version of a stock re-calibration app. I didn't write it; I simply got the link from another forums but it was recommended to me by someone on a different forum.

Re-calibration apps for capacitive screens have long since been removed from android for some reason, HTC was the last man standing until somewhere around the Verizon Droid Eris. Just thought I'd pass it along. Restart your device and report back if it helps or not.
 
Upvote 0
Could you try replacing the InputEventApp.apk via android commander like post #13 says?
still no diffrance...

it seems to be missing somthing...
click on app, it opens and a popup screen says "touch recalibrate... please make sure you follow the directions carefully... ok"
click on "ok"...
click on "recalibration"
a pop up screen running/working for about 9 seconds saying "recalibration... please do NOT touch panel" and goes away
and thats it????
reboot cuz of your say so
no change...

any thing else you can find?

ps im checking via MrReeRom... i will check via stock rom in the moring... might make a difrance do to the .odex file.... MrReeRom has been Deodexed (but to my understanding i should be able to run things as a mixed odex rom)
 
Upvote 0
Okay, I have ONE more possible solution. I'm kind of putting all my eggs in one basket here so if this doesn't work I will have to go back to the drawing board.
As suspected before, this issue may be due to the kernel, and recompiling a kernel from source is no laughing matter so someone will have to take that task on a I do not have a linux machine.

I have uploaded a file to 2shared; download this zip folder and follow these instructions.
input.zip 2shared - download

1. Download the above "input.zip"
2. Unzip to desktop to "/input" and leave folders and files inside intact
3. Connect phone to PC and put in development mode
4. Start up Android Commander
*note* must have root for next step

These files will replace existing files in the following system directory:
"/sys/devices/virtual"

5. Delete or otherwise remove existing "/input" folder
6. Paste in un-zipped "/input" folder to "/sys/devices/virtual"
7. Reboot phone and test.
 
Upvote 0
The only other system folder touch inputs and drivers are stored are in the following:

"/system/framework" as input.jar and input.odex
"/system/lib" as libsurfaceflinger.so and libsurfaceflinger_client.so
"/dev/graphics" if it's a Qualcomm Adreno 205 issue (graphics driver)

We can sit around and replace files all day long but if none of that stuff works I'm at a loss...
 
Upvote 0
im stuck at step 5/6 i cant delete them (dont know how to make Android Commander to give permision to r/w) and for the same reason i cant copy the folder ther... i even tryied wit root explorer, still cant get permision??? a little help please
:)

1. Disconnect your phone from the computer
2. load up the app root exp.
3. go to the root of the phones system to a folder called "/"i
4. at the top left you will see a white button that says "mount as r/w" press that and it will allow you to modify the contents of your system files, but ONLY replace the folder ive provided. if you touch anything else it will brick your phone.
 
Upvote 0
I think the issue may be more deep-seeded than we though. Could be kernel level, could be Adreno 205 related.. I wouldn't know how to fix it, but the firmware scripts are fine.

One of the biggest resources I've used to piece this together is the official Android Dev site..
Android Developers

If anyone wants to take time to create an account and enlist the help of the official Google Devs you can go to this site and create a help ticket..
Developer Forums | Android Developers
Post back here in this thread if you get any good responses.
 
Upvote 0
Possible solution:

After some quick Google searching I came across a couple links detailing how Android handles its I/O activity and as suspected as much of Android is based on the Linux kernel touch events and button inputs are handled similarly.

Possible solution 1: Fixing low-level touch input events



Clue from this link: All touch events are pre-coded and lie in the "/dev/input" system folder. Any given input on your phone (buttons, capacitive buttons, and the touchscreen) have a different variable stored in a file called "event" in this folder. For instance a Galaxy Prevail I am looking at has 5 of these files: "event0, event1, event2, event3, event4, and event5"

*I do not know if these files are simply a container or an actual script because they cannot be opened in any text editor or file manager I have*

According to the link, ADB can be used to dump the "action" of all possible touch events in hexa form.

Example: The output of these files looks similar to this


This hexa code is broken down in the link and explained...each of the number sequences means "finger is up" "finger is down" and any associated coordinates can be shown here, too.

How this problem might be fixed: Using Android Commander or a file manager, copy these touch event from a phone with a similar screen size (3.5) and use root to paste them into the folder to see if it fixes the problem.

Thanks for taking the time to try and help us fix this. Although I'm by no means an expert with Linux or Android, I've spent weeks trying to find a solution for this myself, to no avail obviously. This really sucks. Samsung should have fixed this by now. I'm never buying a Samsung phone again. I've got my fingers crossed that someone will figure this out and they will get a case or two of beer from.
 
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones