Broken Screen - Nexus 7 Q&A, Help & Troubleshooting

I have searched and have not found anything that helps, maybe some of you can help me out.
Last night I may have had a little too much to drink and when I woke up this morning my screen was cracked on my rooted and unlocked nexus 7. Since the screen is cracked I can't even get in to anything because it doesn't recognize any touch at all. I can't even enter my pin to see the home screen. I wanted to get a nandroid backup. When I hold volume and power I can get to the bootloader screen, but when I select "recovery" It just sits on the Google screen with the unlocked logo at the bottom. So I cant even get a nandroid. Does anyone have any tips for me?
I had the same sort of thing happen way back when I had the tilt and I installed something on my computer that showed the screen from the phone and I was able to use the mouse on the computer since the touchscreen was broken. Do they have anything like this for the Nexus 7?
Or is there maybe an adb command that writes a nandroid to the SD Card?
I don't even know what questions to ask. Any help would be greatly appreciated.

Code:
adb pull <remote> <local> - copy file/dir from device
So if I wanted to grab my TWRP nandroids....
Code:
adb pull /sdcard/TWRP TWRP/.
pull: building file list...
pull: /sdcard/TWRP/BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/boot.emmc.win.m
d5 -> TWRP/./BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/boot.emmc.win.md5
pull: /sdcard/TWRP/BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/boot.emmc.win -
> TWRP/./BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/boot.emmc.win
pull: /sdcard/TWRP/BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/data.ext4.win.m
d5 -> TWRP/./BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/data.ext4.win.md5
pull: /sdcard/TWRP/BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/data.ext4.win -
> TWRP/./BACKUPS/015d2109ce1bfe0e/2012-07-29--21-27-19/data.ext4.win
...

Cracked mine too, this is what I did for it
# I got mine to work this way, I enabled bluetooth, paired a bluetooth keyboard/trackpad combo from RIM (the one they sell for Playbook)
# Both keyboard and trackpad work great, hopefully it will work for you too.
# Pre-requisites: Connect Nexus 7 to the usb of your computer, and make sure adb is installed and is working.
# You are good if the following command returns the ID of your Nexus 7:
./adb devices
# Start Settings
./adb shell am start -n com.android.settings/.Settings
# Send DOWN (to go to Bluetooth)
./adb shell input keyevent 20
# Send ENTER (to get into Bluetooth)
./adb shell input keyevent 66
# Send TAB multiple times (to select the option needed)
./adb shell input keyevent 61
# Send DOWN to move to the option desired
./adb shell input keyevent 20
# ... and so on, you get the idea ...
# For the key codes to send, in case you need something else, I can't post links here atm, but
# look on android documentation (or search in google) for KeyEvent.html and for example
# KEYCODE_ENTER (for the ENTER, but the rest of the key codes are also on that page)
R.

How about a USB mouse/keyboard with an OTG cable as a method of input?

rgheorghe said:
# I got mine to work this way, I enabled bluetooth, paired a bluetooth keyboard/trackpad combo from RIM (the one they sell for Playbook)
# Both keyboard and trackpad work great, hopefully it will work for you too.
# Pre-requisites: Connect Nexus 7 to the usb of your computer, and make sure adb is installed and is working.
# You are good if the following command returns the ID of your Nexus 7:
./adb devices
# Start Settings
./adb shell am start -n com.android.settings/.Settings
# Send DOWN (to go to Bluetooth)
./adb shell input keyevent 20
# Send ENTER (to get into Bluetooth)
./adb shell input keyevent 66
# Send TAB multiple times (to select the option needed)
./adb shell input keyevent 61
# Send DOWN to move to the option desired
./adb shell input keyevent 20
# ... and so on, you get the idea ...
# For the key codes to send, in case you need something else, I can't post links here atm, but
# look on android documentation (or search in google) for KeyEvent.html and for example
# KEYCODE_ENTER (for the ENTER, but the rest of the key codes are also on that page)
R.
Click to expand...
Click to collapse
Me too on the parent poster.
I cracked my screen, and the touch screen doesn't work. For me, I can't get "adb devices" to show my N7. When I go into recovery mode and try to sideload, it does show up there. Is there a procedure to sideload something that will allow me to reboot and back up my device? Or, is there some other way to backup my device?

