[SOLVED][NST/G] USB debugging puzzle - Nook Touch General

Yes, another puzzle
How ADB works is supposed to be baked into init.rc in uRamdisk. I can see something like this in the scripts for NookManager, although there is no indication that ADB is set up for TCP, just that an unsecure connection via ADB is enabled:
Code:
sed -i \
-e's/^ro.secure=1/ro.secure=0/' \
-e's/^persist.service.adb.enable=0/persist.service.adb.enable=1/' \
/tmp/ramdisk/default.prop
# Verify that the patched lines exist in default.prop
grep -q '^ro.secure=0' /tmp/ramdisk/default.prop && \
grep -q '^persist.service.adb.enable=1' /tmp/ramdisk/default.prop && \
PROP_PATCHED=1
[ -f /tmp/ramdisk/init.rc.orig ] || cp /tmp/ramdisk/default.prop /tmp/ramdisk/init.rc.orig
# Comment out the " disabled" line after "service adb"
# Comment out the "on property:persist.service.adb*" blocks entirely
sed -i \
-e '/^service adbd/{ N s/\(service adbd.*\n\) /\1#MOD# / }' \
-e '/^on property:persist.service.adb.enable/{ N s/^\(.*\)\n \(.*\)/#MOD#\1\n#MOD# \2/}' \
/tmp/ramdisk/init.rc
# Verify that the patched lines exist in init.rc
grep -q '#MOD#on property:persist' /tmp/ramdisk/init.rc && \
grep -q '#MOD# disabled' /tmp/ramdisk/init.rc && \
INIT_PATCHED=1
My last item in the new Developer Settings section of a revamped Settings app is USB debugging. In the hidden Development section of the original Settings app there is a checkbox option for USB debugging, but it does not seem to do anything--at least not consistently. But I have had ADB over USB working on and off for the past few days. I just can't narrow down the conditions.
To my knowledge there are two places where changes occur if USB debugging is checked. One is in the "secure" section of settings.db. There a value for adb_enable is either 0 or 1. Checking USB debugging changes the value to 1. Also, in data/property/persist.service.adb.enable, there is a value of either 0 or 1. Checking USB debugging changes the value to 1.
Of course, these could just be artifacts for other changes that I have not detected.
What is certain is that I have managed to restart ADB by "adb usb" on occasion, after meddling with various things, and it has worked. The setting (whatever it is) persists until a reboot. ADB via WiFi still works (not at the same time, of course).
But I can't seem to get at the key to what makes it work and what does not.
Suggestions?

Progress...kinda
OK, so now I have a reproducible result. I'm using ADB Konnect for WiFi but I suspect other similar apps will do. Here's the sequence:
1. Connect to WiFi
2. Start ADB Konnect (turn it ON)
3. From the command console or however you do it, connect to the NST via ADB (using the device IP address)
4. Once connected type 'adb usb'
(should say restarting)
5. Stop/turn OFF ADB Konnect
6. Connect device to PC with USB cable
7. Type 'adb devices'
You should see your device (some long number string) as connected. This access to USB debugging should persist until a reboot or power cycle.
But HOW? And can all the folderol around this process be trimmed back or (better) converted into a series of shell commands?

Got it!!!!
Easy-peasy....when you know what to do:
Code:
adb shell
#setprop service.adb.tcp.port -1
#stop adbd
#start adbd
This starts USB debugging and still allows ADB via WiFi when wanted. The setting persists until a reboot or power cycle. And...it can all be done by a series of shell commands hidden behind a simple screen tap

@nmyshkin
Oops, late to this party.
adb first looks for service.adb.tcp.port, then for persist.adb.tcp.port
Code:
setprop persist.adb.tcp.port 5555

Renate NST said:
@nmyshkin
Oops, late to this party.
adb first looks for service.adb.tcp.port, then for persist.adb.tcp.port
Code:
setprop persist.adb.tcp.port 5555
Click to expand...
Click to collapse
Yes, this is the default state the device is left in by rooting via NookManager. The good news is that by setting the port to -1 (and restarting adbd), you can use adb via USB as desired while WiFi apps like ADBKonnect will also continue to work--at least until a reboot or power cycle (which for an NST can be a long time!).

Erm, maybe I didn't make my point or maybe you got it.
If you want persistency (and be able to switch modes) don't set service.adb.tcp.port to anything.
Make sure it's not set in init.rc or any other .rc
Use only persist.adb.tcp.port
Setting it to zero (or a negative number) will make adb use only USB
Of course, not having this set either will set it to USB also.
Me, I don't use adb over WiFI.
It would be to easy to forget about it and then connect to some random WiFi which hackers would portscan.

Related

[Q] Using a DROID X and MAC together is tough -- can someone help?

