I changed the digitizer and display in my phone. The digitizer seems to think its resolution is larger (1080x1920) than the real display resolution (720x1280), so my touch is misplaced. I know how to change the display (physical) resolution using wm size, but that scales the digitizer resolution proportionally.
How do I change the digitizer resolution?
Output of dumpsys SurfaceFlinger: pastebin.com/gXnfxJKv
Output of dumpsys display: pastebin.com/bwkjXHxH
(The phone is Lenovo A7000, but that shouldn't matter. The error persists after upgrading firmware, rebooting etc. I haven't flashed/rooted - yet.)
After using adb shell wm size ----x---, did you try adb shell wm density ---? Density is basically the dpi of which the device will utilise
Good luck.
ramiabouzahra said:
After using adb shell wm size ----x---, did you try adb shell wm density ---? Density is basically the dpi of which the device will utilise
Good luck.
Click to expand...
Click to collapse
Thanks, but yeah, I tried and it doesn't affect the digitizer resolution either, none of the wm options do anything worthwhile.
It seems I need something like a way to change sizes of SurfaceFlinger layers.
Xellos0 said:
Thanks, but yeah, I tried and it doesn't affect the digitizer resolution either, none of the wm options do anything worthwhile.
It seems I need something like a way to change sizes of SurfaceFlinger layers.
Click to expand...
Click to collapse
SurfaceFlinger is integrated into the GPU if I am correct, so good luck with changed that
Other than that, at the time of writing, I can't come up with a solution.
Wish you best of luck
Just going to add that I have a similar yet different problem to you.
The similar part is I too also need means to change digitizer resolution but instead of going from 1080p(FHD) down to 720p(HD). My scenario needs to go from 1080p(HD) up to 2160p(UHD)
So I'm just adding more traffic in hopes people know of commands specific to the digitizer or a method to locate & modify files which report the device as only 1080p to most apps
See I've tried Shell/ABD commands but unlike most phones giving my phone a command to report itself as 4K to apps is creating an issue because seemingly even though the device knows it's 4K it reports to itself/apps as 1080p so my the digitizer is running itself as 1080p even though the hardware is sending a 4K signal to light the screen even if most times what's displayed is simply 400% 1080p
If anyone knows what files to get to (as well as how) I as well as OP can manually add the appropriate values to use the correct amount of our screens whilst utilizing the correct resolution, because like he said the PDI stuff isn't related to digitizer only display scale, we need digitizer scaling
OJKLLC said:
Just going to add that I have a similar yet different problem to you.
The similar part is I too also need means to change digitizer resolution but instead of going from 1080p(FHD) down to 720p(HD). My scenario needs to go from 1080p(HD) up to 2160p(UHD)
So I'm just adding more traffic in hopes people know of commands specific to the digitizer or a method to locate & modify files which report the device as only 1080p to most apps
See I've tried Shell/ABD commands but unlike most phones giving my phone a command to report itself as 4K to apps is creating an issue because seemingly even though the device knows it's 4K it reports to itself/apps as 1080p so my the digitizer is running itself as 1080p even though the hardware is sending a 4K signal to light the screen even if most times what's displayed is simply 400% 1080p
If anyone knows what files to get to (as well as how) I as well as OP can manually add the appropriate values to use the correct amount of our screens whilst utilizing the correct resolution, because like he said the PDI stuff isn't related to digitizer only display scale, we need digitizer scaling
Click to expand...
Click to collapse
& to clarify when in 4K all the time mode with the ABD/Shell command it's not like I can use the whole screen to touch but it'll scale that touch to 1960 by 1080, not the touch for my case is 100% accurate to where I place my finger, issue is that its only sampling 1960 by 1080 of the pixels aka just 1 corner so only useable quarter of the touchscreen with the other 75% completely dead
Related
I bought a MK802 for a Car PC project that I am doing. I use to have a Windows based Car PC, so I already have six 7inch VGA w/ touchscreens installed. I bought the MK802 specifically for salvaging the screens and because of Androids mobile diversity.
Issue 1: The touch panel is USB based. I plug it in and a mouse pointer pops up on the screen. I am able to move to the left and right correctly. But up and down are inverted, so when I push on the top of the screen, the pointer is at the bottom and when I push at the bottom, it appears on the top. Is there a config file I can edit? maybe switch the commands for up and down?
Issue 2: The MK802 are built for high definition displays with high resolutions. I used a HDMI to VGA converter to convert it to the port I need. Issue is that the screen can only work at a resolution of 800 × 480 (1,152,000) pixels w/ display format: 4:3(800*600 default), 16:9 is optional. When I plug the two together, the screen turns to a red color. Thats with MK802 on 720p. Now if I change it to 480p, I can see the screen, but its not sitting correctly. Is there a file to adjust the resolution to a lower one that will make the screen happy?
Any help would be appreciated.
hijackzx1 said:
Issue 2: The MK802 are built for high definition displays with high resolutions. I used a HDMI to VGA converter to convert it to the port I need. Issue is that the screen can only work at a resolution of 800 × 480 (1,152,000) pixels w/ display format: 4:3(800*600 default), 16:9 is optional. When I plug the two together, the screen turns to a red color. Thats with MK802 on 720p. Now if I change it to 480p, I can see the screen, but its not sitting correctly. Is there a file to adjust the resolution to a lower one that will make the screen happy?
Click to expand...
Click to collapse
I think this can be done in screen. I remember seeing that in its option menu. I will test today and see if it works. Also, I noticed that I cant adjust the the format on the MK802. I had screwed something up and flashed the ROM to their supposed latest ROM. It adds a ton of features that seemed to be missing before, but has taken away other features like resolution adjustment.
How did this ever turn out. im looking into to doing something very similar. what do you use for sound processing. any help would be awesome.
Hi, curious question.
I'm wondering why the Nexus7 doesn't allow you to slow scroll/pan down at single pixel steps. Always seems to be in 2-3 pixel jumps. I got a bad habit of scrolling web pages while reading from iOS but on my N7 I get these kinda anoying start/stop jerks.
Is this related to the virtual pixel resolution being lower than the actual screen resolution? And would changing it allow one to match the virtual pixels to the screen pixels and get smoother slow speed panning?
Anyone know if some custom ROMs optimize for this?
BR
POTS101 said:
Hi, curious question.
I'm wondering why the Nexus7 doesn't allow you to slow scroll/pan down at single pixel steps. Always seems to be in 2-3 pixel jumps. I got a bad habit of scrolling web pages while reading from iOS but on my N7 I get these kinda anoying start/stop jerks.
Is this related to the virtual pixel resolution being lower than the actual screen resolution? And would changing it allow one to match the virtual pixels to the screen pixels and get smoother slow speed panning?
Anyone know if some custom ROMs optimize for this?
BR
Click to expand...
Click to collapse
I have been struggling with this issue for days. Looked into kernel code hoping to find anything related to scrolling or touchscreen but nowhere to find such a thing. It has nothing to do with virtual pixel resolution. If you swipe your finger at a degree of between 45-90 (accapted as scroll up by the system), Y coordinates change by 3 pixels where as X coordinates can change by 1.. Therefore its not a limitation, it is kind of scroll sensitivity which is 3px.. I've seen other devices can scroll by 1 pixel.
I believe google has set this value to 3 because of rendering issues, since its gonna render the screen 3 times more if it is set to 1. Maybe it is the optimum sensitivity. Lower than 3 pixels may disrupt buttery smoothness but its just a guess..
I hope one dev can lead us the right piece of code where it is set to 3 and we can change it ourselves to test the best..
You guys can try the problem yourself actually by installing the "Multi-touch accuracy check" app from market, which shows the exact pixel of the touch..
the xy coordinates readout from the developer "show touches" setting shows the 3pixel increments too.
when panning something just a bit faster than dead slow then suddenly gets rid of the jumps and goes smoother as well.
could it be a battery saving thing that they just get rid of taxing the cpu/gpu when people like me do these constant slow scroll pans on webpages and books etc.?
POTS101 said:
the xy coordinates readout from the developer "show touches" setting shows the 3pixel increments too.
when panning something just a bit faster than dead slow then suddenly gets rid of the jumps and goes smoother as well.
could it be a battery saving thing that they just get rid of taxing the cpu/gpu when people like me do these constant slow scroll pans on webpages and books etc.?
Click to expand...
Click to collapse
2 more thoughts:
a) this relatively coarse sensitivity can lead sometimes (not often) lead to a +/-3 pixel uncertanty in a UI element and cause it to jittter - sometimes happens when finger pressure changes.
b) I had for a while thought that it may be linked to the size of the touch sensors on the display. Being a lower cost device I figured that the HW resolution may be lower than pixel count. But I'm pretty sure that you must be always hitting multiple sensors and the system should just interpolate to a finer resolution.
POTS101 said:
the xy coordinates readout from the developer "show touches" setting shows the 3pixel increments too.
when panning something just a bit faster than dead slow then suddenly gets rid of the jumps and goes smoother as well.
could it be a battery saving thing that they just get rid of taxing the cpu/gpu when people like me do these constant slow scroll pans on webpages and books etc.?
Click to expand...
Click to collapse
When scrolled a little bit faster, it still increases by 3px , not 1.. I also assume that it is about battery saving but if I can find a way to decrease the step size, I'd love to try it by myself..
Also It can be related to the sensors , as you mentioned, but not likely.. It can catch 1px changes when swiped horizontally..
Any news on this?
As far as I can see, this is only related to touch screen; if you use a usb mouse, you can actually see the scroll by one pixel at time, and there is no graphical issues. With mouse all seems smoother...
At this point, I think It's an hardware issue of the touch screen, as the system can easly support 1px scrolling
aLPaSLaN07 said:
I have been struggling with this issue for days. Looked into kernel code hoping to find anything related to scrolling or touchscreen but nowhere to find such a thing. It has nothing to do with virtual pixel resolution. If you swipe your finger at a degree of between 45-90 (accapted as scroll up by the system), Y coordinates change by 3 pixels where as X coordinates can change by 1.. Therefore its not a limitation, it is kind of scroll sensitivity which is 3px.. I've seen other devices can scroll by 1 pixel.
I believe google has set this value to 3 because of rendering issues, since its gonna render the screen 3 times more if it is set to 1. Maybe it is the optimum sensitivity. Lower than 3 pixels may disrupt buttery smoothness but its just a guess..
I hope one dev can lead us the right piece of code where it is set to 3 and we can change it ourselves to test the best..
You guys can try the problem yourself actually by installing the "Multi-touch accuracy check" app from market, which shows the exact pixel of the touch..
Click to expand...
Click to collapse
My two cents...I tried this approach and when you move your finger with about 5 degree you can get 1 pixel change by Y and 3 pixels change by X. And if you move your finder with about 85 degree you get 1 pixel by X and 3 pixels by Y. It seems that hardware can handle the 1 pixel change by X or Y. It looks like the touch events are throttled by the system based on the distance between points.
There is no decent and satisfying answer to this yet .. I'm still waiting for a solution..
This tutorial is on how to lower the resolution of your Dell Venue 8 7840 or pretty much any Android device. You might be asking yourself why would anyone want to change the beautiful 1600x2560 resolution to something 1/4th in quality? The simple answer is because it runs a heck of a lot faster as there isn't as many pixels to push around. The trade-off is that things are fuzzier but that's just the way it is. There are minor glitches here and there with apps that don't behave quite right since they base their scaling off of physical dimensions instead of configured dimensions. In my experience the apps that behave poorly are a very small handful so if you are interested let's get to it.
As always you do this at your own risk I take no responsibility for anything that goes wrong. This is even more critical with the Dell 7840 since you can't install a recovery and instead have to rely on a tethered recovery which takes more time and headaches.
1) Get root for your device (all of the cool things start with root access).
2) Install a terminal emulator such as "Terminal Emulator" or "Termux" from the Play Store
3) Start the terminal program
4) Type "su" and press enter. NOTE: You will need to grant your terminal emulator root access after you press enter.
5) Type "wm size" and press enter. You will see the default resolution of 1600x2560 displayed.
6) Type "wm size 800x1280" and press enter. Honestly, you can try other resolutions however you should try to keep to logical evenly divisible numbers. Ie. if you typed "1080x1920" it would work but be fuzzy since it is 67.5% the size of 1600 horizontally.
7) After you press enter above the screen will become quite large. Don't fret!
8) Type "wm density 160" and press enter. This is half of the 320 DPI that is default for our Dell Venue 8 7840 and should now look normal again except for the navigation buttons and such. Still don't fret!
9) Press the round home button to return to your desktop. You will be shocked with what you see. Again, don't fret!
10) Press and hold the power button and select "Restart". And of course one more prompt...
Upon rebooting you should see what looks like your normal desktop. If you had a custom photo selected as your backdrop it may be 1/4th the normal size but can be fixed by picking another image. As a test, I have included two images that show a "seascape benchmark" at 1600x2560 and again at 800x1280. The higher resolution received 12.4 frames per second playback while the lower resolution returned 33.6. While not four times the speed increase it is a sizable 2.71 times faster. Other benchmarks echo similar results.
I'm interested in what other people are seeing or different resolutions tried. Just be careful before you press the "enter" button because you could accidentally set some insanely low or high number and be unable to fix the problem. Rebooting wont help because this is persistent. As for me, I found that switching to 1200x1920 resolution (density of 290) a more fitting setting and a compromise between 1600x2560 and 800x1280.
If you want to reset the resolution and the DPI simply type from your terminal emulator:
1) "su" and press enter
2) "wm density reset" and press enter
3) "wm size reset" and press enter
What about having it run at 3/4 resolution of 2560x1600?
joeminati said:
What about having it run at 3/4 resolution of 2560x1600?
Click to expand...
Click to collapse
Oooh, I just tried it and it looks good to me. The resolution is 1920x1200 at 3/4th the default resolution and leaving the density at 320. I might lower the density to 300 or some number but will experiment. With the same seascape benchmark v1.1 I am getting 18.2 as the average frames per second. It's better than 12.4 FPS at full default resolution.
Density of 290 seems to work well when the resolution is set to 1920x1200.
Good suggestion.
Haha no thank you for your help with the res changes and such. How did 300 look?
---------- Post added at 08:48 PM ---------- Previous post was at 08:44 PM ----------
I changed it to 1920x1200. Looks good. Runs a bit quicker too. I wonder how this affects the battery.
joeminati said:
Haha no thank you for your help with the res changes and such. How did 300 look?
Click to expand...
Click to collapse
I'm loving running at 1920x1200 the tablet is much snappier and the resolution clarity is minimally less. I settled on density of 290 for mine.
The weird thing is that benchmarks such as AnTuTu 3D visually run much smoother however I get a lower benchmark result. Really weird. but it's what you see that counts in the end.
Just Perfect
Your instructions are clear, concise, and just perfect. The resolution has been way too high, and it has been quite difficult to click the navigation buttons. Using your instructions has helped me greatly!
Hi.
Just tried playing with RemixOS on a media center pc that I have attached to my TV. At the moment this pc is running a regular linux distro, but I thought it could be interesting to see how Android would work for this purpose. Problem is that my TV is an older 1080p 46" that suffers from an old issue where a large part of the screen is placed behind the massive border on the frame. As such, when running at highest resolution, I loose parts of the screen on each side, top and bottom. I found that running 1366x768 fixes this issue.
RemixOS of cause, is running at 1920x1080 by default, just like any other OS that I have had attached. Difference is that I have no way to change this. I tried changing DPI via kernel boot arguments, but this did not work as it should. The calculations for DPI
Code:
sqrt(1366^2 + 768^2)/46
states that the DPI should be set at 35. But doing so makes everything 100 times smaller on the screen.
How can I get this TV working with RemixOS?
Hello Good People
I have Galaxy s10 lite snapdragon version. Pretty expensive one. I love my phone.
Sadly, there are ghost touches at the middle of Screen as yellow circle. No warranty period. I tried apps to disable that portion of screen by overscan but no way.
Is there any way to disable that portion by changing screen resolution like this:
"adb shell wm overscan left,top,right,bottom where left, top, right and bottom are the coordinates upto which screen works.
For example, phone resolution of 480px × 854px, would have had this problem, adb shell wm overscan 0,0,0,839 to disable 15px at the bottom of the screen.
Or adb shell wm size 480x839
"
i got this code from net. It disables at bottom but i need the disabled portion placed at the middle of Screen, which i don't know. Would you please help me with correct code or any other way so that i can use the screen without being bothered by ghost touches. Please please. Help a little.
Minimum width 400 dp
Size6.7 inches, 107.8 cm2 (~87.8% screen-to-body ratio)Resolution1080 x 2400 pixels, 20:9 ratio (~394 ppi density)
Run diagnostics. Is it really a hardware issue?
Clear system cache, hard reboot, and try in safe mode.
No factory reset... not yet.
blackhawk said:
Run diagnostics. Is it really a hardware issue?
Clear system cache, hard reboot, and try in safe mode.
No factory reset... not yet.
Click to expand...
Click to collapse
Done but no way out.