Kernel patch for 3-10 point multi-touch - Droid Incredible Android Development
I've had this patch for a while now, but I decided to finally post it here in the hope it might help someone. I kept hearing about how much better the Incredible's touchscreen is compared to the Nexus One's, so I wondered why it could only handle a maximum of 2 touches. It seems that the Incredible uses the Atmel mXT224 as its touch controller. The summary from Atmel clearly states "True 12-bit multiple touch with independent XY tracking for up to 10 concurrent touches in real time with touch size reporting." It turns out, it's actually quite a simple kernel mod to enable all 10 touches (although I've noticed the tracking quality start to degrade above 5). I've been running this on my Incredible for a month or so, and I've noticed no ill effects from it.
All you need to do is edit arch/arm/mach-msm/board-incrediblec.c, and replace
Code:
struct atmel_i2c_platform_data incrediblec_atmel_ts_data[] = {
{
.version = 0x016,
.abs_x_min = 1,
.abs_x_max = 1023,
.abs_y_min = 2,
.abs_y_max = 966,
.abs_pressure_min = 0,
.abs_pressure_max = 255,
.abs_width_min = 0,
.abs_width_max = 20,
.gpio_irq = INCREDIBLEC_GPIO_TP_INT_N,
.power = incrediblec_atmel_ts_power,
.config_T6 = {0, 0, 0, 0, 0, 0},
.config_T7 = {50, 15, 25},
.config_T8 = {10, 0, 20, 10, 0, 0, 5, 15},
.config_T9 = {139, 0, 0, 18, 12, 0, 16, 38, 3, 7, 0, 5, 2, 15, 2, 10, 25, 5, 0, 0, 0, 0, 0, 0, 0, 0, 159, 47, 149, 81, 40},
.config_T15 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T19 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T20 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T22 = {15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 1, 0, 7, 18, 25, 30, 0},
.config_T23 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T24 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T25 = {3, 0, 200, 50, 64, 31, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T27 = {0, 0, 0, 0, 0, 0, 0},
.config_T28 = {0, 0, 2, 4, 8, 60},
.object_crc = {0xDB, 0xBF, 0x60},
.cable_config = {35, 30, 8, 16},
.GCAF_level = {20, 24, 28, 40, 63},
.filter_level = {15, 60, 963, 1008},
},
{
.version = 0x015,
.abs_x_min = 13,
.abs_x_max = 1009,
.abs_y_min = 15,
.abs_y_max = 960,
.abs_pressure_min = 0,
.abs_pressure_max = 255,
.abs_width_min = 0,
.abs_width_max = 20,
.gpio_irq = INCREDIBLEC_GPIO_TP_INT_N,
.power = incrediblec_atmel_ts_power,
.config_T6 = {0, 0, 0, 0, 0, 0},
.config_T7 = {50, 15, 25},
.config_T8 = {12, 0, 20, 20, 0, 0, 20, 0},
.config_T9 = {139, 0, 0, 18, 12, 0, 32, 40, 2, 7, 0, 5, 2, 0, 2, 10, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, 47, 149, 81},
.config_T15 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T19 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T20 = {7, 0, 0, 0, 0, 0, 0, 30, 20, 4, 15, 5},
.config_T22 = {7, 0, 0, 25, 0, -25, 255, 4, 50, 0, 1, 10, 15, 20, 25, 30, 4},
.config_T23 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T24 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T25 = {3, 0, 200, 50, 64, 31, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T27 = {0, 0, 0, 0, 0, 0, 0},
.config_T28 = {0, 0, 2, 4, 8, 60},
.object_crc = {0x19, 0x87, 0x7E},
},
{
.version = 0x014,
.abs_x_min = 13,
.abs_x_max = 1009,
.abs_y_min = 15,
.abs_y_max = 960,
.abs_pressure_min = 0,
.abs_pressure_max = 255,
.abs_width_min = 0,
.abs_width_max = 20,
.gpio_irq = INCREDIBLEC_GPIO_TP_INT_N,
.power = incrediblec_atmel_ts_power,
.config_T6 = {0, 0, 0, 0, 0, 0},
.config_T7 = {50, 15, 25},
.config_T8 = {12, 0, 20, 20, 0, 0, 10, 15},
.config_T9 = {3, 0, 0, 18, 12, 0, 48, 45, 2, 7, 0, 0, 0, 0, 2, 10, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 143, 47, 143, 81},
.config_T15 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T19 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T20 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T22 = {5, 0, 0, 25, 0, -25, 255, 4, 50, 0, 1, 10, 15, 20, 25, 30, 4},
.config_T23 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T24 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T25 = {3, 0, 200, 50, 64, 31, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T27 = {0, 0, 0, 0, 0, 0, 0},
.config_T28 = {0, 0, 2, 4, 8, 60},
}
};
with
Code:
struct atmel_i2c_platform_data incrediblec_atmel_ts_data[] = {
{
.version = 0x016,
.abs_x_min = 1,
.abs_x_max = 1023,
.abs_y_min = 2,
.abs_y_max = 966,
.abs_pressure_min = 0,
.abs_pressure_max = 255,
.abs_width_min = 0,
.abs_width_max = 20,
.gpio_irq = INCREDIBLEC_GPIO_TP_INT_N,
.power = incrediblec_atmel_ts_power,
.config_T6 = {0, 0, 0, 0, 0, 0},
.config_T7 = {50, 15, 25},
.config_T8 = {10, 0, 20, 10, 0, 0, 5, 15},
.config_T9 = {139, 0, 0, 18, 12, 0, 16, 38, 3, 7, 0, 5, 2, 15, [B]10[/B], 10, 25, 5, 0, 0, 0, 0, 0, 0, 0, 0, 159, 47, 149, 81, 40},
.config_T15 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T19 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T20 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T22 = {15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 1, 0, 7, 18, 25, 30, 0},
.config_T23 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T24 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T25 = {3, 0, 200, 50, 64, 31, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T27 = {0, 0, 0, 0, 0, 0, 0},
.config_T28 = {0, 0, 2, 4, 8, 60},
.object_crc = {0xDB, 0xBF, 0x60},
.cable_config = {35, 30, 8, 16},
.GCAF_level = {20, 24, 28, 40, 63},
.filter_level = {15, 60, 963, 1008},
},
{
.version = 0x015,
.abs_x_min = 13,
.abs_x_max = 1009,
.abs_y_min = 15,
.abs_y_max = 960,
.abs_pressure_min = 0,
.abs_pressure_max = 255,
.abs_width_min = 0,
.abs_width_max = 20,
.gpio_irq = INCREDIBLEC_GPIO_TP_INT_N,
.power = incrediblec_atmel_ts_power,
.config_T6 = {0, 0, 0, 0, 0, 0},
.config_T7 = {50, 15, 25},
.config_T8 = {12, 0, 20, 20, 0, 0, 20, 0},
.config_T9 = {139, 0, 0, 18, 12, 0, 32, 40, 2, 7, 0, 5, 2, 0, [B]10[/B], 10, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 159, 47, 149, 81},
.config_T15 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T19 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T20 = {7, 0, 0, 0, 0, 0, 0, 30, 20, 4, 15, 5},
.config_T22 = {7, 0, 0, 25, 0, -25, 255, 4, 50, 0, 1, 10, 15, 20, 25, 30, 4},
.config_T23 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T24 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T25 = {3, 0, 200, 50, 64, 31, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T27 = {0, 0, 0, 0, 0, 0, 0},
.config_T28 = {0, 0, 2, 4, 8, 60},
.object_crc = {0x19, 0x87, 0x7E},
},
{
.version = 0x014,
.abs_x_min = 13,
.abs_x_max = 1009,
.abs_y_min = 15,
.abs_y_max = 960,
.abs_pressure_min = 0,
.abs_pressure_max = 255,
.abs_width_min = 0,
.abs_width_max = 20,
.gpio_irq = INCREDIBLEC_GPIO_TP_INT_N,
.power = incrediblec_atmel_ts_power,
.config_T6 = {0, 0, 0, 0, 0, 0},
.config_T7 = {50, 15, 25},
.config_T8 = {12, 0, 20, 20, 0, 0, 10, 15},
.config_T9 = {3, 0, 0, 18, 12, 0, 48, 45, 2, 7, 0, 0, 0, 0, [B]10[/B], 10, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 143, 47, 143, 81},
.config_T15 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T19 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T20 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T22 = {5, 0, 0, 25, 0, -25, 255, 4, 50, 0, 1, 10, 15, 20, 25, 30, 4},
.config_T23 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T24 = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T25 = {3, 0, 200, 50, 64, 31, 0, 0, 0, 0, 0, 0, 0, 0},
.config_T27 = {0, 0, 0, 0, 0, 0, 0},
.config_T28 = {0, 0, 2, 4, 8, 60},
}
};
For those who didn't spot the change, it's in config_t9 (highlighted in bold). You can, of course, change the 10 to anything you want (I've only tested with between 2 and 10, though) and that will be set as the maximum number of touches.
I hope this helps someone.
I have been digging for this forever! THANKS!!!
This actually seems quite useful and I wasn't even aware this was possible! Two quick questions if you don't mind - first of all, did you mean that enabling above 5 touch points would cause tracking to degrade, or just using it (having 5 or more fingers on the screen would cause tracking to degrade)? Also, howdy I go about editing this file in the first place? Thanks!
I'm not savvy enough to change it without a .zip flash. However, it'll be nice to see this incorporated into some custom kernels soon
mikeymop said:
I'm not savvy enough to change it without a .zip flash. However, it'll be nice to see this incorporated into some custom kernels soon
Click to expand...
Click to collapse
These are changes applied to the kernel source, so not a file on your phone that is to be edited. Someone would need to make the changes to the source code files and then recompile the kernel (which you could then flash)... perhaps invisiblek can add it to his next kernel release?
xShin said:
This actually seems quite useful and I wasn't even aware this was possible! Two quick questions if you don't mind - first of all, did you mean that enabling above 5 touch points would cause tracking to degrade, or just using it (having 5 or more fingers on the screen would cause tracking to degrade)? Also, howdy I go about editing this file in the first place? Thanks!
Click to expand...
Click to collapse
I haven't done extensive testing, but the tracking at up to 5 points seems to be about the same quality no matter how many you have enabled. As for editing the file, you need to recompile the kernel and flash an update.zip with the new one. I'll patch the stock HTC Sense kernel and post a pre-compiled update.zip tomorrow. If you use a different kernel, you can either download and patch the source yourself, or send a request to the kernel author that this patch be included by default.
cool, thanks!
This is cool, but do any programs utilize more than two touch points?
megarek said:
This is cool, but do any programs utilize more than two touch points?
Click to expand...
Click to collapse
Exactly this.
invisiblek said:
cool, thanks!
Click to expand...
Click to collapse
does this mean you're going to include in your kern now??
None right now, but with the advent of Honeycomb we may see apps start accepting 3+ finger input.
Piano Emulators + >2 Touch Points = Full Chords.
Gah... I hate the two point limit for that reason alone.
Sent from my ADR6300 using XDA App
It would be good for gaming, you could run and jump in Mario, lol
tchebb said:
I haven't done extensive testing, but the tracking at up to 5 points seems to be about the same quality no matter how many you have enabled. As for editing the file, you need to recompile the kernel and flash an update.zip with the new one. I'll patch the stock HTC Sense kernel and post a pre-compiled update.zip tomorrow. If you use a different kernel, you can either download and patch the source yourself, or send a request to the kernel author that this patch be included by default.
Click to expand...
Click to collapse
How do you do the test?
Grooby97 said:
How do you do the test?
Click to expand...
Click to collapse
I use one of the multi-touch testers in the market.
tchebb said:
I use one of the multi-touch testers in the market.
Click to expand...
Click to collapse
weird, I am using the InvisibleK #21 kernel, which should have the fix and also the multitouch test from the market place and I am only getting 2 points.
Grooby97 said:
weird, I am using the InvisibleK #21 kernel, which should have the fix and also the multitouch test from the market place and I am only getting 2 points.
Click to expand...
Click to collapse
I've been following the discussion in the invisiblek thread. It seems it's not working for a lot of people. Can you run "adb shell cat /sys/android_touch/vendor" and paste the output?
Nothing new about this, it's the same thing the Evo guys have been doing for awhile now. I've even had it in my kernels for some time, but it doesn't appear to work on our phones. I've tried with Myn's, ID's Z Port, and a few others, still no luck.
Personally, I don't like changing the board-incredible to do this mod, I prefer ffolks method, mod the atmel.c file instead. This way, you can detect which version of the touchscreen your using.
And before you ask which one I have, mine is x80, which should support 10 points, not the x4f which only supports 3.
If anyone wants to see NetArchy's version of ffolks patch, which is what I've been using for awhile, just slightly modified:
https://github.com/netarchy/Supersonic-2.6.32/commit/da528adc5063723f8847baebeca4a27a8ff0f55b
And here's the write-up on htc-linux:
http://htc-linux.org/wiki/index.php?title=Amtel_MXT224
Z
ziggy471 said:
Nothing new about this, it's the same thing the Evo guys have been doing for awhile now. I've even had it in my kernels for some time, but it doesn't appear to work on our phones. I've tried with Myn's, ID's Z Port, and a few others, still no luck.
Personally, I don't like changing the board-incredible to do this mod, I prefer ffolks method, mod the atmel.c file instead. This way, you can detect which version of the touchscreen your using.
And before you ask which one I have, mine is x80, which should support 10 points, not the x4f which only supports 3.
If anyone wants to see NetArchy's version of ffolks patch, which is what I've been using for awhile, just slightly modified:
https://github.com/netarchy/Supersonic-2.6.32/commit/da528adc5063723f8847baebeca4a27a8ff0f55b
And here's the write-up on htc-linux:
http://htc-linux.org/wiki/index.php?title=Amtel_MXT224
Z
Click to expand...
Click to collapse
What would you say is the biggest benefit to having the patch that enables the ten point reconition? I am one of those people that cannot get it to work on the INC, but im wondering if its even going to benefit the cause.. seeing that you dont really care for it yourself
aauussttiinn88 said:
What would you say is the biggest benefit to having the patch that enables the ten point reconition? I am one of those people that cannot get it to work on the INC, but im wondering if its even going to benefit the cause.. seeing that you dont really care for it yourself
Click to expand...
Click to collapse
I really don't see more than maybe 4 as a viable option, try putting more than 4 fingers on the screen at one time, can you even see it anymore? The Evo guys have either 3 or 5, depending on which sensor they have, so that's why I patched mine that way. But I've been playing with this since around the beginning of Oct, and can't seem to figure out why it's not working, except that it maybe something to do with the ROM itself, but I don't do ROM work, just kernels.
Z
Related
Outstanding Bluetooth Bug- Lets pool some money to fix it...
Anyone with me on this ? i got a perfect machine now with only the outstanding bluetooth disconnect bug... i will start the ball rolling: 1. US$10. 2. 3. 4.
Re: Outstanding Bluetooth Bug- Lets pool some money to fix i khnglh said: Anyone with me on this ? i got a perfect machine now with only the outstanding bluetooth disconnect bug... i will start the ball rolling: 1. US$10. 2. 3. 4. Click to expand... Click to collapse Search this forum, there IS a regkey to change fot this bug...
has the the BT bug been fixed ? i meant the bug of BT disconnecting when the BA is powered up after it goes into standby.
Have a look at the regkeys : HKEY_LOCAL_MACHINE\Software\Microsoft\Bluetooth\l2cap RTX: REG_DWORD Sets the Response Timout eXpired (RTX) timer value. This timer determines the time in seconds that the L2CAP layer must wait before the channel is terminated due to an unresponsive remote device. Default value is 0x3C (60 seconds). ERTX: REG_DWORD Sets the Extended Response Timeout eXpired (ERTX) timer value. This timer is used when the remote device is performing additional processing of a request signal. Default value is 0x12C (300 seconds). IdlePhys :REG_DWORD Sets the maximum amount of time that the L2Cap layer waits before closing a baseband connection after the logical link has been disconnected. Default value is 0xA (10 seconds). IdleConnect :REG_DWORD Sets the timeout value, in seconds, that the L2CAP layer must wait for incoming data on a new connection. Default value is 0xA (10 seconds). ConfigTimeout :REG_DWORD Sets the timeout value, in seconds, that the L2CAP layer must wait when the configuration process is in progress. Default value is 0x78 (120 seconds). And most important one : PicoCapable :REG_DWORD Determines if piconet is enabled. Setting this value to 1 does not close the idle physical connection. Default value is 0.
thanks but... is this for the wizard wm5 BT disconnect problem everytime the BA is off or goes into standby... ?
Re: thanks but... I don't think that these keys would help BlueAngel users
Screen Off DUring Calls - Still
Hi there, I have done the two tweaks recommended to stop the screen going off during calls but now have the following situation: The screen still goes off during calls, but if I turn the screen back on once, it will stay on for the duration of the call, a feature I thought had been introduced in the new official HTC ROM. I am still on 1.37.405.1 or something like that, the one that came with my Orange Diamond originally. However, turning the screen back on only brings it back to a low-light status, as if the screen was locked..? All very confusing. Anyone have any ideas? Thanks.
I just rest my thumb on the touch sensitive centre button and my screen stays on, no tweaks .I am still on the Orange stock rom.
I also have this problem after doing the two tweaks. Even upgraded to the 1.93 CHT rom. Any one encountered this also ? Any solution ? Thanks!
http://forum.xda-developers.com/showthread.php?t=398265 Point no.8 would solve this problem
mitto said: http://forum.xda-developers.com/showthread.php?t=398265 Point no.8 would solve this problem Click to expand... Click to collapse No it doesn't, the screen still goes off right after starting the call.
Have you soft reset the device after you have edited the registry? Tried both ways? It works on my diamond.
It used to work but after upgraded to ROM 1.93. The tweak no longer work. Any one have the same problem ?
I would have thought u need to reapply reg fix as when u update rom it restore orig settings
Originally Posted by L o r d R a j Done. This is what I did * HKLM\Drivers\BuiltIn\RIL\BatteryTimeoutInCall set to = 0 default = 5 * HKLM\Drivers\BuiltIn\RIL\BatterySuspendTimeoutInCall to = 0 default = 5 * HKLM\Drivers\BuiltIn\RIL\EnableFastDormantDisplayDuringCall to = 0 default = 0 * HKCU\ControlPanel\Phone Sleep to = 0 default = 1 * HKCU\ControlPanel\Backlight\LightSensorPollingEnable to = 0 default = 1 That done.. Restart the phone (I waited for a minute or so) Backlight remains on now. Then, just for the hell of it.. went back into the registry and set back the default values for: lightsensorpollingenable Phone sleep Fast dormant Checked again.. still works.
I decided to test all of those settings separate, the one that fixes it is the HKCU\ControlPanel\Backlight\LightSensorPollingEnable. All the others did nothing.
How to port Lollipop Rom to another Bay Trail tablet? (Touchscreen problems).
Hi, I've been trying some Lollipop Roms on my Ramos I9s, because it's limited to 4.4.4. Almost same specs, except for the screen size and resolution. Everything works perfect, but I can't use them because I have problems with the touchscreen: only a quart of the screen is touchable, and it's necessary to flip the tablet to touch other parts of the interface. The X and Y axis are inverted too. I used the getevent -p command with adb: (WITH MY STOCK 4.4.4 ROM) add device 2: /dev/input/event5 name: "goodix_ts" events: KEY (0001): 014a ABS (0003): 0030 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 0032 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 0035 : value 0, min 0, max 1920, fuzz 0, flat 0, resolution 0 0036 : value 0, min 0, max 1200, fuzz 0, flat 0, resolution 0 0039 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 (WITH TECLAST 5.0 ROM) add device 2: /dev/input/event5 name: "goodix_ts" events: KEY (0001): 014a ABS (0003): 0030 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 0032 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 0035 : value 0, min 0, max 4096, fuzz 0, flat 0, resolution 0 0036 : value 0, min 0, max 4096, fuzz 0, flat 0, resolution 0 0039 : value 0, min 0, max 255, fuzz 0, flat 0, resolution 0 The differences are the max numbers: 1920x1200 (display resolution) on stock kitkat, and 4096x4096 on the Teclast rom. Is there a way to config the event5 or the touchscreen module, and make it compatible with my screen? Thanks for the help.
[SOLVED] Screen orientation vs. HDMI orientation
I've just begun to look into the HDMI issue since obtaining a second HD to experiment with. CM 12.1 and 13 builds (a few of them anyway) support the HDMI output but the orientation of the output is sometimes at odds with the tablet display. Of course, that depends to some extent on how you hold the tablet. There is a statement in /system/build.prop that determines the angle of displacement between the two displays (in 90 degree increments): Code: persist.hwc.mirroring.transform=x where x = 0, 1, 2, or 3 In the CM 13 build I am currently working on (cm_hummingbird-ota-MMB29T.160129--contrary to what I have seen posted, this is the newest CM 13 build with working HDMI for hummingbird, at least based on my testing) the value of "x" is 3 by default. This results in a potential 270 degree disagreement between the tablet display and the HDMI display. Again, it somewhat matters what you consider the "normal" landscape orientation of the tablet. I found x=0 to not work as expected. However x=1 gives an exact duplicate display when the tablet is held in portrait position with the 'n' button on the bottom and also in landscape position when the tablet is held with the HDMI port on the right. You can try values from 0 to 3 and keep what suits your typical use. Reboot after each change to test.
Reddish tint on display and bugs
The moment i unboxed it i noticed a red tint over the display. I went into settings and changed the colour temperture but its getting reset after screen goes off. Any1 else has this bug??
Faisal122 said: The moment i unboxed it i noticed a red tint over the display. I went into settings and changed the colour temperture but its getting reset after screen goes off. Any1 else has this bug?? Click to expand... Click to collapse No issue like this with mine. Try in Settings > Display and make sure Eye Comfort is off.
justinclarke said: No issue like this with mine. Try in Settings > Display and make sure Eye Comfort is off. Click to expand... Click to collapse No man its a defective display. But sadly even technician denies the fact. Last hope is service centre
Faisal122 said: The moment i unboxed it i noticed a red tint over the display. I went into settings and changed the colour temperture but its getting reset after screen goes off. Any1 else has this bug?? Click to expand... Click to collapse Thats no bug... Its the default value... Take a lock in logcat after turning on for rgb value. Edit: Code: Su Cat /sys/devices/virtual/graphics/fb0/lcd_color_temperature Should return 32768, 0, 0, 0, 32768, 0, 0, 0, 32768
Darkest-Dark said: Thats no bug... Its the default value... Take a lock in logcat after turning on for rgb value. Edit: Should return 32768, 0, 0, 0, 32768, 0, 0, 0, 32768 Click to expand... Click to collapse Thanks btw but recent update has solved that bug.