Related

busybox & Windows command prompt & colors & ls

ok... so, I've loaded my custom ROM and it contains busybox... I do like the extra functions that busybox offers over the stock Android "toolbox", so I don't really want to disable the commands like ls... I'd just like to turn the colors off.
Here's what I've found in my researches...
1) I can always
Code:
ls --color=never
but that is a lot of extra typing that I'm just not willing to do.
2) I can now SSH into my phone with putty and the colors are nice... but if I'm doing this over the cell modem (even EVDO), it's not too responsive (probably has some to do with currently running applications, syncs, and so forth)
3) I can use Droid Explorer and open a command shell from there, and the colors are nice... but Droid Explorer takes a lot longer to load than adb shell and the nice thing about being at my command prompt is if I need to push, pull, or remount (I understand I can always manually remount,rw and remount,ro from any shell, but adb makes it really easy to do with less typing) quickly... I can exit out of the shell, do the command, and go right back into the shell.
4) I can use Better Terminal Emulator on the phone... again... colors nice (I think you're seeing a theme here) but the typing is excruciating for long commands, and God forbid you make 1 typo... for quick things it's cool and to do a command while not at my computer, it's great.
5) If I were running Windows 95 (or maybe even XP), I could just use ansi.sys and do it. However, I've found that the only way ansi.sys works in a command prompt is to use COMMAND.COM and not CMD... plus you have to set CONFIG.NT to "dosonly" mode and include the driver in there... the biggest problem with all that is that adb will NOT run in DOS only mode. I even tried to adb shell from within a Cygwin command prompt (that already has colors enabled) but all the ansi color codes were lost.
So.... Here's my dilemma... I want colors when I'm not coming in through the Windows command prompt and adb shell. However, I want to disable the colors when I'm coming in through adb shell. I would probably settle for a different way to shell in from Windows 7 than the ones listed above.
I think I remember from my freshman year of college when they tried to teach me Unix, that you can set "default" command line switches for applications. For example, if you always wanted ls to do -l, then someplace you could set that as a default. I read on another post (possibly another forum) that somebody suggested editing .profile to do an alias of a command... something like
Code:
alias dir='ls --color=never'
but the problem with that is there's no .profile and there's no home directory for root or shell.
I even read that the standard ls uses an environment variable LS_OPTIONS, but I don't think that the stock Android ls uses it, and I can't get busybox to use it - plus, it'd be a pain to type that in every time I do an adb shell.
Does anybody have any suggestions or tips or any way to do this? If the alias will work, I'd be happy with that. I could then set dir to no color and keep ls with color. I could maybe even remap a command to do a ls -l all the time.
Thanks in advance.
This was what I ended up doing under Windows 7: http://softkube.com/blog/ansi-command-line-colors-under-windows/
This works for me:
Code:
export LS_COLORS=none
ls

my galaxy s not open

