URGENT, PLEASE HELP:
I bought a replacement digitizer/glass for my Acer Liquid E3 / E380 as it has been broken (only the glass) for months now. It has a different chip but has the Acer brand on top.
Problem: I placed the new digitizer and all touch is REVERSED / MIRRORED! Up is down and down is up. So Y-Axis (or X?!) must be reversed now
PLEASE help me (asap) to do this! A lot of people replacing their glass have this problem on the internet, and a lot of fixes are available. From script.bin methods to running calibration apps or modding kernels and/or installing other drivers or as simple as echo 1 > /sys/modules/tpd_settings/parameters/tpd_mode_axis or something like that somewhere like that?!
It is impossible to use my phone now, but ADB is working fine. Anyone who can give me the solution to fix by ADB (or Recovery)??
URGENT, PLEASE HELP:
I bought a replacement digitizer/glass for my Acer Liquid E3 / E380 as it has been broken (only the glass) for months now. It has a different chip but has the Acer brand on top.
Problem: I placed the new digitizer and all touch is REVERSED / MIRRORED! Up is down and down is up. So Y-Axis (or X?!) must be reversed now
PLEASE help me (asap) to do this! A lot of people replacing their glass have this problem on the internet, and a lot of fixes are available. From script.bin methods to running calibration apps or modding kernels and/or installing other drivers or as simple as echo 1 > /sys/modules/tpd_settings/parameters/tpd_mode_axis or something like that somewhere like that?!
It is impossible to use my phone now, but ADB is working fine. Anyone who can give me the solution to fix by ADB (or Recovery)??
Before trying/edit:
YES, this seems getting better and better. You're almost my hero :good::good::good:
Touch is right on (just a tiny little off at the bottom) and working correct in the correct area.
Buttons though still not working and when pressed showing a touch at the screen bottom still.
Seems it still thinks the button area is also screen area though.
EDIT / After trying:
Finally a good way to see the coords! Thanks.
When I cat the /proc/kmsg and grep (filter) the "tpd", I get insight. The touchpad does seem to use 0/0 up to something like 719/1279 (I found values 0>719 and 1>1259, not 1279).
BUT when I only touch the screen area, we see a button area up to height 80 or so, so Y minimum (screen) should be something like 80 (up to 1259).
Buttontests (x/y): Middle of Button 1 is 90/1, middle of Button 2 is 330/1 and middle of Button 3 is 627/1. So Y is always 1 for buttons!
When I move around in the black button area only, I do get values of Y under 80, but not a lot and not when I am ON a button:
ok, so the buttons should work anyway with the ast version.
i can only set an exact value for the button, so you have to decide which of the two x-values for every button is "easier" or more intuitive/more centered.
can you reach every y coordinate? they should be slightly off, if you enable the display of coordinates in info/debug menu you should be off around 10% of screen size in y axis.
No, (so) this 4th kernel is a step back.
The height of every touch is still a tiny little off (1279 instead of 1259??) and when I now come below the screen, so INTO the button area, the pointer jumps to the TOP of the screen?! All these posts and values are confusing me/us hahaha, re-read my last (corrected) posts please. Added preferred buttons too.
Ps. What do you think? Will I always have to use your customized kernel from now on? Also in other ROMs like CM 10.1?
Ps2. Will another ROM like CM 10.1 also need this customization, or can it work right away out of the box maybe?
Ps3. Maybe a good idea to post exactly WHAT you are doing/changing, and WHERE, so anyone (dev) can learn from this problem?
Nope this 4th kernel is a step back.
The height of every touch is still a tiny little off (1279 instead of 1259??) and when I now come below the screen, so INTO the button area, the pointer jumps to the TOP of the screen?! All these posts and values are confusing me/us hahaha, re-read my last (corrected) posts please. Added preferred buttons too.
Ps. What do you think? Will I always have to use your customized kernel from now on? Also in other ROMs like CM 10.1?
Ps2. Will another ROM like CM 10.1 also need this customization, or can it work right away out of the box maybe?
Ps3. Maybe a good idea to post exactly WHAT you are doing/changing, and WHERE, so anyone (dev) can learn from this problem?
No never. The touch is still generated (checking kmsg, same result as log in last posts), but it visually shows a touch on ultimate top of my screen ?!
(And height is a tiny off, it shows a visual touch just (5mm?) above my finger press)
This should be it, i forgot you have other x koords for buttons after display switch...
---------- Post added at 04:56 PM ---------- Previous post was at 04:54 PM ----------
are your button-positions different with new glass? they should because the x position is so different but the min max for x is same... ( i mean "real position" on the glass)
if i would know your brand i might get the driver... but you dont know the brand/phone your display is from?
---------- Post added at 04:58 PM ---------- Previous post was at 04:56 PM ----------
that's last version for today, i will continue tomorrow
This should be it, i forgot you have other x koords for buttons after display switch...
---------- Post added at 04:56 PM ---------- Previous post was at 04:54 PM ----------
are your button-positions different with new glass? they should because the x position is so different but the min max for x is same... ( i mean "real position" on the glass)
if i would know your brand i might get the driver... but you dont know the brand/phone your display is from?
---------- Post added at 04:58 PM ---------- Previous post was at 04:56 PM ----------
that's last version for today, i will continue tomorrow
:good::good: YEEEEHAAAAAAAAAAAAAAAAAAAAAAA! Y O U A R E K I N G! :good::good:
Buttons ARE WORKING, and touch also is good, not perfect though:
The height is still the tiny bit off. Can we fix this? This is annoying...
Touch shows a few mm above my finger, so top of the screen is reachable, but things in the bottom of the screen are not. It seems relative (not 1 same absolute difference at all heights)! The difference is small at the top, and starts to get bigger from the middle of the visible screen.
If i touch the ultimate bottom of the screen edge, the touch shows on/just above the top row of the 3x3 small white dots within the big green All Apps circle in the bottom middle.
In other words, touching at the top area shows half the touch dot (as if my nail is touching)(other half is covered by my finger). At the bottom area the whole touch dot is shown with a distance of 1mm above my finger/nail.
(Glass/hardware is EXACTLY the same as original, only another chip layout (and different chip?) on the connection ribbon!)
Ps. Do you have a donation system or an address I can send my flowers to?
Y starts at 1 (screen top) and 1179 is the highest value (lowest of the visible screen) I can hit (and then it jumps to 1476 (?!) in the button area).
X is correct from 0 to 719.
The bottom line (blue line)(at Y = 1179) is displayed on exactly the top of space bar in my slided up Google keyboard.
Y is always mapped to 1400 if in range 0..79 (you have to test if a press above the buttons on the line to visible screen causes a button press then it must be adjustet.
Y is recalculated now so everything in visible screen should be fine or at least equally off (maybe by 1 pixel)
Where have you bought the replacement part? Is it stated as "original e3 PLUS" screen or maybe an e3 standard version screen and there is a difference...
Y is always mapped to 1400 if in range 0..79 (you have to test if a press above the buttons on the line to visible screen causes a button press then it must be adjustet.
Y is recalculated now so everything in visible screen should be fine or at least equally off (maybe by 1 pixel)
Where have you bought the replacement part? Is it stated as "original e3 PLUS" screen or maybe an e3 standard version screen and there is a difference...
Nope
This kernel 8 is almost the same as the last. No differences but the max Y (bottom) now is 1195.
Phone is still hard to use, with (almost) no spacebar and no text input in WhatsApp etc. All in the bottom (only usable if I rotate my phone), and touch is still off. :/
The screen is sold on AliExpress (sorry) by Brothers, and is stated as a custom high quality screen (maybe not original, but with Acer brand and looks the same, but different chip layout).
Love you man, thanks for ALL your work and efforts!!
Again: Maybe report exactly what/how you did, for others?
And where can I check the digitizer chipset (version)? Whats yours (stock)?
This kernel is your 7.19 custom one right, or is it stock kernel with this fix?
-#define TPD_WARP_Y y
+// y goes from 80 to 1259 -> 1180 is "resolution", original touchpad has 1280 resolution;
+#define TPD_WARP_Y (((((1260-y)) * 1280) / 1180)-1)
#define TPD_WARP_X(x) x
+// y is always 1 for buttons but should be 1400
+// #define TPD_WARP_Y_BUTTONS (y+1399)
+#define TPD_WARP_Y_BUTTONS 1400
+
/**************************step 2:virtual key*********************/
#define TPD_HAVE_BUTTON // if have virtual key,need define the MACRO
---- SNIP -----
diff --git a/mediatek/custom/common/kernel/touchpanel/focaltech/focaltech_driver.c b/mediatek/custom/common/kernel/touchpanel/focaltech/focaltech_driver.c
index 0e8117c..66cad1d 100644
--- a/mediatek/custom/common/kernel/touchpanel/focaltech/focaltech_driver.c
+++ b/mediatek/custom/common/kernel/touchpanel/focaltech/focaltech_driver.c
@@ -1131,8 +1134,8 @@ void tpd_enable_hallsensor_dov(u8 enable)
for(i =0; i<point_num; i++)//only support 3 point
{
// tpd_down(cinfo.x, cinfo.y, cinfo.id);
- if(cinfo.y>TPD_RES_Y) //button area
- tpd_down(cinfo.x, cinfo.y, cinfo.id);
+ if(cinfo.y<80) //button area
+ tpd_down(cinfo.x, TPD_WARP_Y_BUTTONS(cinfo.y), cinfo.id);
else //lcd area
tpd_down(TPD_WARP_X(cinfo.x), TPD_WARP_Y(cinfo.y), cinfo.id);
}
@@ -1142,8 +1145,8 @@ void tpd_enable_hallsensor_dov(u8 enable)
else
{
//tpd_up(cinfo.x[0], cinfo.y[0]);
- if(cinfo.y[0]>TPD_RES_Y) //button area
- tpd_up(cinfo.x[0], cinfo.y[0]);
+ if(cinfo.y[0]<80) //button area
+ tpd_up(cinfo.x[0], TPD_WARP_Y_BUTTONS(cinfo.y[0]));
else //lcd area
tpd_up(TPD_WARP_X(cinfo.x[0]), TPD_WARP_Y(cinfo.y[0]));
//TPD_DEBUG("release --->\n");
---------- Post added at 03:48 PM ---------- Previous post was at 03:45 PM ----------
So for other's: i just changed the driver to map the "wrong" readings from new touchpanel to the readings from original touchpanel (swap y; remap range and button position)
it would also be possible to try to find the right chip id for the touchpanel and change it in the focaltech driver, but maybe it is not even a focaltech.... and without that info it would require several builds with all variants (and you can still miss the correct chip if it's not in acer kernel source)
---------- Post added at 03:50 PM ---------- Previous post was at 03:48 PM ----------
So you're the only one with the new features (a little bit gpu overclock, some debugging removed, optimizations) but these features give no really big performance increase.
---------- Post added at 04:07 PM ---------- Previous post was at 03:50 PM ----------
The chip version is only known by the manufacturer of the touch screen, so you can ask them (i doubt they'll forward your question to the factory)
but i could build 10 kernels to test the right version assuming it is focaltech and one of these:
oh, you can test in the device test (manufacturer menu) if you still have 5 multi touch points like in original screen. that would rule out 2 of the chips...
URGENT, PLEASE HELP:
I bought a replacement digitizer/glass for my Acer Liquid E3 / E380 as it has been broken (only the glass) for months now. It has a different chip but has the Acer brand on top.
Problem: I placed the new digitizer and all touch is REVERSED / MIRRORED! Up is down and down is up. So Y-Axis (or X?!) must be reversed now
PLEASE help me (asap) to do this! A lot of people replacing their glass have this problem on the internet, and a lot of fixes are available. From script.bin methods to running calibration apps or modding kernels and/or installing other drivers or as simple as echo 1 > /sys/modules/tpd_settings/parameters/tpd_mode_axis or something like that somewhere like that?!
It is impossible to use my phone now, but ADB is working fine. Anyone who can give me the solution to fix by ADB (or Recovery)??
URGENT, PLEASE HELP:
I bought a replacement digitizer/glass for my Acer Liquid E3 / E380 as it has been broken (only the glass) for months now. It has a different chip but has the Acer brand on top.
Problem: I placed the new digitizer and all touch is REVERSED / MIRRORED! Up is down and down is up. So Y-Axis (or X?!) must be reversed now
PLEASE help me (asap) to do this! A lot of people replacing their glass have this problem on the internet, and a lot of fixes are available. From script.bin methods to running calibration apps or modding kernels and/or installing other drivers or as simple as echo 1 > /sys/modules/tpd_settings/parameters/tpd_mode_axis or something like that somewhere like that?!
It is impossible to use my phone now, but ADB is working fine. Anyone who can give me the solution to fix by ADB (or Recovery)??
Nope this 4th kernel is a step back.
The height of every touch is still a tiny little off (1279 instead of 1259??) and when I now come below the screen, so INTO the button area, the pointer jumps to the TOP of the screen?! All these posts and values are confusing me/us hahaha, re-read my last (corrected) posts please. Added preferred buttons too.
Ps. What do you think? Will I always have to use your customized kernel from now on? Also in other ROMs like CM 10.1?
Ps2. Will another ROM like CM 10.1 also need this customization, or can it work right away out of the box maybe?
Ps3. Maybe a good idea to post exactly WHAT you are doing/changing, and WHERE, so anyone (dev) can learn from this problem?