Too many threads... too many sites and PC options.
Here's my situation:
Droid X
Used the leak update... running 2.2 now.
Use a MAC. And have Terminal app on DX.
Have SBF file for 2.1 stock, have ZIP files of rooted 2.2's
Dont have custom recovery.
Dont care much about warranty or OTA... just want to be able to apply ZIPs.
I need to somehow either root my DX with Mac or Terminal app. Or flash the SBF to bring things back to 2.1.
Not sure what to do??? Please please help.
I am not familiar with terminal commands...so if you leave instructions that would be great.
-Roman
You follow the same ADB commands, more or less. Why not try something like Universal AndRoot though? Then you could just skip over it.
But, if you need to sbf, I would *think* you follow the Linux instructions.
1) download sbf_flash & sbf file
Code:
cd directory/where/these/are/located
./sbf_flash SBFfileLOCATION
The only way to SBF is to run windows through bootcamp or this http://www.droidforums.net/forum/droid-hacks/38671-flashing-sbf-mac.html . I am in the same boat as you luckily my girlfriend has a dell running Windows. You should also be able to root 2.2 using the Droid 2 method posted in this section http://forum.xda-developers.com/showthread.php?t=766767. I assume you have the SDK downloaded already? The Linux directions does not work for Mac.
x.v_ said:
You follow the same ADB commands, more or less. Why not try something like Universal AndRoot though? Then you could just skip over it.
I TRIED THAT, BUT THERE IS SOME ERROR THAT POPS UP... CAN'T DO IT. 2.2 ISN'T SUPPORTED... I THINK IT'S JUST FOR 2.1..
But, if you need to sbf, I would *think* you follow the Linux instructions.
1) download sbf_flash & sbf file
Code:
cd directory/where/these/are/located
./sbf_flash SBFfileLOCATION
Click to expand...
Click to collapse
SO THAT EASY? JUST TWO COMMAND LINES?
So, if I put the SBF on my desktop it would be:
cd desktop (enter)
./sbf_flash fullSBFfilename.sbf (enter)
???????
romanvail said:
SO THAT EASY? JUST TWO COMMAND LINES?
So, if I put the SBF on my desktop it would be:
cd desktop (enter)
./sbf_flash fullSBFfilename.sbf (enter)
???????
Click to expand...
Click to collapse
Running ADB with Mac OSX and therefore rooting with the mac is EASY. Just make sure you have the Android SDK installed on your Mac. Make sure in your .bash_profile you have the path set to the tools directory of your SDK folder.
Since I can't tell if you have all this down, I'll give you the instructions on setting up adb on the mac (using terminal), then give you the directions I followed on rooting my Droid X from OSX (I am running 2.2 leaked).
Essentially follow these instructions (taken from tjrocks91 on droidforum... I'd link, but I am not yet allowed to post outside links on this forum):
1. Download the Android SDK for Mac OSX. (google it)
2. Extract the zip file to any destination on your Mac. *Remember its path!*
In the AndroidSDK folder, there will be a folder named “tools”. We will be adding this folder to the path on Mac OSX. For this example, extract to your home folder (the folder that contains the desktop, documents, etc. folders)
3. To do this click on Finder > Go > Utilities > Terminal.
4. Type in without quotations “cd ~/”
5. Next, type "touch .bash_profile" to create your new bash or otherwise known path file.
6. Next, type "open -e .bash_profile" to open it in TextEdit. A TextEdit window will open, copy and past this into that window, substituting <username> for your username on OSX:
export PATH=${PATH}:/Users/<username>/AndroidSDK/tools
7. Save the file and close the window.
8. Repeat steps 5 through 7, but replace .bash_profile with ".bashrc" (without the quotes)
9. ADB should be ready to go. Make sure that your Droid X is set to "charge only" when connected via USB, and that you have debug mode set to on in your Android settings (settings>applications>development> USB Debugging)
10. In terminal, type (without the quotes): "adb devices". You should see a return that gives a list of devices attached. If the daemon wasn't started yet, this will do it. After that, type "adb shell" to enter adb.
11. After that, the adb commands are ALL the same on any platform, just make adjustments for different file systems when moving things TO your phone when using the command prompt (and not in the adb shell itself, but using adb commands). OSX follows unix/linux file structure, but not always the linux/unix file arrangement (but pretty darn close, since it is a Unix BSD GUI).
Now onto rooting your DX running 2.2. I've attached the file I used. It is a .rar files, so you will need a .rar extractor. I found a nice free one on the net called UnrarX. Google it, get it. Its free, it works. I will give instructions assuming you have them. These instructions come from karnovaran here on XDA. THey are for the droid 2, but work for the Droid X as well. i will translate them into instructions that can be followed verbatim on Mac (as the instructions he gave are meant for those doing this through the command prompt in windows).
1. Extract the contents of the attached file to your sdk tools folder
2. Open a terminal window and navigate to your sdk tools folder. if you put the sdk folder in your home folder, then the command and path you should enter from the terminal should be something like this:
cd AndroidSDK/tools
3. Now the process is as follows (follow EXACTLY, making sure you are faithful to YOUR file paths). I'm copying almost verbatim from karnovaran:
- adb devices (to verify the connection)
- adb push Superuser.apk /sdcard/Superuser.apk
- adb push su /sdcard/su
- adb push busybox /sdcard/busybox
- adb push rageagainstthecage-arm5.bin /data/local/tmp/rageagainstthecage-arm5.bin
- adb shell
- cd data/local/tmp
- chmod 0755 rageagainstthecage-arm5.bin
- ./rageagainstthecage-arm5.bin
- let the process run until it 'kicks' you out (this WILL take a while, so don't TOUCH ANYTHING on your phone. Just go grab a beer and relax until the proces kicks you back out to the tools folder in terminal)
- adb kill-server
- cd <wherever-your-sdk-tools-folder-is>
- adb devices (to verify the connection)
- adb shell (you should now have a # prompt, if not return to ./rage step above)
- mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system
- cp /sdcard/Superuser.apk /system/app/Superuser.apk
- cp /sdcard/su /system/bin/su
- cp /sdcard/busybox /system/bin/busybox
- chmod 4755 /system/bin/su
- chmod 4755 /system/bin/busybox
- mount -o ro,remount -t ext3 /dev/block/mmcblk1p21 /system
- exit
- exit
This got me root on my DX and I did this on OSX no problem. The only PC I have that is functional is my laptop for work and because of the content on it and security procedures, though I could do android hacking with it, I will not, so I'm stuck with using my Mac. Thing is that it really is NOT hard. Commands are almost exactly as in Linux/Unix, and OSX terminal runs bash, which is quite versatile (more commands than busybox, iirc) in and of itself. And getting mac root access is bloody easy using sudo if you need it (otherwise, don't use it).
I hope this helps. Have fun.
many steps.... but will go slowly.
Thank you!!!!
Many steps, but they work!
SirBrass said:
Running ADB with Mac OSX and therefore rooting with the mac is EASY. Just make sure you have the Android SDK installed on your Mac. Make sure in your .bash_profile you have the path set to the tools directory of your SDK folder.
Since I can't tell if you have all this down, I'll give you the instructions on setting up adb on the mac (using terminal), then give you the directions I followed on rooting my Droid X from OSX (I am running 2.2 leaked).
Essentially follow these instructions (taken from tjrocks91 on droidforum... I'd link, but I am not yet allowed to post outside links on this forum):
1. Download the Android SDK for Mac OSX. (google it)
2. Extract the zip file to any destination on your Mac. *Remember its path!*
In the AndroidSDK folder, there will be a folder named “tools”. We will be adding this folder to the path on Mac OSX. For this example, extract to your home folder (the folder that contains the desktop, documents, etc. folders)
3. To do this click on Finder > Go > Utilities > Terminal.
4. Type in without quotations “cd ~/”
5. Next, type "touch .bash_profile" to create your new bash or otherwise known path file.
6. Next, type "open -e .bash_profile" to open it in TextEdit. A TextEdit window will open, copy and past this into that window, substituting <username> for your username on OSX:
export PATH=${PATH}:/Users/<username>/AndroidSDK/tools
7. Save the file and close the window.
8. Repeat steps 5 through 7, but replace .bash_profile with ".bashrc" (without the quotes)
9. ADB should be ready to go. Make sure that your Droid X is set to "charge only" when connected via USB, and that you have debug mode set to on in your Android settings (settings>applications>development> USB Debugging)
10. In terminal, type (without the quotes): "adb devices". You should see a return that gives a list of devices attached. If the daemon wasn't started yet, this will do it. After that, type "adb shell" to enter adb.
Last login: Tue Sep 14 09:12:34 on console
Roman-Vails-Computer:~ romanvail$ cd ~/
Roman-Vails-Computer:~ romanvail$ touch .bash_profile
Roman-Vails-Computer:~ romanvail$ open -e .bash_profile
Roman-Vails-Computer:~ romanvail$ touch .bashrc
Roman-Vails-Computer:~ romanvail$ open -e .bashrc
Roman-Vails-Computer:~ romanvail$ adb devices
-bash: adb: command not found
Roman-Vails-Computer:~ romanvail$
*****DOESNT WORK FOR ME*****
Click to expand...
Click to collapse
Do you have the path to adb set properly?
Sent from my DROIDX using XDA App
SirBrass said:
Do you have the path to adb set properly?
Sent from my DROIDX using XDA App
Click to expand...
Click to collapse
Yeah this would be your problem.
@OP,
yes, it would be just that easy IF AND ONLY IF the linux commands apply to macs as well. Which I have NO IDEA on. so proceed at your own risk :z
i finally figured it out... saw another post....
here's what worked:
./
Here's my log in case anyone else needs is:
Roman-Vails-Computer:~ romanvail$ adb
-bash: adb: command not found
Roman-Vails-Computer:~ romanvail$ cd/Users/romanvail/android-sdk-mac_x86/tools -bash: cd/Users/romanvail/android-sdk-mac_x86/tools: No such file or directory
Roman-Vails-Computer:~ romanvail$ cd /Users/romanvail/android-sdk-mac_x86/tools Roman-Vails-Computer:tools romanvail$ ./adb
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.
Roman-Vails-Computer:tools romanvail$ adb devices
-bash: adb: command not found
Roman-Vails-Computer:tools romanvail$ ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
015D61C60A003017 device
Roman-Vails-Computer:tools romanvail$ ./adb push Superuser.apk /sdcard/Superuser.apk
1059 KB/s (27688 bytes in 0.025s)
Roman-Vails-Computer:tools romanvail$ ./adb push su /sdcard/su
1802 KB/s (26248 bytes in 0.014s)
Roman-Vails-Computer:tools romanvail$ ./adb push busybox /sdcard/busybox
1918 KB/s (1926944 bytes in 0.980s)
Roman-Vails-Computer:tools romanvail$ ./adb push rageagainstthecage-arm5.bin /data/local/tmp/rageagainstthecage-arm5.bin
726 KB/s (5392 bytes in 0.007s)
Roman-Vails-Computer:tools romanvail$ ./adb shell
$ cd data/local/tmp
$ chmod 0755 rageagainstthecage-arm5.bin
$ ./rageagainstthecage-arm5.bin
[*] CVE-2010-EASY Android local root exploit (C) 2010 by 743C
[*] checking NPROC limit ...
[+] RLIMIT_NPROC={3815, 3815}
[*] Searching for adb ...
[+] Found adb as PID 2846
[*] Spawning children. Dont type anything and wait for reset!
[*]
[*] If you like what we are doing you can send us PayPal money to
[*] [email protected] so we can compensate time, effort and HW costs.
[*] If you are a company and feel like you profit from our work,
[*] we also accept donations > 1000 USD!
[*]
[*] adb connection will be reset. restart adb server on desktop and re-login.
$ Roman-Vails-Computer:tools romanvail$ ./adb kill-server
Roman-Vails-Computer:tools romanvail$ ./adb kill-server
* server not running *
Roman-Vails-Computer:tools romanvail$ cd /Users/romanvail/android-sdk-mac_x86/tools
Roman-Vails-Computer:tools romanvail$ ./adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached
XXXXXXXXXXXXXXXX device
Roman-Vails-Computer:tools romanvail$ ./adb shell
# mount -o rw,remount -t ext3 /dev/block/mmcblk1p21 /system
# cp /sdcard/Superuser.apk /system/app/Superuser.apk
# cp /sdcard/su /system/bin/su
# cp /sdcard/busybox /system/bin/busybox
# chmod 4755 /system/bin/su
# chmod 4755 /system/bin/busybox
# mount -o ro,remount -t ext3 /dev/block/mmcblk1p21 /system
# exit
Roman-Vails-Computer:tools romanvail$ exit
logout
[Process completed]
Now that's odd. I only get problems when I try and use ./ just regular "adb" works on my machine.
SirBrass said:
Now that's odd. I only get problems when I try and use ./ just regular "adb" works on my machine.
Click to expand...
Click to collapse
Yea pretty weird... I use OSX 10.5.8
Intel machine... so, it's weird, but IT DID WORK.
romanvail said:
Yea pretty weird... I use OSX 10.5.8
Intel machine... so, it's weird, but IT DID WORK.
Click to expand...
Click to collapse
There's your problem.... you're using leopard . I'm using 10.6.3. Love it. They did well with this new OS version (for those who don't know... the difference to users between Leopard and Snow Leopard for OSX folks is like the diff between Eclair and FroYo... the former is good, but the later far exceeds it under the hood though still remaining almost the same on the front end).
And obviously that means I'm running an intel machine as well. 2008 iMac 20".... 2.66 Ghz Core 2 Duo. Just your regular, nothing-special iMac.
I thought Macs were supposed to be user friendly?
*snicker*
Sent from my DROIDX using XDA App
Will this method work for a Droid X on Android 2.3.4 Gingerbread and with build # 4.5.1_57_DX8-51 Also is there a new one click type solution by now on a Mac?

[HOW TO] ADB Sideload/Push if you Wipe Internal Storage & No ROM to Flash [19 May 15]

[HOW TO] ADB Sideload/Push if you Wipe Internal Storage & No ROM to Flash [19 May 15]
How to Sideload in TWRP if you erase your Internal Memory and don't have a ROM to Flash or Restore
Warning!
Code:
#include
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
Requirements
Code:
#include
/*
* Unlocked Phone @ HTCDEV
* Custom Recovery
*/
Before You Start - Update Android SDK - How to set up Android SDK (ADB)
Instructions
MAKE SURE YOU BACK UP YOUR SD CARD FIRST!!!!!!!!
Make Sure HTC Drivers are installed and ADB is already working
1. Reboot into TWRP
2. in TWRP, Hit andvanced and find Sideload
3. Swipe to start Sideload
4. Open a CMD Prompt window and Change Directories to where your adb.exe is
5. type adb devices and it should show your device conntected and say sideload
6. Your ZIP file should already be in your adb folder - See Example Below
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
7. You are now ready to push the zip.....
8. type adb sideload nameofzip.zip <------------See Example Below
9. Wait until it says 100% and reboot back into recovery to flash the ROM
10. If hitting power does not make the screen come one, type adb reboot recovery
11. if adb reboot recovery does not work, hold power and volume down until it reboots to fastboot then go to recovery
ADB Push from Recovery - If Sideload Fails For You ​
adb push rom.zip /data/media/0/
​
Click to expand...
Click to collapse
If You have any Troubles with ADB
Koush Universal ADB Driver - Works on Windows 8 - Thanks xeroxide
YouTube Video for ADB Help
How to install ADB Drivers for any Device
​
​
​
FAQ
If your Using Windows 8/8.1
Refer to Post #1 above the social media links for the 2 Posted Links
If your Output looks similiar to this below, then you are not in sideload mode or you typed the command incorrectly
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\William>cd Downloads\ADB
C:\Users\William\Downloads\ADB>adb sideload Slim-nozomi-4.2.2.build.6-OFFICIAL
Android Debug Bridge version 1.0.26
-d - directs command to the only connected USB devic
e
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 r
unning.
-s <serial number> - directs command to the USB device or emulator w
ith
the given serial number. Overrides ANDROID_SERI
AL
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
disconnect <host>:<port> - disconnect from a TCP/IP device
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
(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 i
nstall it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data
)
('-s' means install on SD card instead of inter
nal 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 specifie
d device
adb remount - remounts the /system partition on the device re
ad-write
adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader 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 th
e 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 u
pdated.
- If it is "system" or "data", only the corresponding partition
is updated.
C:\Users\William\Downloads\ADB>-d
'-d' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\William\Downloads\ADB>-d\
'-d\' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\William\Downloads\ADB>-d: \
'-d:' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\William\Downloads\ADB>:-d
C:\Users\William\Downloads\ADB>-d\
'-d\' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\William\Downloads\ADB>-d
'-d' is not recognized as an internal or external command,
operable program or batch file.
C:\Users\William\Downloads\ADB
DO THE FOLLOWING - (Refer to Post 1 Before you start for Picture Example)
1. Run sdk manager and update all the 4.1.2 - 4.4.2 binaries, you will see installed if you have done so
2. Reboot into TWRP
3. Go to advanced
4. Touch ADB Sideload
5. Swipe To start sideload
6. in command promt example: cd c:\android\sdk\platform-tools (that is where my adb files are at)
7. Once you have navigated to where your adb is at in command promt type adb devices
8. When you type adb devices, it should show your HTCxxjxihdjiw (whatever yours is) and Sideload which indicates you are set up properly
9. Once you see the above type adb sideload nameofzip.zip
Thanks for spending the time to write this :good:
I used the all in one toolkit and it worked perfectly.
This is great for people who don't know about it.
Cheers
Great guide for newcomers!
OK I laugh hard when I saw ur file name is almost the same as I do. ARHD 10.2.
Is that becuz it's too long to type in? LOL
Nice tutorial though.
pablo11 said:
Thanks for spending the time to write this :good:
I used the all in one toolkit and it worked perfectly.
This is great for people who don't know about it.
Cheers
Click to expand...
Click to collapse
Thanks guys appreciate it.... Lol yeah man the file name is way too long haha
gianton said:
Great guide for newcomers!
Click to expand...
Click to collapse
wm2001wm2001 said:
OK I laugh hard when I saw ur file name is almost the same as I do. ARHD 10.2.
Is that becuz it's too long to type in? LOL
Nice tutorial though.
Click to expand...
Click to collapse
Sent from my HTC One using xda premium
You're God sent.
I bricked my friend's One & luckily found this post.
Everything's fixed.
Thanks for saving the One.
dsymbol said:
You're God sent.
I bricked my friend's One & luckily found this post.
Everything's fixed.
Thanks for saving the One.
Click to expand...
Click to collapse
I am glad you were able to fix your friends phone bro always good when you dodge that bullet lol
Sent from my HTC One using xda premium
thanks
thanks my bro but This method does not work with me
plz can you help me
here logo
-------------------------------------
C:\andsdk\tools>adb sideload Rayglobe_4_0_2_.zip
Android Debug Bridge version 1.0.26
-d - directs command to the only connected USB devic
e
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 r
unning.
-s <serial number> - directs command to the USB device or emulator w
ith
the given serial number. Overrides ANDROID_SERI
AL
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 devic
es.
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 i
nstall it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data
)
('-s' means install on SD card instead of inter
nal 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 specifie
d device
adb remount - remounts the /system partition on the device re
ad-write
adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader 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 th
e 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 u
pdated.
- 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 prior
ity over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these de
bug tags are printed.
C:\andsdk\tools>
As a note I had to do this last week when I upgraded to the new 4.2.2 roms, and I was unable to sideload the rom until I rename it to something smaller.
So instead of something like "rom_trickdroid7.5" I just renamed it to "rom.zip" and at that point sideload command worked fine.
zakryia said:
thanks my bro but This method does not work with me
plz can you help me
here logo
-------------------------------------
C:\andsdk\tools>adb sideload Rayglobe_4_0_2_.zip
Android Debug Bridge version 1.0.26
-d - directs command to the only connected USB devic
e
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 r
unning.
-s <serial number> - directs command to the USB device or emulator w
ith
the given serial number. Overrides ANDROID_SERI
AL
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 devic
es.
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 i
nstall it
('-l' means forward-lock the app)
('-r' means reinstall the app, keeping its data
)
('-s' means install on SD card instead of inter
nal 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 specifie
d device
adb remount - remounts the /system partition on the device re
ad-write
adb reboot [bootloader|recovery] - reboots the device, optionally into the boo
tloader 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 th
e 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 u
pdated.
- 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 prior
ity over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these de
bug tags are printed.
C:\andsdk\tools>
Click to expand...
Click to collapse
OK so what you need to do is place the zip in your tools folder in andsdk. I am not sure if you have a platform-tools folder where there is an adb.exe file but whatever folder you have that in the zip also needs to go.
In recovery make sure you navigate to advanced then sideload and then swipe to start sideload. Once sideload is enabled then you type in the command prompt adb devices... It should show your device and have sideload next to it. If that is what you see last step is type
adb sideload nameofzip.zip
It automatically hoes to the root of your internal memory
Sent from my HTC One using xda premium
I changed directories to where the adb.exe is (inside platform-tools) and ADB Sideload is already started in TWRP. However, whenever I type "adb devices" it only says "List of attached devices" and nothing under it. Whenever I try flashing the ROM, it says error: device not found. What am I doing wrong here? I even changed the name of the ROM to rom.zip to make it shorter as per a suggestion in the first page of the thread, but that didn't work either.
Okay now I realize my device isn't actually recognized, although it works fine with fastboot usb.
What do I do? I tried having windows automatically search for drivers but it didn't find anything.
Okay after doing some more reading I realized I never actually opened SDK Manager, and when I try, it just opens a black command prompt window and then shuts down. I then came across this article and realized I need Java JDK drivers before I can actually run SDK Manager and then follow the rest of the tutorial. Maybe that is the problem??
TarekElsakka said:
Okay now I realize my device isn't actually recognized, although it works fine with fastboot usb.
What do I do? I tried having windows automatically search for drivers but it didn't find anything.
Click to expand...
Click to collapse
are you trying to use adb while fastboot is running on the phone? if so that won't work.
you need to have your phone in recovery mode or during normal operation for adb to work.
also make sure no other instances of adb are running use task manager (through ctrl+alt+del) to check and make sure no other instance of adb is running. i had the issue where it wouldn't kill previous iterations of itself.
*edit*
hmmm i just noticed your screenshot.
looks like you may need to reinstall the htc drivers, alternatively you could try to install koush's universal adb driver.
TarekElsakka said:
Okay after doing some more reading I realized I never actually opened SDK Manager, and when I try, it just opens a black command prompt window and then shuts down. I then came across this article and realized I need Java JDK drivers before I can actually run SDK Manager and then follow the rest of the tutorial. Maybe that is the problem??
Click to expand...
Click to collapse
could very well be, if the sdk isn't properly installed - chances are the drivers aren't either. have you tried manually updating the drivers for the "unknown device"?
TarekElsakka said:
I changed directories to where the adb.exe is (inside platform-tools) and ADB Sideload is already started in TWRP. However, whenever I type "adb devices" it only says "List of attached devices" and nothing under it. Whenever I try flashing the ROM, it says error: device not found. What am I doing wrong here? I even changed the name of the ROM to rom.zip to make it shorter as per a suggestion in the first page of the thread, but that didn't work either.
Click to expand...
Click to collapse
Hey Man, you need to make sure you install HTC Drivers and make sure the phone is recognized by the computer. Also, open sdk Manager and download updates, I will post a screen shot, I am using the same adb bundle you are. Update all the 4.1.2 and 4.2.2 APIs and next to each item under 4.1.2 and 4.2.2 make sure it says installed...May help with adb recognizing your phone.
The only issue right now is your phone being recognized by adb while in sideload because once it is the process will work I can promise you that.
Let me know if you have questions, I would get back to you sooner but I am in Hawaii and where its 11pm on the east its only 5 18pm here
Yeah, thank you very much guys. I was playing God of War and waiting for HTC Sync Manager to download so I can install it, haha. Everything went fine and the rom sideloaded 100%. Now I rebooted into recovery but I do not know where the rom.zip is located so I can install it? Any ideas?
---------- Post added at 05:31 AM ---------- Previous post was at 05:26 AM ----------
Never mind, I just realized it should be in the sideload.zip file. I am so dumb today.
Thanks for all your help, guys.
TarekElsakka said:
Yeah, thank you very much guys. I was playing God of War and waiting for HTC Sync Manager to download so I can install it, haha. Everything went fine and the rom sideloaded 100%. Now I rebooted into recovery but I do not know where the rom.zip is located so I can install it? Any ideas?
---------- Post added at 05:31 AM ---------- Previous post was at 05:26 AM ----------
Never mind, I just realized it should be in the sideload.zip file. I am so dumb today.
Thanks for all your help, guys.
Click to expand...
Click to collapse
Glad everything worked out man that is what is important. The forum should always be about helping others
Sent from my HTC One using xda premium
Quick question guys, does sideload work with Cwm recovery too ?
Vodka69er said:
Quick question guys, does sideload work with Cwm recovery too ?
Click to expand...
Click to collapse
I have never used CWM but if you boot into recovery, look for ADB Sideload through the options you have in CWM Recovery, if you do enable sideload and verify its connected and recognized by the computer by typing adb devices and it will show you your device with sideload. If it shows that then yes it will work

[GUIDE] Identifying and Fixing Corrupted Partitions

Requesting Removal
This thread is of no use. Please remove.
Thank you!
WEM97 said:
Introduction
I am sure many of you have run into this problem before. Your flashing a ROM and on your marry way to enjoying the yummy goodness that comes with a fresh flash. You boot up and suddenly you hit with FC's and reboots that never seem to end and come out of nowhere. That or your device doesn't even flash at all. This occurred to me when I attempted to leave Oneplus's ALPHA Build of Lollipop for the device. In fact, some of my partitions were downright gone. Now before you run off and try to re flash CM11S, there are some things you should know. There is a high possibility it will fail and you will be enjoying a $350 brick. For help with such, view this tool here. However if you haven't gotten to this point yet and still have access to recovery, fastboot, etc... then this guide is here for you (and anyone else needing to fix their partitions)!
Repairing Your File System
> Connect your device to your computer while booted into Android
> Make sure Root Access for ADB is enabled in Developer Options
> If Developer Options are not enabled on your device go to Settings > About and tap Build Number 5 times. Now Developer Options will be displayed in Settings
> Press Windows + R, type "cmd" and press Enter
> Type:
Code:
adb devices <press enter>
Your Device should be displayed in a list below. If it is not showing up, try a different USB port and check to make sure you have all of your device drivers installed.
> Next Type:
Code:
su <press enter>
fsck_msdos -p -y /dev/block/vold/179:9 <press enter>
> And:
Code:
fsck_msdos -p -y /dev/block/vold/259:3 <press enter>
If your device's partitions need to be repaired, you will be prompted with a yes or no option.
> Type:
Code:
Y <press enter>
And you're done!
> Note: Since different devices may have different mounts, you can check yours by typing this command in Terminal Emulator :
Code:
mount | grep sdcard <press enter>
> Congratulations! Your partitions should be good to go! Happy flashing
Credits
Twiq
Click to expand...
Click to collapse
Does this erase my data? My data partition is corrupt since I can't perform nandroid backup
WEM97 said:
Introduction
I am sure many of you have run into this problem before. Your flashing a ROM and on your marry way to enjoying the yummy goodness that comes with a fresh flash. You boot up and suddenly you hit with FC's and reboots that never seem to end and come out of nowhere. That or your device doesn't even flash at all. This occurred to me when I attempted to leave Oneplus's ALPHA Build of Lollipop for the device. In fact, some of my partitions were downright gone. Now before you run off and try to re flash CM11S, there are some things you should know. There is a high possibility it will fail and you will be enjoying a $350 brick. For help with such, view this tool here. However if you haven't gotten to this point yet and still have access to recovery, fastboot, etc... then this guide is here for you (and anyone else needing to fix their partitions)!
Repairing Your File System
> Connect your device to your computer while booted into Android
> Make sure Root Access for ADB is enabled in Developer Options
> If Developer Options are not enabled on your device go to Settings > About and tap Build Number 5 times. Now Developer Options will be displayed in Settings
> Press Windows + R, type "cmd" and press Enter
> Type:
Code:
adb devices <press enter>
Your Device should be displayed in a list below. If it is not showing up, try a different USB port and check to make sure you have all of your device drivers installed.
> Next Type:
Code:
su <press enter>
fsck_msdos -p -y /dev/block/vold/179:9 <press enter>
> And:
Code:
fsck_msdos -p -y /dev/block/vold/259:3 <press enter>
If your device's partitions need to be repaired, you will be prompted with a yes or no option.
> Type:
Code:
Y <press enter>
And you're done!
> Note: Since different devices may have different mounts, you can check yours by typing this command in Terminal Emulator :
Code:
mount | grep sdcard <press enter>
> Congratulations! Your partitions should be good to go! Happy flashing
Credits
Twiq
Click to expand...
Click to collapse
There is some discrepancy in these instructions. It sounds like you're implying we use Windows to perform the above commands but 'fsck' is not a Windows-compatible command. You even say to press the Windows key + R and run 'cmd' which to me says Windows, but grep is def not Windows....what's the deal?
I really would love to be able to do this, but these instructions have me baffled. Can you please help?
bgibson72 said:
There is some discrepancy in these instructions. It sounds like you're implying we use Windows to perform the above commands but 'fsck' is not a Windows-compatible command. You even say to press the Windows key + R and run 'cmd' which to me says Windows, but grep is def not Windows....what's the deal?
I really would love to be able to do this, but these instructions have me baffled. Can you please help?
Click to expand...
Click to collapse
There aren't any discrepancies in this tutorial. If you pay attention those commands are being given to the connected Android device via adb, that's why they're Linux commands, because they're being issued to a Linux device.
Transmitted via Bacon
You're correct! Apparently I was not in the platform-tools directory in windows when issuing the adb commands which is why they weren't working for me. My bad.
I think you meant to write that users need to enter the commands like su, fsck in adb shell....
Is that it?
Anyway, I have an OPO in recovery mode, the the devices you mention are not appearing (i.e. there is no /dev/block/vold/179:9 )
C:\Users\Admin\Desktop\android-sdk-windows\platform-tools>adb devices
List of devices attached
dff430e0 device
C:\Users\Admin\Desktop\android-sdk-windows\platform-tools>su
'su' is not recognized as an internal or external command,
operable program or batch file.
What am I doing wrong?
Nexus5-32GB said:
What am I doing wrong?
Click to expand...
Click to collapse
There should be a
Code:
adb shell
in front of the
Code:
su
command.
thanks, have another problem:
Code:
D:\opotoolbox\OPO>adb shell
←7←[r←[999;999H←[6n
←[email protected]:/ $ su
su
←7←[r←[999;999H←[6n
←[email protected]:/ # fsck_msdos -p -y /dev/block/vold/179:9
fsck_msdos -p -y /dev/block/vold/179:9
** /dev/block/vold/179:9
Can't open: No such file or directory
8|[email protected]:/ #
I can gain root access but thats it Have tried run cmd as Administrator, same results...
running Win 8.1
I can't seem to type anything after typing adb shell su
Code:
c:\Program Files (x86)\Android\android-sdk\platform-tools>adb shell su
[email protected]:/ #
at this point, I'm typing away on my desktop keyboard and nothing is happening. of course when I disconnect the phone or when reboot it, all the crap I typed while at the superuser promt appears.
what am I doing wrong?
same error
[email protected]:/ # fsck_msdos -p -y /dev/block/vold/179:9
fsck_msdos -p -y /dev/block/vold/179:9
** /dev/block/vold/179:9
Can't open: No such file or directory
for both commands
tried a few adb drivers just in case
any suggestions?
heisenberg said:
there aren't any discrepancies in this tutorial. If you pay attention those commands are being given to the connected android device via adb, that's why they're linux commands, because they're being issued to a linux device.
Transmitted via bacon
Click to expand...
Click to collapse
────────────────────░███░
───────────────────░█░░░█░
──────────────────░█░░░░░█░
─────────────────░█░░░░░█░
──────────░░░───░█░░░░░░█░
─────────░███░──░█░░░░░█░
───────░██░░░██░█░░░░░█░
──────░█░░█░░░░██░░░░░█░
────░██░░█░░░░░░█░░░░█░
───░█░░░█░░░░░░░██░░░█░
──░█░░░░█░░░░░░░░█░░░█░
──░█░░░░░█░░░░░░░░█░░░█░
──░█░░█░░░█░░░░░░░░█░░█░
─░█░░░█░░░░██░░░░░░█░░█░
─░█░░░░█░░░░░██░░░█░░░█░
─░█░█░░░█░░░░░░███░░░░█░
░█░░░█░░░██░░░░░█░░░░░█░
░█░░░░█░░░░█████░░░░░█░
░█░░░░░█░░░░░░░█░░░░░█░
░█░█░░░░██░░░░█░░░░░█░
─░█░█░░░░░████░░░░██░
─░█░░█░░░░░░░█░░██░█░
──░█░░██░░░██░░█░░░█░
───░██░░███░░██░█░░█░
────░██░░░███░░░█░░░█░
──────░███░░░░░░█░░░█░
──────░█░░░░░░░░█░░░█░
──────░█░░░░░░░░░░░░█░
──────░█░░░░░░░░░░░░░█░
──────░█░░░░░░░░░░░░░█░

Unlock Bootloader in Lenovo Moto G5

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Downloads
Steps To Unlock Bootloader
First, enable the Developer option in your setting Go to Settings>About Phone> tap in Built Number multiple times un till the toast You are a developer now appears.
Now Go to Developer option it will appear in Settings and find and enable OEM Unlock by sliding the button. A warning will appear just Confirm that.
Turn Off Your smartphone.
Press Volume Button and Power button simultaneously and hold it for few seconds. This will boot your device into fast boot mode.
Now Open the ADB Tool Folder and Go to SDK> Platform Tools and right click pressing the Shift Key on your Keyboard and select Open Command here.
Connect your device via USB cable ( good quality cable suggested for uninterrupted use).
Type the command adb device you will see a serial number in the comment prompt screen if not then you missed some step.
Now go to website Click here. Read the information given if you wish and click on Next button to proceed next step.
You the Page will ask you to sign incomplete the process by signing with you Motorolla account or Google Account.
Now go the Command Prompt and type fastboot oem get_unlock_data.
Now a new serial code will appear in your command prompt screen you have to copy the entire code.
Now open this link and paste the code in the tool. then select the entire code and paste that code in point 6 on Moto require Unlock Tool Website.
Now Click on the I Agree Button a Get Unlock Code will appear on the screen.
Click on the Button.
An Unlock Code will appear.
Now again go to the Command Prompt screen and type fast oem unlock ************. “*****” will replace your unique key.
A warning screen will appear in command just retype the same command and hit enter.
Done!!!
but... WHY?
Done. Thanks for the instructions
Is it possible to relock the bootloader after unlocking for model XT1675
what should I do if the message with the unlock code never reached to my mail?
lazasanchez1 said:
what should I do if the message with the unlock code never reached to my mail?
Click to expand...
Click to collapse
Check junk mail
Resend code
Start again
Use different email from another provider
Thank's alot for the response, the mail came 1 hour later
When I type adb device I the following,
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Program Files (x86)\Minimal ADB and Fastboot>adb device
Android Debug Bridge version 1.0.36
Revision 0e9850346394-android
-a - directs adb to listen on all interfaces for a c
onnection
-d - directs command to the only connected USB devic
e
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 r
unning.
-s <specific device> - directs command to the device or emulator with
the given
serial number or qualifier. Overrides ANDROID_S
ERIAL
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.
-H - Name of adb server host (default: localhost)
-P - Port of adb server (default: 5037)
devices [-l] - list all connected devices
('-l' will also list device qualifiers)
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 command with no additional arguments
will disconnect from all connected TCP/IP devic
es.
device commands:
adb push <local>... <remote>
- copy files/dirs to device
adb pull [-a] <remote>... <local>
- copy files/dirs from device
(-a preserves file timestamp and mode)
adb sync [ <directory> ] - copy host->device only if changed
(-l means list but don't copy)
adb shell [-e escape] [-n] [-Tt] [-x] [command]
- run remote shell command (interactive shell if
no command given)
(-e: choose escape character, or "none"; defaul
t '~')
(-n: don't read from stdin)
(-T: disable PTY allocation)
(-t: force PTY allocation)
(-x: disable remote exit codes and stdout/stder
r separation)
adb emu <command> - run emulator console command
adb logcat [ <filter-spec> ] - View device log
adb forward --list - list all forward socket connections.
the format is a list of lines with the followin
g format:
<serial> " " <local> " " <remote> "\n"
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 forward --no-rebind <local> <remote>
- same as 'adb forward <local> <remote>' but fail
s
if <local> is already forwarded
adb forward --remove <local> - remove a specific forward socket connection
adb forward --remove-all - remove all forward socket connections
adb reverse --list - list all reverse socket connections from device
adb reverse <remote> <local> - reverse socket connections
reverse specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
adb reverse --no-rebind <remote> <local>
- same as 'adb reverse <remote> <local>' but fail
s
if <remote> is already reversed.
adb reverse --remove <remote>
- remove a specific reversed socket connection
adb reverse --remove-all - remove all reversed socket connections from dev
ice
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-lrtsdg] <file>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-g: grant all runtime permissions)
adb install-multiple [-lrtsdpg] <file...>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-p: partial application install)
(-g: grant all runtime permissions)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories
)
adb bugreport [<path>] - return all information from the device that sho
uld be included in a zipped bug report.
If <path> is a file, the bug report will be sav
ed as that file.
If <path> is a directory, the bug report will b
e saved in that directory with the name provided by the device.
If <path> is omitted, the bug report will be sa
ved in the current directory with the name provided by the device.
NOTE: if the device does not support zipped bug
reports, the bug report will be output on stdout.
adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all]
[-system|-nosystem] [<packages...>]
- write an archive of the device's data to <file>
.
If no -f option is supplied then the data is wr
itten
to "backup.ab" in the current directory.
(-apk|-noapk enable/disable backup of the .apks
themselves
in the archive; the default is noapk.)
(-obb|-noobb enable/disable backup of any insta
lled apk expansion
(aka .obb) files associated with each applic
ation; the default
is noobb.)
(-shared|-noshared enable/disable backup of the
device's
shared storage / SD card contents; the defau
lt is noshared.)
(-all means to back up all installed applicatio
ns)
(-system|-nosystem toggles whether -all automat
ically includes
system applications; the default is to inclu
de system apps)
(<packages...> is the list of applications to b
e backed up. If
the -all or -shared flags are passed, then t
he package
list is optional. Applications explicitly g
iven on the
command line will be included even if -nosys
tem would
ordinarily cause them to be omitted.)
adb restore <file> - restore device contents from the <file> backup
archive
adb disable-verity - disable dm-verity checking on USERDEBUG builds
adb enable-verity - re-enable dm-verity checking on USERDEBUG build
s
adb keygen <file> - generate adb public/private key. The private ke
y is stored in <file>,
and the public key is stored in <file>.pub. Any
existing files
are overwritten.
adb help - show this help message
adb version - show version num
scripting:
adb wait-for[-<transport>]-<state>
- wait for device to be in the given state:
device, recovery, sideload, or bootloader
Transport is: usb, local or any [default=any]
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 get-devpath - prints: <device-path>
adb remount - remounts the /system, /vendor (if present) and
/oem (if present) partitions on the device read-write
adb reboot [bootloader|recovery]
- reboots the device, optionally into the bootloa
der or recovery program.
adb reboot sideload - reboots the device into the sideload mode in re
covery program (adb root required).
adb reboot sideload-auto-reboot
- reboots into the sideload mode, then reboots au
tomatically after the sideload regardless of the result.
adb sideload <file> - sideloads the given package
adb root - restarts the adbd daemon with root permissions
adb unroot - restarts the adbd daemon without root permissio
ns
adb usb - restarts the adbd daemon listening on USB
adb tcpip <port> - restarts the adbd daemon listening on TCP on th
e 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, /system, /vendor (if present), /oem (if pre
sent) and /data partitions will be updated.
- If it is "system", "vendor", "oem" or "data", only the corresponding partiti
on
is updated.
internal debugging:
adb reconnect Kick current connection from host side and make
it reconnect.
adb reconnect device Kick current connection from device side and ma
ke it reconnect.
environment 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 prior
ity over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these de
bug tags are printed.
C:\Program Files (x86)\Minimal ADB and Fastboot>
and if i type the get unlock data command i get waiting for any device, does anyone know what the problem could be as i have the drivers installed from the Motorola site
sorry about the big post
EDIT, PROBLEM FOUND MY DRIVERS ARE NOT INSTALLED PROPERLY
plewis1981 said:
When I type adb device I the following,
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Program Files (x86)\Minimal ADB and Fastboot>adb device
Android Debug Bridge version 1.0.36
Revision 0e9850346394-android
-a - directs adb to listen on all interfaces for a c
onnection
-d - directs command to the only connected USB devic
e
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 r
unning.
-s <specific device> - directs command to the device or emulator with
the given
serial number or qualifier. Overrides ANDROID_S
ERIAL
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.
-H - Name of adb server host (default: localhost)
-P - Port of adb server (default: 5037)
devices [-l] - list all connected devices
('-l' will also list device qualifiers)
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 command with no additional arguments
will disconnect from all connected TCP/IP devic
es.
device commands:
adb push <local>... <remote>
- copy files/dirs to device
adb pull [-a] <remote>... <local>
- copy files/dirs from device
(-a preserves file timestamp and mode)
adb sync [ <directory> ] - copy host->device only if changed
(-l means list but don't copy)
adb shell [-e escape] [-n] [-Tt] [-x] [command]
- run remote shell command (interactive shell if
no command given)
(-e: choose escape character, or "none"; defaul
t '~')
(-n: don't read from stdin)
(-T: disable PTY allocation)
(-t: force PTY allocation)
(-x: disable remote exit codes and stdout/stder
r separation)
adb emu <command> - run emulator console command
adb logcat [ <filter-spec> ] - View device log
adb forward --list - list all forward socket connections.
the format is a list of lines with the followin
g format:
<serial> " " <local> " " <remote> "\n"
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 forward --no-rebind <local> <remote>
- same as 'adb forward <local> <remote>' but fail
s
if <local> is already forwarded
adb forward --remove <local> - remove a specific forward socket connection
adb forward --remove-all - remove all forward socket connections
adb reverse --list - list all reverse socket connections from device
adb reverse <remote> <local> - reverse socket connections
reverse specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
adb reverse --no-rebind <remote> <local>
- same as 'adb reverse <remote> <local>' but fail
s
if <remote> is already reversed.
adb reverse --remove <remote>
- remove a specific reversed socket connection
adb reverse --remove-all - remove all reversed socket connections from dev
ice
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-lrtsdg] <file>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-g: grant all runtime permissions)
adb install-multiple [-lrtsdpg] <file...>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-p: partial application install)
(-g: grant all runtime permissions)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories
)
adb bugreport [<path>] - return all information from the device that sho
uld be included in a zipped bug report.
If <path> is a file, the bug report will be sav
ed as that file.
If <path> is a directory, the bug report will b
e saved in that directory with the name provided by the device.
If <path> is omitted, the bug report will be sa
ved in the current directory with the name provided by the device.
NOTE: if the device does not support zipped bug
reports, the bug report will be output on stdout.
adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all]
[-system|-nosystem] [<packages...>]
- write an archive of the device's data to <file>
.
If no -f option is supplied then the data is wr
itten
to "backup.ab" in the current directory.
(-apk|-noapk enable/disable backup of the .apks
themselves
in the archive; the default is noapk.)
(-obb|-noobb enable/disable backup of any insta
lled apk expansion
(aka .obb) files associated with each applic
ation; the default
is noobb.)
(-shared|-noshared enable/disable backup of the
device's
shared storage / SD card contents; the defau
lt is noshared.)
(-all means to back up all installed applicatio
ns)
(-system|-nosystem toggles whether -all automat
ically includes
system applications; the default is to inclu
de system apps)
(<packages...> is the list of applications to b
e backed up. If
the -all or -shared flags are passed, then t
he package
list is optional. Applications explicitly g
iven on the
command line will be included even if -nosys
tem would
ordinarily cause them to be omitted.)
adb restore <file> - restore device contents from the <file> backup
archive
adb disable-verity - disable dm-verity checking on USERDEBUG builds
adb enable-verity - re-enable dm-verity checking on USERDEBUG build
s
adb keygen <file> - generate adb public/private key. The private ke
y is stored in <file>,
and the public key is stored in <file>.pub. Any
existing files
are overwritten.
adb help - show this help message
adb version - show version num
scripting:
adb wait-for[-<transport>]-<state>
- wait for device to be in the given state:
device, recovery, sideload, or bootloader
Transport is: usb, local or any [default=any]
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 get-devpath - prints: <device-path>
adb remount - remounts the /system, /vendor (if present) and
/oem (if present) partitions on the device read-write
adb reboot [bootloader|recovery]
- reboots the device, optionally into the bootloa
der or recovery program.
adb reboot sideload - reboots the device into the sideload mode in re
covery program (adb root required).
adb reboot sideload-auto-reboot
- reboots into the sideload mode, then reboots au
tomatically after the sideload regardless of the result.
adb sideload <file> - sideloads the given package
adb root - restarts the adbd daemon with root permissions
adb unroot - restarts the adbd daemon without root permissio
ns
adb usb - restarts the adbd daemon listening on USB
adb tcpip <port> - restarts the adbd daemon listening on TCP on th
e 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, /system, /vendor (if present), /oem (if pre
sent) and /data partitions will be updated.
- If it is "system", "vendor", "oem" or "data", only the corresponding partiti
on
is updated.
internal debugging:
adb reconnect Kick current connection from host side and make
it reconnect.
adb reconnect device Kick current connection from device side and ma
ke it reconnect.
environment 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 prior
ity over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these de
bug tags are printed.
C:\Program Files (x86)\Minimal ADB and Fastboot>
and if i type the get unlock data command i get waiting for any device, does anyone know what the problem could be as i have the drivers installed from the Motorola site
sorry about the big post
EDIT, PROBLEM FOUND MY DRIVERS ARE NOT INSTALLED PROPERLY
Click to expand...
Click to collapse
You got that because you typed the command wrong
You typed adb device
It should be adb devices
You missed the s
TheFixItMan said:
You got that because you typed the command wrong
You typed adb device
It should be adb devices
You missed the s
Click to expand...
Click to collapse
Thanks, I also had yellow icon on fastboot cedric in my device manager, had to unplug my phone a few times to get them gone, got my unlock data now just waiting for my code
with windows 10 x64 adb devices always gives me a bunch of red error lines of wrong commands,
last motorola was an razr i and from that time i remember motorola and windows 10 never have been good friends, still that or what to do?(
punkrockfan said:
with windows 10 x64 adb devices always gives me a bunch of red error lines of wrong commands,
last motorola was an razr i and from that time i remember motorola and windows 10 never have been good friends, still that or what to do?(
Click to expand...
Click to collapse
Works perfectly fine for me
Here is my adb/fastboot folder
https://forum.xda-developers.com/attachment.php?attachmentid=4238479&d=1502448621
I suggest adding the folder to the windows environmental variables then you can run the adb command from any window you launch CMD/terminal from & you won't have to navigate to the adb folder
Note if you using the power shell in Windows 10 with fastboot you may have to type ./fastboot
yep powershell was the issue, running cmd works fine, thx
punkrockfan said:
yep powershell was the issue, running cmd works fine, thx
Click to expand...
Click to collapse
If you want to use powershell add the folder to the environmental values in Windows (control panel system environmental values)
And start the commands with a ./ if it says unknown batch operation
Got my G5 today and tried to unlock its bootloader. Motorola USB drivers installed, adbdriver and latest windows ADB Tools extracted.
Following this guide (maybe a mod could correct the wrong "adb devices" command in the first post) running adb devices in my adb folder via CMD I get
Code:
List of devices attached
* daemon not running. starting it now at tcp:5037 *
*daemon started successfully *
followed by two two emty lines as output. Repeating the command adb devices the same, just two emty lines.
Serial Number can also be found when entering fastboot screen on the phone itself anyway, no? That's where I see it between
Code:
Product/Variant: cedric XT1676 16GB P5
Serial Number: AA12345678XX
CPU: MSM8937
According Motorola serial number and that step is not even needed.
Running the fastboot oem get_unlock_data command "the returned string will be used to retrieve your unlock key". This is how this string is supposed to look like:
Code:
$ fastboot oem get_unlock_data
(bootloader) 0A40040192024205#4C4D3556313230
(bootloader) 30373731363031303332323239#BD00
(bootloader) 8A672BA4746C2CE02328A2AC0C39F95
(bootloader) 1A3E5#1F53280002000000000000000
(bootloader) 0000000
instead I get like this (using dummy code from above):
Code:
(bootloader) slot-count: not found
(bootloader) slot-suffixes: not found
(bootloader) slot-suffixes: not found
...
(bootloader) 0A40040192024205# (16 characters as above, fine)
(bootloader) 30373731363031303332323239111111111111# (40 characters instead of [B]27 up to and incl # +4 more = 31[/B])
(bootloader) 8A672BA4746C2CE02328A2AC0C39F9511111111# (same here, 40 characters is my output instead of [B]31[/B])
(bootloader) 1A3E51F532800020000000000000000 (32 characters instead of [B]31[/B])
OKAY [ 0,107s]
finished. total time: 0,108s
Put it into the Unlock Data Scrub, just in case, but get a "your device does not qualify for bootloader unlocking".
No SIM Card(s) have been inserted yet nor did any connection to the internet took place.
Anyone got an idea what's wrong?
No_Signal said:
Got my G5 today and tried to unlock its bootloader. Motorola USB drivers installed, adbdriver and latest windows ADB Tools extracted.
Following this guide (maybe a mod could correct the wrong "adb devices" command in the first post) running adb devices in my adb folder via CMD I get
Code:
List of devices attached
* daemon not running. starting it now at tcp:5037 *
*daemon started successfully *
followed by two two emty lines as output. Repeating the command adb devices the same, just two emty lines.
Serial Number can also be found when entering fastboot screen on the phone itself anyway, no? That's where I see it between
Code:
Product/Variant: cedric XT1676 16GB P5
Serial Number: AA12345678XX
CPU: MSM8937
According Motorola serial number and that step is not even needed.
Running the fastboot oem get_unlock_data command "the returned string will be used to retrieve your unlock key". This is how this string is supposed to look like:
Code:
$ fastboot oem get_unlock_data
(bootloader) 0A40040192024205#4C4D3556313230
(bootloader) 30373731363031303332323239#BD00
(bootloader) 8A672BA4746C2CE02328A2AC0C39F95
(bootloader) 1A3E5#1F53280002000000000000000
(bootloader) 0000000
instead I get like this (using dummy code from above):
Code:
(bootloader) slot-count: not found
(bootloader) slot-suffixes: not found
(bootloader) slot-suffixes: not found
...
(bootloader) 0A40040192024205# (16 characters as above, fine)
(bootloader) 30373731363031303332323239111111111111# (40 characters instead of [B]27 up to and incl # +4 more = 31[/B])
(bootloader) 8A672BA4746C2CE02328A2AC0C39F9511111111# (same here, 40 characters is my output instead of [B]31[/B])
(bootloader) 1A3E5#1F5328000200000000000000# (32 characters instead of [B]31[/B])
OKAY [ 0,107s]
finished. total time: 0,108s
Put it into the Unlock Data Scrub, just in case, but get a "your device does not qualify for bootloader unlocking".
Anyone got an idea what's wrong?
Click to expand...
Click to collapse
All the outputs look correct to me
Either
1 - you haven't entered the code correctly - copy it into a text editor first & tidy up any spaces before copying it to website
2 - you are using a amazon variant which cannot be unlocked
There is a typo it should be adb devices
Follow the instructions on the Motorola boot loader unlock site especially the part how to copy & past codes from terminal window as some codes you need to remove the line brakes so
123
456
789
Becomes 123456789 and of course you need to remove the (bootloader) parts too so it's just the code on a single line
TheFixItMan said:
All the outputs look correct to me
Either
1 - you haven't entered the code correctly - copy it into a text editor first & tidy up any spaces before copying it to website
2 - you are using a amazon variant which cannot be unlocked
There is a typo it should be adb devices
Follow the instructions on the Motorola boot loader unlock site especially the part how to copy & past codes from terminal window as some codes you need to remove the line brakes so
123
456
789
Becomes 123456789 and of course you need to remove the (bootloader) parts too so it's just the code on a single line
Click to expand...
Click to collapse
Had to correct the last line I wrote in my post at first, those 32 characters don't have any # in it.
I'm wondering why I have more characters than the number in Motorola's example - this can't be wrong? Also four lines instead of five.
I made sure controlling it several times that the code is correct, manually and by using also Data Scrub, just in case.
The phone itself is a retail one, also says so under Android -> Phone status -> Software Channel -> reteu.
Wouldn't want to start the phone/use it with all that google crap on it. AFWall+ with Googles IP Range is just a workaround.
A Replicant ROM will be great for the future.
No_Signal said:
Had to correct the last line I wrote in my post at first, those 32 characters don't have any # in it.
I'm wondering why I have more characters than the number in Motorola's example - this can't be wrong? Also four lines instead of five.
I made sure controlling it several times that the code is correct, manually and by using also Data Scrub, just in case.
The phone itself is a retail one, also says so under Android -> Phone status -> Software Channel -> reteu.
Wouldn't want to start the phone/use it with all that google crap on it. AFWall+ with Googles IP Range is just a workaround.
A Replicant ROM will be great for the future.
Click to expand...
Click to collapse
I also assume you have installed the Motorola drivers & have enabled usb debugging and are using the adb & fastboot from the Android sdk which you have installed from
https://developer.android.com/studio/index.html
I can't offer anymore advice
TheFixItMan said:
I also assume you have installed the Motorola drivers & have enabled usb debugging and are using the adb & fastboot from the Android sdk which you have installed from
https://developer.android.com/studio/index.html
I can't offer anymore advice
Click to expand...
Click to collapse
Yes, those are the ones I used.
Got it work now! I did a clean ADB install in a VM and got it working there! :good:
@Suman117
Thank you for your guide. But would you mind correcting your first post, so other users don't run into the same disturbances I did?
I suggest to change the order of the steps, just after Step 2: before turning the smartphone off, go ahead with Step 5, 6 and 7. Step 7 should read "adb devices", not "adb device", as some other readers have mentioned already. First, this is useful to grant adb authoration (at the phones display). Second, when the phone is in fastboot mode, the command is "fastboot devices", not "adb devices".
So basically: New Step 2a: Type "adb devices" and grant permission.
Correction for step 7: "fastboot devices"
Suman117 said:
First, enable the Developer option in your setting Go to Settings>About Phone> tap in Built Number multiple times un till the toast You are a developer now appears.
Now Go to Developer option it will appear in Settings and find and enable OEM Unlock by sliding the button. A warning will appear just Confirm that.
Turn Off Your smartphone.
Press Volume Button and Power button simultaneously and hold it for few seconds. This will boot your device into fast boot mode.
Now Open the ADB Tool Folder and Go to SDK> Platform Tools and right click pressing the Shift Key on your Keyboard and select Open Command here.
Connect your device via USB cable ( good quality cable suggested for uninterrupted use).
Type the command adb device you will see a serial number in the comment prompt screen if not then you missed some step.
Now go to website Click here. Read the information given if you wish and click on Next button to proceed next step.
You the Page will ask you to sign incomplete the process by signing with you Motorolla account or Google Account.
Now go the Command Prompt and type fastboot oem get_unlock_data.
Now a new serial code will appear in your command prompt screen you have to copy the entire code.
Now open this link and paste the code in the tool. then select the entire code and paste that code in point 6 on Moto require Unlock Tool Website.
Now Click on the I Agree Button a Get Unlock Code will appear on the screen.
Click on the Button.
An Unlock Code will appear.
Now again go to the Command Prompt screen and type fast oem unlock ************. “*****” will replace your unique key.
A warning screen will appear in command just retype the same command and hit enter.
Done!!!
Click to expand...
Click to collapse
Thank you!

[HOWTO] Add /etc/init.d support and enable OTG on boot [ROOT REQUIRED]

[UPDATE #1] I've added a zip file with the 2 scripts, with UNIX line endings , as suggested below by @aftvNews . Cheers.
[UPDATE #2] I've added a zip file with the 2 extra scripts to go into /etc/init.d, as requested by @Axecaster . These will need the same ownership and permissions as enableotg. They disable SELinux and set the permissions on the recovery directories. Cheers.
Having had a look around the android image on my Fire TV Stick (v1) [ FireOS 5.2.1.1 @rbox ] I found that a script, which doesn't exist, called /system/bin/factoryadb.sh was being run by /init.build.rc on boot.
I was able to create a simple script to run scripts in /etc/init.d on boot.
UPDATE (05/04/19): Now I've got root access on my FireTV Gen 2 [ FireOS 5.2.6.9 ] I can see the see these instructions will also work, although the OTG enabling is not needed
NOTE: I've only tested this on a 1st generation Fire TV Stick but may work on Fire TV boxes if they also call /system/bin/factoryadb.sh from /init.build.rc
Before you do this please make sure factoryadb.sh is NOT on your FireTV and that it is called from /init.build.rc by connecting to your FireTV via adb and running the following commands
Code:
adb shell
su
grep factoryadb /init.build.rc && ls -l /system/bin/factoryadb.sh
Hopefully this will return
Code:
service factoryadb /system/bin/factoryadb.sh
/system/bin/factoryadb.sh: No such file or directory
Now continue ...
My factoryadb.sh script
Code:
#!/system/bin/sh
#
# Execute all scripts in /etc/init.d
if [ -d /etc/init.d ]
then
for f in `ls /etc/init.d/* 2>/dev/null`
do
if [ -s ${f} ]
then
echo Executing ${f} ... >/dev/kmsg
/system/bin/sh ${f}
fi
done
fi
NOTE: Make sure this file has UNIX line endings only. Notepad++ has an option to specify UNIX line endings.
I also have a simple script to enable OTG which I called enableotg, again MUST have UNIX line endings.
Code:
#!/system/bin/sh
echo 1 > /sys/devices/platform/bcmpmu_otg_xceiv/host
Connect to the Fire TV Stick via adb and run the following commands
Code:
adb push factoryadb.sh /sdcard/
adb push enableotg /sdcard/
adb shell
su
mount -o remount,rw /system
mkdir /etc/init.d
cp /sdcard/factoryadb.sh /system/bin/
cp /sdcard/enableotg /etc/init.d/
chown 0:0 /system/bin/factoryadb.sh /etc/init.d /etc/init.d/enableotg
chmod 755 /system/bin/factoryadb.sh /etc/init.d /etc/init.d/enableotg
mount -o remount,ro /system
reboot
When the FireTV Stick has rebooted then reconnect via adb and run the following commands
Code:
adb shell
su
dmesg | grep -e factoryadb -e Executing -e bcmpmu
You should see something similar to
Code:
<6>[ 3.005279] bcmpmu_otg_xceiv bcmpmu_otg_xceiv: Probing started...
<6>[ 3.007690] bcmpmu_otg_xceiv bcmpmu_otg_xceiv: Probing successful
<3>[ 4.998016] init: Warning! Service factoryadb needs a SELinux domain defined; please fix!
<4>[ 5.573242] Executing /etc/init.d/enableotg ...
<6>[ 5.579040] bcmpmu_otg_xceiv bcmpmu_otg_xceiv: Switching to Host
All is working and OTG should be working about 5 seconds after leaving the TWRP screen and long before Android has finished booting.
If you have an ethernet dongle attached it should have an IP address before the launcher starts
NOTE: The SELinux warning can be safely ignored.
Hope this helps.
Nicely done. Clever using the missing factoryadb.sh to roll your own init.d.
Might be easier for some if you just upload/attach your factoryadb.sh and enableotg files that others can download, so there's no need to worry about proper UNIX line endings.
Worked nicely on one of my gen 1 sticks running 5.2.4.1_r2.
OTG works for USB pendrive?
AFTVnews.com said:
Nicely done. Clever using the missing factoryadb.sh to roll your own init.d.
Might be easier for some if you just upload/attach your factoryadb.sh and enableotg files that others can download, so there's no need to worry about proper UNIX line endings.
Click to expand...
Click to collapse
Doh! Completely missed the section to "Attach Files" when I was writing the post
I've now added a zip file with the 2 scripts with UNIX line endings to the post.
Cheers
Awesome job figuring out this was possible! I can confirm the init.d part works just fine on the FireTV-v1 on Rbox v5.2.4.1_r2 (didn't test OTG scripts as I already have a full USB port).
I am going to be adding in your init.d support to my Playing with Fire MOD for the next release.
Now just got to get PS3 / Xbox One controller kernel plugins compiled and working for the Gen1 devices now that init.d works. :good:
dony71 said:
OTG works for USB pendrive?
Click to expand...
Click to collapse
I tried this on fire tv stick 1, usb storage does not work.
dmesg shows my Kingston USB pendrive being recognized by kernel,
but registered driver debus_usbdev ?
So I guess kernel doesn't have USB storage driver?
----------------------------------------------------------------------------------------------------
<6>[ 7.267791] usb 3-1: new high speed USB device number 2 using dwc_otg
<6>[ 7.538024] usb 3-1: New USB device found, idVendor=0951, idProduct=1642
<6>[ 7.538116] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
<6>[ 7.538238] usb 3-1: Product: DT 101 G2
<6>[ 7.538330] usb 3-1: Manufacturer: Kingston
<6>[ 7.538482] usb 3-1: SerialNumber: 001CC0EC3509EA50B0000232
<6>[ 47.829345] usbcore: registered new interface driver dbus_usbdev
<3>[ 60.385131] init: Warning! Service adb_usb needs a SELinux domain defined; please fix!
Does this enable the use of USB storage ? as ive had this setup for over 6 months now to enable usb pheripal support on boot (with a script booter). If not i guess its still good to do away with the extra apk i had installed to enable my script at boot.
What does this actually do? My FireTV already can read from usb drives.
tdfsu said:
What does this actually do? My FireTV already can read from usb drives.
Click to expand...
Click to collapse
Seems mainly for gen 1 sticks to enable usb peripherals. Each boot requires a command to be re-run to recognize usb keyboards, mice, wired networking port, etc. Someone correct me if I'm wrong, but this configuration could in-theory assign multiple scripts to run on boot without extra apps installed.
Axecaster said:
Seems mainly for gen 1 sticks to enable usb peripherals. Each boot requires a command to be re-run to recognize usb keyboards, mice, wired networking port, etc. Someone correct me if I'm wrong, but this configuration could in-theory assign multiple scripts to run on boot without extra apps installed.
Click to expand...
Click to collapse
Yes Gen2 sticks and the main FireTV's seem to have OTG already enabled but Gen1 sticks don't.
However even though I've only specified enabling OTG in my initial post, as Axecaster mentioned I do in fact have a number of scripts in /etc/init.d that run on boot.
e.g. Set SELinux to Permissive, set full R/W access on the recovery directories, cleanup some temp files on boot etc
I'm currently checking to see if I can set a static IP on the USB Ethernet adapter I use with my Gen1 stick which will most likely result in a new script in /etc/init.d
I also need to investigate the USB storage options more though. Might be the same issue as I'm having with NFS mounts. I can mount an NFS share but currently only root can see it!
Hope this helps.
tgellen said:
Yes Gen2 sticks and the main FireTV's seem to have OTG already enabled but Gen1 sticks don't.
However even though I've only specified enabling OTG in my initial post, as Axecaster mentioned I do in fact have a number of scripts in /etc/init.d that run on boot.
e.g. Set SELinux to Permissive, set full R/W access on the recovery directories, cleanup some temp files on boot etc
I'm currently checking to see if I can set a static IP on the USB Ethernet adapter I use with my Gen1 stick which will most likely result in a new script in /etc/init.d
I also need to investigate the USB storage options more though. Might be the same issue as I'm having with NFS mounts. I can mount an NFS share but currently only root can see it!
Hope this helps.
Click to expand...
Click to collapse
Have you checked or modified your "persist-usb-config" file yet? If your's has different values than this (from a FireTV-Box) edit it to match mine and see if that helps.
Code:
[email protected]:/ # cat /data/property/persist.sys.usb.config
diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb
As for your NFS shares issue you are going to need to do a Bind Mount to get non-root users able to access the directory. Im using the same bind-mount method to get a bunch of additional GApps installed on the FireTV by binding folders in /data/local/ --> /system/priv-app and using your /etc/init.d/ discovery to launch it automatically on boot.
[email protected]: # mkdir /data/local/nfs && chmod 0755 /data/local/nfs && chown 0:0 /data/local/nfs
init.d startup script:
Code:
#!/system/bin/sh
NFSPATH=/path/to/nfs
NFSDATA=/data/local/nfs
(mount -o bind $NFSPATH $NFSDATA) ; (mount -o remount nosuid,nodev,noexec,reltime,async $NFSPATH)
SimLynks said:
Have you checked or modified your "persist-usb-config" file yet? If your's has different values than this (from a FireTV-Box) edit it to match mine and see if that helps.
Click to expand...
Click to collapse
Result:
Code:
[email protected]:/ # cat /data/property/persist.sys.usb.config
[B]adb[/B][email protected]:/ #
I pulled the file, replaced "adb" with "iag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb", pushed it back and rebooted the device.
Result: ADB is disabled and otg doesn't seem to work (usb flash drive)
Enabling ADB sets the file back to "adb" and after a reboot otg is working again.
after installing xposed framework on the fire tv stick this method for otg on boot not longer works.
any solutions?
thecoonx said:
after installing xposed framework on the fire tv stick this method for otg on boot not longer works.
any solutions?
Click to expand...
Click to collapse
Hmm. I installed this method after xposed framework. As far as I'm aware, everything seems to be working.
thecoonx said:
after installing xposed framework on the fire tv stick this method for otg on boot not longer works.
any solutions?
Click to expand...
Click to collapse
Axecaster said:
Hmm. I installed this method after xposed framework. As far as I'm aware, everything seems to be working.
Click to expand...
Click to collapse
So only setup your scripts after you are done flashing a PreRooted ROM &/or SuperSU &/or XPosed Framework. So in other words only after your done messing with things that mess with /System in TWRP. Or you will have to reset them again.
SimLynks said:
Have you checked or modified your "persist-usb-config" file yet? If your's has different values than this (from a FireTV-Box) edit it to match mine and see if that helps.
Code:
[email protected]:/ # cat /data/property/persist.sys.usb.config
diag,serial_smd,serial_tty,rmnet_bam,mass_storage,adb
As for your NFS shares issue you are going to need to do a Bind Mount to get non-root users able to access the directory. Im using the same bind-mount method to get a bunch of additional GApps installed on the FireTV by binding folders in /data/local/ --> /system/priv-app and using your /etc/init.d/ discovery to launch it automatically on boot.
[email protected]: # mkdir /data/local/nfs && chmod 0755 /data/local/nfs && chown 0:0 /data/local/nfs
init.d startup script:
Code:
#!/system/bin/sh
NFSPATH=/path/to/nfs
NFSDATA=/data/local/nfs
(mount -o bind $NFSPATH $NFSDATA) ; (mount -o remount nosuid,nodev,noexec,reltime,async $NFSPATH)
Click to expand...
Click to collapse
Hi SimLynks,
Thanks for your suggestion. The bind mount did make the directory available for the non-root user but unfortunately it's contents were still only visible to the root user
I'll keep on trying
Cheers.
tgellen said:
[UPDATE #1] I've added a zip file with the 2 scripts, with UNIX line endings , as suggested below by AFTVNews. Cheers.
[UPDATE #2] I've added a zip file with the 2 extra scripts to go into /etc/init.d, as requested by Axecaster. These will need the same ownership and permissions as enableotg. They disable SELinux and set the permissions on the recovery directories. Cheers.
Having had a look around the android image on my Fire TV Stick (v1) [FireOS 5.2.1.1 rbox] I found that a script, which doesn't exist, called /system/bin/factoryadb.sh was being run by /init.build.rc on boot.
I was able to create a simple script to run scripts in /etc/init.d on boot.
NOTE: I've only tested this on a 1st generation Fire TV Stick but may work on Fire TV boxes if they also call /system/bin/factoryadb.sh from /init.build.rc
Before you do this please make sure factoryadb.sh is NOT on your FireTV and that it is called from /init.build.rc by connecting to your FireTV via adb and running the following commands
Code:
adb shell
su
grep factoryadb /init.build.rc && ls -l /system/bin/factoryadb.sh
Hopefully this will return
Code:
service factoryadb /system/bin/factoryadb.sh
/system/bin/factoryadb.sh: No such file or directory
Now continue ...
My factoryadb.sh script
Code:
#!/system/bin/sh
#
# Execute all scripts in /etc/init.d
if [ -d /etc/init.d ]
then
for f in `ls /etc/init.d/* 2>/dev/null`
do
if [ -s ${f} ]
then
echo Executing ${f} ... >/dev/kmsg
/system/bin/sh ${f}
fi
done
fi
NOTE: Make sure this file has UNIX line endings only. Notepad++ has an option to specify UNIX line endings.
I also have a simple script to enable OTG which I called enableotg, again MUST have UNIX line endings.
Code:
#!/system/bin/sh
echo 1 > /sys/devices/platform/bcmpmu_otg_xceiv/host
Connect to the Fire TV Stick via adb and run the following commands
Code:
adb push factoryadb.sh /sdcard/
adb push enableotg /sdcard/
adb shell
su
mount -o remount,rw /system
mkdir /etc/init.d
cp /sdcard/factoryadb.sh /system/bin/
cp /sdcard/enableotg /etc/init.d/
chown 0:0 /system/bin/factoryadb.sh /etc/init.d /etc/init.d/enableotg
chmod 755 /system/bin/factoryadb.sh /etc/init.d /etc/init.d/enableotg
mount -o remount,ro /system
reboot
When the FireTV Stick has rebooted then reconnect via adb and run the following commands
Code:
adb shell
su
dmesg | grep -e factoryadb -e Executing -e bcmpmu
You should see something similar to
Code:
<6>[ 3.005279] bcmpmu_otg_xceiv bcmpmu_otg_xceiv: Probing started...
<6>[ 3.007690] bcmpmu_otg_xceiv bcmpmu_otg_xceiv: Probing successful
<3>[ 4.998016] init: Warning! Service factoryadb needs a SELinux domain defined; please fix!
<4>[ 5.573242] Executing /etc/init.d/enableotg ...
<6>[ 5.579040] bcmpmu_otg_xceiv bcmpmu_otg_xceiv: Switching to Host
All is working and OTG should be working about 5 seconds after leaving the TWRP screen and long before Android has finished booting.
If you have an ethernet dongle attached it should have an IP address before the launcher starts
NOTE: The SELinux warning can be safely ignored.
Hope this helps.
Click to expand...
Click to collapse
Can this be used in some way to enable otg while at the TWRP countdown bar ( as to use keyboard/mouse/airmouse within TWRP), As it's a whole lot easier to use than the ADB mouse, having to plug firestick into laptop/computer if you need to be in recovery, if it is possible it could be easier.
I use the airmouse/keyboard method myself when I go I to recovery but have to use my home made otg cable and swap over usb to computer after running the command to usb dongle for the airmouse (melee F10 pro). After the command has run while plugged into my laptop I unplug the laptop connection and plug in my dongle and I navigate TWRP with my remote.
It is any chance that we can enable OTG on no-rooted devices of firetv gen 1 ?I have firmware 5.2.6.7 so I think there is no way I can root the device. Thanks!
minute said:
It is any chance that we can enable OTG on no-rooted devices of firetv gen 1 ?I have firmware 5.2.6.7 so I think there is no way I can root the device. Thanks!
Click to expand...
Click to collapse
Sorry. Unfortunately you need root access to change the OTG value on the FireTV gen 1

Categories

Resources