Hello,
I install z4mod, and I patch kernal, and it's fine, after that I don't what I do , I do convert to filesystem, after that open till galaxy s come the shutdown.
I use froyo 2.2
please help me?
I can not open phone in download mode or recovery by using 3 buttons.
All I can say is that if you cannot access download mode you're in trouble. :/
so what can I do,
any idea
If you can't get into download mode you may have bricked your phone, the only way to fix it is to make a homemade jig or put your phone in the oven. I'm not sure what your preference may be...
EDIT: In future please do not post in this section just to get your thread more attention .
I use
Z4mod over in I9000 converts data to ext2
and it's not open download mode from begening when it normal mode,
any news,,,,
PaulForde said:
If you can't get into download mode you may have bricked your phone, the only way to fix it is to make a homemade jig or put your phone in the oven. I'm not sure what your preference may be...
EDIT: In future please do not post in this section just to get your thread more attention .
Click to expand...
Click to collapse
NEVER do that nonsense.
dnsp said:
NEVER do that nonsense.
Click to expand...
Click to collapse
yeah, not with the oven
but the trick with the hair blower works and also just recently has rescued another unfortunate soul (not me)
Isn't it possible to get into download mode by adb? I did it a few times, but i can find the tutorial only on a german forum called android-hilfe.de.
It worked for me a few times:
1: Install Kies (probably you did already)
2. install adb for windows ( don't know where to get it, sorry)
3. install odin 1.3
4. open command line and navigate to adb folder
5. start odin
6. place command line-window and odin window so, that you can see both.
7. write in command line: "adb reboot download" and press enter ( starts daemon)
8. remove battery
9. connect the phone to pc using usb cable
10. put the battery in the phone again
11. write in command line: "adb reboot download", DO NOT PRESS ENTER
12. wait until it shows the battery symbol on your phone, indicating that its loading. press power button
13. now look at odin. when the Com-Port becomes yellow, press the enter button in command line, where you wrote "adb reboot download" before.
Now you are in DL-Mode.
Hope it works and someone maybe can give you a better written tutorial with a link to adb. Like i said, it worked for me.
eeegamer said:
Isn't it possible to get into download mode by adb? I did it a few times, but i can find the tutorial only on a german forum called android-hilfe.de.
It worked for me a few times:
1: Install Kies (probably you did already)
2. install adb for windows ( don't know where to get it, sorry)
you mean adbRecovery
3. install odin 1.3
4. open command line and navigate to adb folder
you mean by command prompt, can give me simple,
5. start odin
6. place command line-window and odin window so, that you can see both.
7. write in command line: "adb reboot download" and press enter ( starts daemon)
8. remove battery
9. connect the phone to pc using usb cable
10. put the battery in the phone again
11. write in command line: "adb reboot download", DO NOT PRESS ENTER
12. wait until it shows the battery symbol on your phone, indicating that its loading. press power button
13. now look at odin. when the Com-Port becomes yellow, press the enter button in command line, where you wrote "adb reboot download" before.
Now you are in DL-Mode.
Hope it works and someone maybe can give you a better written tutorial with a link to adb. Like i said, it worked for me.
Click to expand...
Click to collapse
thanx bro,,
Plz plz don't do stuff to your phone if you don't have 3button working.
I beg you.
Apply the 3button patch to get it working then proceed.
thanx eeegamer
but give me
error: device not found
I do what you said
Daneshm90,
the 3 butons not work with me, before the I got this problem, it's from the factory,
almuhajir said:
Daneshm90,
the 3 butons not work with me, before the I got this problem, it's from the factory,
Click to expand...
Click to collapse
Yes but there are patches on this forum that fix that.
Research and the world is yours
Daneshm90 said:
Yes but there are patches on this forum that fix that.
Research and the world is yours
Click to expand...
Click to collapse
please help, my head was broken, from morning I research,
Well firstly your original post is very confusing.
Im assuming english isn't your first tongue, if not plz use something like google translate which might do a better job.
Is ur situation that you want to flash something and don't know how ? Or you flashed something and can't boot into the os and have neither download mode / recovery mode at ur dispense ?
I assume you are saying that now when you are switching on your phone you are not getting startup screen of I9000 and you are getting a small icon showing broken connection with phone and PC.
If this is the case, you can try doing following trick
1. switch off phone and remove battery
2. Plug your USB with phone and PC
3. Start ODIN V3
4. Now press vol down + menu (Centre button) and power on
5. Insert your battery
6. If Odin will show your phone connected you are safe
7. if not try it again (do it 10 times)
Once Odin will detect your phone...flash any stock ROM from forum.
If unfortunately this does not work, then use hot-blower option.
1. Switch off your phone take out battery
2. use hot blower (hair dryer or something else) on the part where battery is placed.
3. Heat till the time you can tolerate...dont worry nothing will happen to Galaxy
4. Now press vol down + menu (Centre button) and power on
5. Insert your battery
6. Your phone should show yellow screen of downloading
Above trick seems insane but believe me it saved me (Thank God)
Galaxy S can not be unbricked (at least easily by any RM) I have faced this situation many times and come over it.
Let me know how it goes.
Before all of these I install OneClickLagFix v2.2, but I got same problem, and I use adbRecovery and I solve the problem.
First I install z4root and i root my device, then I install z4mod and I patch device kernel, after that, I choose converts data to filesystem, then the device rebooted automatically, until show logo GALAXY S, then the screen come black and vibrate allways,
The problem also when I connect it to USB my computer does not get the device,
But in the problem I have it now the adbRecovery not do any thing
Oh you are safe then...
Press vol up + menu + power button
once it shows Samsung logo leave the power button but keep pressing menu + vol up. After 4 seconds leave these button also.
Your phone should go to recovery mode.. then flash any rom..
If this does not work then use below:
1. switch off phone and remove battery
2. Plug your USB with phone and PC
3. Start ODIN V3
4. Now press vol down + menu (Centre button) and power on
5. Insert your battery
6. If Odin will show your phone connected you are safe
7. if not try it again (do it 10 times)
Once Odin will detect your phone...flash any stock ROM from forum.
almuhajir said:
thanx eeegamer
but give me
error: device not found
I do what you said
Click to expand...
Click to collapse
C:\android-sdk-windows\tools>adb ls
Android Debug Bridge version 1.0.26
-d - directs command to the only connected USB device
returns an error if more than one USB device is present.
-e - directs command to the only running emulator.
returns an error if more than one emulator is running.
-s <serial number> - directs command to the USB device or emulator with
the given serial number. Overrides ANDROID_SERIAL
environment variable.
-p <product name or path> - simple product name like 'sooner', or
a relative/absolute path to a product
out directory like 'out/target/product/sooner'.
If -p is not specified, the ANDROID_PRODUCT_OUT
environment variable is used, which must
be an absolute path.
devices - list all connected devices
connect <host>[:<port>] - connect to a device via TCP/IP
Port 5555 is used by default if no port number is specified.
disconnect [<host>[:<port>]] - disconnect from a TCP/IP device.
Port 5555 is used by default if no port number is specified.
Using this ocmmand with no additional arguments
will disconnect from all connected TCP/IP devices.
device commands:
adb push <local> <remote> - copy file/dir to device
adb pull <remote> [<local>] - copy file/dir from device
adb sync [ <directory> ] - copy host->device only if changed
(-l means list but don't copy)
(see 'adb help all')
adb shell - run remote shell interactively
adb shell <command> - run remote shell command
adb emu <command> - run emulator console command
adb logcat [ <filter-spec> ] - View device log
adb forward <local> <remote> - forward socket connections
forward specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
dev:<character device name>
jdwp:<process pid> (remote only)
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-l] [-r] [-s] <file> - push this package file to the device and install it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data)
('-s' means install on SD card instead of internal storage)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories)
adb bugreport - return all information from the device
that should be included in a bug report.
adb help - show this help message
adb version - show version num
DATAOPTS:
(no option) - don't touch the data partition
-w - wipe the data partition
-d - flash the data partition
scripting:
adb wait-for-device - block until device is online
adb start-server - ensure that there is a server running
adb kill-server - kill the server if it is running
adb get-state - prints: offline | bootloader | device
adb get-serialno - prints: <serial-number>
adb status-window - continuously print device status for a specified device
adb remount - remounts the /system partition on the device read-write
adb reboot [bootloader|recovery] - reboots the device, optionally into the bootloader or recovery program
adb reboot-bootloader - reboots the device into the bootloader
adb root - restarts the adbd daemon with root permissions
adb usb - restarts the adbd daemon listening on USB
adb tcpip <port> - restarts the adbd daemon listening on TCP on the specified port
networking:
adb ppp <tty> [parameters] - Run PPP over USB.
Note: you should not automatically start a PPP connection.
<tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
[parameters] - Eg. defaultroute debug dump local notty usepeerdns
adb sync notes: adb sync [ <directory> ]
<localdir> can be interpreted in several ways:
- If <directory> is not specified, both /system and /data partitions will be updated.
- If it is "system" or "data", only the corresponding partition
is updated.
environmental variables:
ADB_TRACE - Print debug information. A comma separated list of the following values
1 or all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport, jdwp
ANDROID_SERIAL - The serial number to connect to. -s takes priority over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these debug tags are printed.
C:\android-sdk-windows\tools>
C:\android-sdk-windows\tools>adb devices
List of devices attached
1000efxxxx758 device
C:\android-sdk-windows\tools>

