5,600,571 Members 33,031 Now Online
XDA Developers Android and Mobile Development Forum

Droid 4 problem - no screen or white scrambled screen

Tip us?
 
ShnbFire
Old
(Last edited by ApriliaM3; 7th December 2013 at 02:24 PM.)
#1  
Junior Member - OP
Thanks Meter 0
Posts: 2
Join Date: Dec 2013
Default Droid 4 problem - no screen or white scrambled screen

Hey so just recently I have been having a hard time trying to get my phone to work again. This one morning I wake up to find my Android screen with a grey and white screen (picture in attachment) it looks somewhat like that but vertical.

Anyways I have tried turning off the phone but still get this screen. I can however get back to both the AP fastboot screen just perfectly. My warranty JUST ran out a month ago and they say I can send it in for 187 bucks but honestly, it seems as though its not a hardware problem and more of a software issue. Please help, I dont want to have to give Verizon my money for a software issue i can fix myself lol
Attached Thumbnails
Click image for larger version

Name:	mimo_test_1.gif
Views:	62
Size:	2.6 KB
ID:	2429317  
 
kwyrt
Old
#2  
kwyrt's Avatar
Senior Member
Thanks Meter 197
Posts: 668
Join Date: Apr 2011
Location: Columbus
Quote:
Originally Posted by ShnbFire View Post
Hey so just recently I have been having a hard time trying to get my phone to work again. This one morning I wake up to find my Android screen with a grey and white screen (picture in attachment) it looks somewhat like that but vertical.

Anyways I have tried turning off the phone but still get this screen. I can however get back to both the AP fastboot screen just perfectly. My warranty JUST ran out a month ago and they say I can send it in for 187 bucks but honestly, it seems as though its not a hardware problem and more of a software issue. Please help, I dont want to have to give Verizon my money for a software issue i can fix myself lol
If you can get to the fastboot screen have you tried fastbooting the stock firmware? Try using this utility: http://forum.xda-developers.com/show....php?t=2207384. Use option 2 if you don't want to wipe out your data.
 
ShnbFire
Old
#3  
Junior Member - OP
Thanks Meter 0
Posts: 2
Join Date: Dec 2013
Quote:
Originally Posted by kwyrt View Post
If you can get to the fastboot screen have you tried fastbooting the stock firmware? Try using this utility: http://forum.xda-developers.com/show....php?t=2207384. Use option 2 if you don't want to wipe out your data.
Si I tried that option and I still get the same screen x_x
 
Hawkje
Old
(Last edited by Hawkje; 6th December 2013 at 12:46 PM.) Reason: Clarification
#4  
Junior Member
Thanks Meter 1
Posts: 20
Join Date: Sep 2008
It seems I got the exact same problem as described in this post, and the issues started only recently. To give some more information, these are the phases the phone went through.

It started with the phone acting like the proximity sensor was activated, the screen would go out at random times or turn off and on. I got the idea it was the sensor next to the right of the Motorola logo, there actually was a scratch right on this sensor and I thought this was the problem. When I would put my thumb over this sensor the phone would work normally as long as I kept it covered, alternatively the phone would work normally when I would slide open the phone.

The next part was that the screen no longer would come on when I pressed the power button, it would activate some part of the backlight, but the screen would stay black. Rebooting the phone would help, the Motorola logo showed fine, then the Droid logo came on fine and also made sound. But the moment where it should show the SIM lock screen in Portrait mode it did not show anything at all anymore. Sliding the keyboard open resulted in showing the SIM lock screen, however it would not take any input from the keyboard at that moment, so I could not unlock the phone.

When trying the Droid@Screen application I could view the screen perfectly on my laptop, so the phone was still working, but it would simply not show anything on the screen. Touching the screen on the phone would results in buttons pressed on the Droid@Screen screenshots, so I could unlock my phone this way. So even though the screen would not show anything the touchscreen would still work.