[Q] Broken Screen, Need to Enable ADB

Hello all!
I have a Nexus 7 with a broken screen and non-functional LCD (i.e., no backlight or any changes visible on the screen). It has CM10.1 (probably a January build) and CWM (I want to say 5.x, but I don't remember). I had a complex screen unlock password, so I stupidly rebooted into recovery and did a factory reset via ADB. However, this caused the debugging flag to be disabled, hence destroying my ability to control the device through ADB.
Questions:
1) Can someone walk me through the procedure to go from the device's "off" state to CWM?
2) Can someone tell me how to re-enable the debugging switch after mounting system?
Thanks!
I am not sure, but I think ADB in recovery mode is always enabled, so why do you want to enable ADB for the "normal" mode? You can do everything in recovery mode, too.
It works!
AndDiSa said:
I am not sure, but I think ADB in recovery mode is always enabled, so why do you want to enable ADB for the "normal" mode? You can do everything in recovery mode, too.
Click to expand...
Click to collapse
You can do a lot of things in recovery mode, except for setting up applications once they are installed. I wanted to set up a VNC server on that tablet so I can see the screen and click on whatever, and eventually use the device's sensors and antennas for other reasons. On top of that, I was having the stupid issue of not being able to go into recovery again (since you need to scroll through a menu before reaching the "Recovery" option on the Nexus 7).
Anyways, I got it to work now:
To go into "Recovery" mode and enable ADB inside the ROM (I had CM10.1 installed, but it shouldn't matter for most JB roms):
1) Turn the tablet off or check that it is off. Since my screen was broken, I ended up opening it and unplugging/replugging the battery
2) Vol Down + Power button, wait for ~5 seconds
3) Press Vol Down twice, and then press Power
4) On computer, go to "adb shell"
5) Enter the following commands:
Code:
mount /system
mount /data
echo persist.service.adb.enable=1 >> /system/build.prop
cp /data/data/com.android.providers.settings/databases/settings.db /data/data/com.android.providers.settings/databases/settings.db.old
9) Exit adb, enter command:
Code:
adb pull /data/data/com.android.providers.settings/databases/settings.db.old ./settings.db
10) Using any SQL database editor, modify settings.db to change "adb_enabled" to 1
11) Save, exit, and enter command:
Code:
adb push settings.db /data/data/com.android.providers.settings/databases/settings.db
Now, you can reboot the device (adb reboot). After a few seconds, you should be able to capture screenshots.
I wrote a little bash script to automate the process, so I can get a (somewhat) moving image (at best, I got 4 FPS )
Code:
while true; do
adb shell screencap -p | sed 's/\r$//' > screen2.png
if [ -s screen2.png ]
then
cp screen2.png screen.png
fi
done
Note that it is "buffered" -- if adb fails for any reason, the code will continue until adb is able to get another image.
At this point, you can start adb shell, and then use the following command to send taps, swipes, keyevents, or text:
Code:
input text <string>
input keyevent <key code number or name>
input tap <x> <y>
input swipe <x1> <y1> <x2> <y2>
Doing this, I was able to get all the way to installing a VNC server. I used Droid VNC Server:
https://play.google.com/store/apps/details?id=org.onaips.vnc&hl=en
Of course, you can choose whatever server you want. Just configure it correctly, and then you can stop the script and access the tablet remotely. Also, remember to disable the screen lock -- it's really annoying to have to swipe on the lockscreen using the command each time.
At this point, I've gone ahead and enabled ADB over WiFi, allowing me to access virtually everything for this device from any location.
Time to build something with my (severely handicapped) Nexus 7!
Thank you for this interesting post!
I wanted to suggest a similar process, but I first I wanted to understand better, what you wanted to reach. Yeah, ADB is a very powerful tool, I do not want to miss it.

self-contained sideloading, adb stupid tricks version. no PC required.

(as dhayman11 pointed out, "unknown sources" is in security settings, not developer options. but no luck anyway, like most of the settings app, it also crashes if you try to set it.)
instead, here is an extremely stupid idea that just came to me.
1. turn on adb wifi debugging
2. sideload your favorite terminal, e.g.
http://jackpal.github.com/Android-Terminal-Emulator/downloads/Term.apk
(ok I lied. you will need your desktop/laptop/phone/whatever, exactly 1 time. step 2 will be skipped forever after that 1 time.)
3. fire up said terminal from the settings->applications menu.
4. (LOL!)
$ adb devices
4a. if the above command shows no devices,
$ adb connect localhost
and proceed to step 5.
4b. if the command shows exactly 1 device, e.g. "emulator-5554", proceed to step 5.
4c. if the command shows more than 1 device (wtf?!) then you will need to specify a device of your choice ("-s somedevice") in every subsequent adb command, e.g.
$ adb -s emulator-5554 <whatever>
$ adb -s localhost:5555 <whatever>
etc.
5. e.g.
$ adb install /sdcard/Download/foobar.apk
$ adb shell
$ adb uninstall -k com.something.somethingelse
etc. etc.
6. profit? profit!
ok here is a slightly-less incoherent form of the senior-moment-reply I posted earlier
several days ago it occurred to me to alternatively use sshd for terminal access, because:
-a) I feel a little unsafe leaving adb wifi enabled all the time (ok it's only a small thing to turn it on and off, but still) - and for security reasons there is no way to enable/disable it programmatically e.g. from a script/shell/terminal/app (well theoretically this is not exactly true, but practically it is)
-2) some people (i.e. me) would like to do shell/terminal remotely sometimes, rather than on the AFTV (and other people don't have/want a keyboard)
ssh access makes a great alternative to Term.apk, but the problem is:
- Term.apk and/or (pick your favorite android ssh server) don't have permission to run e.g. "pm install foo.apk" - it will fail. (btw 'pm' is a great command, take a look sometime at all the options. it shares a lot of functions as the adb command itself. 'am' is another fun command...)
- so, the hilarious workaround of enabling adb wifi, "adb connect", and then finally "adb shell" or "adb install" etc., is still required. (b/c the adb user is in the 'shell' group, among others - giving it permission to run /system/bin/pm) - oh well.
for random reference:
Code:
127|[email protected]:/ $ id
uid=2000(shell) gid=2000(shell) groups=1004(input),1007(log),1009(mount),1011(adb),1015(sdcard_rw),1028(sdcard_r),3001(net_bt_admin),3002(net_bt),3003(inet),3006(net_bw_stats)
[email protected]:/ $ exit
[email protected]:/ $ id
uid=10009(app_9) gid=10009(app_9) groups=1015(sdcard_rw),1028,3003(inet),50009(app_40009)
(also note it appears the adb shell user might possibly have 'mount' abilities, but since the /dev/block/sd* nodes permissions' are really locked up, who knows...)

search for all files with the string "abcd" in their names (over adb)

Hello Forum
I would like to search for all files with the string "friendly" in their names over ADB on an USB attached mobile phone (LineageOS 14.1).
(to make sure that i can connect to the mobile phone over adb
[email protected] ~/Desktop/adb $ sudo adb devices
List of devices attached
AB13560G3Z device
I tried many commands like 'adb shell ls -1R | grep friendly', 'adb shell find / name friendly', but no luck
What am I doing wrong?
Any feedback is appreciated very much!
Joe
PS 1:
If possible, without installing additional search-apps on the mobile-phone
PS 2:
The phone is rooted
PS 3:
(as an example, that there is a file with the textstring "friendly" on my mobile phone
[email protected] ~/Desktop/adb $ adb shell pm list packages -f -3
package:/data/app/de.robv.android.xposed.installer-1/base.apk=de.robv.android.xposed.installer
package:/data/app/org.secuso.privacyfriendlynetmonitor-1/base.apk=org.secuso.privacyfriendlynetmonitor

Categories

Resources