Sadly enough the current status is that the screen gives the same image as shown in the first post of this thread (it doesn't even show the Motorola logo anymore), so I can no longer use the phone and also Droid@Screen does not show any screenshots anymore. However the phone is still being recognized by the program (and I guess ADB).

I got the feeling the problems are a combination of some hardware problem and the software reacting very badly on it. I originally had the idea to disable the proximity sensor somehow by flashing a different rom (running stock now). I am not sure if that is still possible, but I will look into it. Any advice would be appreciated.
 
sean9721
Old
(Last edited by sean9721; 6th December 2013 at 10:38 AM.)
#5  
Junior Member
Thanks Meter 2
Posts: 20
Join Date: Jun 2011
Location: Newnan, GA
Alright guys, I have the same exact problem. Except I am not able to even get to the Motorola screen. I have some pictures that I am wanting to get off the phone. When I plug it up to my computer, I get the little ding that the phone is connected, but it doesn't show up under my drives. I'm not sure what to do at this point. I have my old D3 I can use, but I'm more concerned about trying to get my information off the D4. I can't get into the boot menu at all. As soon at I plug the phone up from being dead it goes to the static screen.
 
Hawkje
Old
(Last edited by Hawkje; 7th December 2013 at 12:24 PM.) Reason: Added logcat is *:I info
#6  
Junior Member
Thanks Meter 1
Posts: 20
Join Date: Sep 2008
At this moment my phone went on to the next stage, it doesn't show anything at all anymore. Some boots I get the white scrambled screen from the start, but now it is just a black screen. However, I can still connect to it through adb, but the phone is not rooted so I am limited with what I can do with it.

Code:
> adb shell getprop ro.build.description
cdma_maserati_mmi-user 4.1.2 9.8.2O-72_VZW-18 19 release-keys
Code:
shell@cdma_maserati:/ $ lsmod
lsmod
pvrsrvkm_sgx540_120 321639 0 - Live 0x00000000
btwilink 3478 0 - Live 0x00000000
wl12xx 136026 0 - Live 0x00000000
mac80211 220250 1 wl12xx, Live 0x00000000
cfg80211 163432 2 wl12xx,mac80211, Live 0x00000000
compat 2546 0 - Live 0x00000000
evfwd 4666 0 - Live 0x00000000
cifs 254412 0 - Live 0x00000000
moto_crypto 95621 1 - Live 0x00000000
The log file (adb logcat -s *:E) shows me the following:

Code:
--------- beginning of /dev/log/main
12-07 01:22:58.125  7534  7535 E FramebufferNativeWindow: couldn't open framebuffer HAL (Not a typewriter)
12-07 01:22:58.125  7534  7535 E FramebufferNativeWindow: couldn't open gralloc HAL (Not a typewriter)
12-07 01:22:58.125  7534  7535 E SurfaceFlinger: Display subsystem failed to initialize. check logs. exiting...
12-07 01:22:59.671  7554  7554 E PhonePolicy: Could not preload class for phone policy: com.android.internal.policy.impl.PhoneWindow$ContextMenuCallback
12-07 01:23:03.289  7555  7556 E FramebufferNativeWindow: couldn't open framebuffer HAL (Not a typewriter)
12-07 01:23:03.289  7555  7556 E FramebufferNativeWindow: couldn't open gralloc HAL (Not a typewriter)
12-07 01:23:03.289  7555  7556 E SurfaceFlinger: Display subsystem failed to initialize. check logs. exiting...
12-07 01:23:04.828  7572  7572 E PhonePolicy: Could not preload class for phone policy: com.android.internal.policy.impl.PhoneWindow$ContextMenuCallback
Snippet from adb logcat -s *:I):

Code:
12-07 13:18:19.093  6237  6237 I ServiceManager: Waiting for service SurfaceFlinger...
12-07 13:18:19.093  5822  5822 I ServiceManager: Waiting for service SurfaceFlinger...
12-07 13:18:19.117  5799  5799 I ServiceManager: Waiting for service SurfaceFlinger...
12-07 13:18:19.125  5741  5741 I ServiceManager: Waiting for service SurfaceFlinger...
12-07 13:18:19.125  6064  6064 I ServiceManager: Waiting for service SurfaceFlinger...
12-07 13:18:19.140  4752  4752 I ServiceManager: Waiting for service SurfaceFlinger...

I do know it is a phone and not a typewriter The SurfaceFlinger error might be where the problem is. I am however out of idea's at this moment. If I could get root access somehow I could recover my data by imaging the 'disk'.
 
Hawkje
Old
#7  
Junior Member
Thanks Meter 1
Posts: 20
Join Date: Sep 2008
Like suggested in this thread I tried fastbooting to the stock firmware (http://forum.xda-developers.com/show....php?t=2207384, option 2). This did not fix the issue for me neither.

Before trying the fastboot stufff, be sure to have a full battery (the battery might keep draining because of the constant white scrambled screen). To check the battery status with adb use:
Code:
adb shell cat /sys/class/power_supply/battery/capacity
I looked in to using the exploit by Dan Rosenberg on this device (http://vulnfactory.org/blog/2012/02/...ty-experiment/ ) However this exploit needs a device which actually boots. Which in this case is not happening, so this exploit does not give root permissions.

It seems that the Droid 4 is running Linux Kernal 3.0.8
Code:
 Linux localhost 3.0.8-g473e586 #1 SMP PREEMPT Fri Feb 8 13:28:58 CST 2013 armv7l GNU/Linux
We might want to look in to finding a kernel exploit to escalate privileges on the adb shell.
 
Hawkje
Old
(Last edited by Hawkje; 12th December 2013 at 12:17 AM.) Reason: Added some statistics
#8  
Junior Member
Thanks Meter 1
Posts: 20
Join Date: Sep 2008
Since the phone was not working anymore my focus was to recover my data from it. However, the problem I was facing was that I could not access the user files on the phone since I did not have root rights. The solution I sought for was getting root access on the Droid4 by exploiting a vulnerability. Because I only had adb access to a not fully started system the exploit named earlier in this thread did not work so I had to look for something like a kernel exploit. I luckily had some help from some friends, and they pointed me to the following exploit which worked: h t t p s : / / github.com/android-rooting-tools/android_run_root_shell (since I have less than 10 posts, I can not post links)

To use the exploit, compile the source code and copy the file to the Droid4 (also copy the device.db file):
Code:
adb push run_root_shell /data/local/tmp/run_root_shell
adb push device.db /data/local/tmp/device.db
You can copy the files to the /data/local/tmp directory on the phone (you can write here as a user without root rights), make sure to make the file executable and then run the exploit. The exploit can find all the values it needs itself (slow) or get them from the device.db database (fast), for a single use root exploit the slow approach will do, but if you need to use the exploit a couple of times I recommend to use the device.db. The current device.db on the site does not contain the Droid4, but this information will be submitted to the git system, so it will be included in the near future.

In the mean time you can insert the following information in to the device.db file yourself.
Code:
insert into supported_devices(device_id, device, build_id, check_property_name, check_property_value) values(185, 'DROID4', '9.8.2O-72_VZW-18', null, null);
  insert into device_address(device_id, name, value) values(185, 'prepare_kernel_cred', 3221997068);
  insert into device_address(device_id, name, value) values(185, 'commit_creds', 3221995156);
  insert into device_address(device_id, name, value) values(185, 'remap_pfn_range', 3222276972);
  insert into device_address(device_id, name, value) values(185, 'ptmx_fops', 3230673008);
Output of the slow version of the exploit (without the information added to device.db):
Code:
127|shell@cdma_maserati:/data/local/tmp $ ./run_root_shell
./run_root_shell

Device detected: DROID4 (9.8.2O-72_VZW-18)

Try to find address in memory...
Attempt msm_cameraconfig exploit...
Detected kernel physical address at 0x80008000 form iomem

Attempt fb_mem exploit...
Detected kernel physical address at 0x80008000 form iomem
Failed to open /dev/graphics/fb0 due to No such file or directory
You need to manage to get remap_pfn_range addresses.

Try copying kernel memory... It will take a long time.
Attempt get_user exploit...

Search address in memroy...
Using kallsyms_in_memroy...
  prepare_kernel_cred = 0xc00bc60c
  commit_creds = 0xc00bbe94
  ptmx_fops = 0xc0902870
Attempt acdb exploit...
DROID4 (9.8.2O-72_VZW-18) is not supported.

Attempt fj_hdcp exploit...

Attempt msm_cameraconfig exploit...
Detected kernel physical address at 0x80008000 form iomem

Attempt put_user exploit...
root@cdma_maserati:/data/local/tmp # id
uid=0(root) gid=0(root)
The fast version of the exploit (with the information added to device.db):
Code:
127|shell@cdma_maserati:/data/local/tmp $ ./run_root_shell
./run_root_shell

Device detected: DROID4 (9.8.2O-72_VZW-18)

Attempt acdb exploit...
DROID4 (9.8.2O-72_VZW-18) is not supported.

Attempt fj_hdcp exploit...

Attempt msm_cameraconfig exploit...
Detected kernel physical address at 0x80008000 form iomem

Attempt put_user exploit...
root@cdma_maserati:/data/local/tmp # id
id
uid=0(root) gid=0(root)
Now we have root access we can access the partitions we want, to easily download the partitions through adb (on Linux) you can change the rights to the partitions with the following command:
Code:
chmod 777 /dev/block/mmc*
With the non-root user now having access to the partitions, you can download them with the following commands.
For the userdata partition:
Code:
./adb pull /dev/block/mmcblk1p24
For the full disk inside the phone:
Code:
./adb pull /dev/block/mmcblk1
For the sdcard it will be:
Code:
./adb pull /dev/block/mmcblk0
This pull request will take a while, statistics from downloading the userdata partition and whole disk on my machine:
Code:
755 KB/s (3279945728 bytes in 4239.895s)
414 KB/s (15938355200 bytes in 37526.406s)
To read the information from the partitions you downloaded you can, among other things, mount them in Linux or use a tool like FTK Imager on Windows.

I would like to thank and credit both blasty and ius for helping me out and finding the right exploit plus device.db values. In case anyone needs the compiled exploit and updated device.db file, just send me a PM and I will provide it to you.
 
doener
Old
#9  
Junior Member
Thanks Meter 6
Posts: 29
Join Date: Dec 2013
Default Has someone found out what created the trouble?

Hello Guys, im also a Droid 4 user. I have seen such problems already before on a Xperia Mini Pro. I think this is a slider issue or a bad manufacturer thing. When i inspected the issue of the Mini Pro, I have found that the flex cable between the device and screen was broken. Probably because it was carried in the trouser pocket (The space between screen and main device where to low an the force broke the LCD Flex Cable between them). This can't happen on the PopUp sliders like the N97 / E7 and N950 because the flex cable dosen't need to move that much and is way better folded.

Maybe because the phone dosen't see a screen it also cant initialise the Frame-buffer with the screen size (the screen is not telling the size anymore).

I would have a look at the flex cable, a new costs about 20 $ at ebay but as you see on ifixit.com the Droid 4 is not that good repairable.
Success!
 
Hawkje
Old
#10  
Junior Member
Thanks Meter 1
Posts: 20
Join Date: Sep 2008
The broken flex-cable theory actually makes sense, I had this problem in the past with Samsung clamshell phones, and I actually hoped this issue would not exist anymore in the current day. It might also explain the phone slowly degrading more and more until it doesn't do anything at all anymore with the screen, it would fit in with the cable slowly wearing more and more.

I will try to check the cable to see if anything is wrong with it, however I would expect more people to run in to this problem, and till now I only counted 3 people who are all in this thread.

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes