[GUIDE] ADB, Fastboot, and Nandroid for Noobs

Search This thread

nephron

Senior Member
May 25, 2009
745
65
Hello All!

After much frustration with setting up ADB i finally got it working. Everyone said its simple and takes minimal knowledge but when things dont work, nothing really worked. Anyways after 2 hours of research trying to get ADB to work i finally got it all working and wanted to share my knowledge to anyone else that needed help.


This Guide is for windows only. If you are using Mac OS X please go here: ADB For Dummies

If you are using Linux please go here: [HOW-TO]Set up Android SDK/ADB/Fastboot on Ubuntu Linux



Like My Guide(s)? Donate


--------------------------------------------------------------------------

Things you need:


Android SDK - Download
Winrar - Download (32bit) Download (64bit)
Windows PC
USB Cable
A Rooted HTC Dream (Google G1)

--------------------------------------------------------------------------

Setting up the Android SDK


Download the file from above
Unzip to your desktop
Take the "android-sdk-windows" folder and move it to the root of your hard drive (C:\)

Right click on My Computer and click properties
Select the Advanced Tab or Advanced System Setting (Vista/Windows 7)
Select Environment Variables...
Press New

For Variable Name type: adb
For Variable Value type: C:\android-sdk-windows\platform-tools

Now,

1. Run SDK Manager.exe located in the android-sdk-windows folder
2. If it gives you an error go to settings and click on "Force http//....."
3. Select all options and let it download and install

If you cant get the setup to work, Download the USB-DRIVERS folder - HERE (Windows XP/Vista/Windows 7)

--------------------------------------------------------------------------

Preparing your phone for ADB

Go to Settings on your phone
Select Applications
Select Development
Make sure 'USB Debugging' is checked

--------------------------------------------------------------------------

Installing Drivers


Plug in your phone through USB and DO NOT MOUNT IT!!!!!
Your computer should see a new device and try to install Android 1.0 driver (If it doesnt, scroll down to the "Im not getting a notification of Android ADB when i plug in my USB" section)
Let it load
Once it cant find them select "Install drivers from my pc"
The drivers you need are in the Android SDK 1.5r2 folder (C:\android-sdk-windows\usb_driver)
Depending on your OS pick x86 or amd64
You ADB Android Device should now be installed! Good Job :D

For Android SDK 1.5r7+

1. Run SDK Manager.exe
2. If it gives you an error go to settings and click on "Force http//....."
3. Select all options and let it download and install

If you cant get the setup to work, Download the USB-DRIVERS folder - HERE (Windows XP/Vista/Windows 7)

--------------------------------------------------------------------------

Check if your phone is detected by ADB

Open up Command Prompt (Go to run, type in cmd, press enter)
Type in

Code:
cd C:\android-sdk-windows\platform-tools === Press Enter
adb devices === You should see your device listed
adb shell === you should see # in the next line

Now you are all set to run adb commands

Note: for a list of commands type in 'adb' in cmd

CONGRATS YOU NOW HAVE ADB FULLY RUNNING!

--------------------------------------------------------------------------

Droid Explorer by Camalot

Droid Explorer is a Windows software that will download, install, and setup the android SDK for you all in under a minute so you are ready to go. I use this on a daily basis. This amazing piece of software has tons of plugins and a built in file explorer for all your files on your phone! All you gotta do is download, install, and go!

Download Droid Explorer - Here

Install the program, and let it setup the SDK files for you
Connect your phone
Enjoy!

--------------------------------------------------------------------------

"Im not getting a notification of Android ADB when i plug in my USB"


Why: Your computer has detected your phone but as a protable device and as a storage device.

Fix: This took me a lot of research and time to figure out so this is what your are going to do.

First download USBDeview - Here
Unzip it
Run USBDeview.exe as Administrator
You will see all drivers being used on your computer
Highlight and Uninstall all drivers with the description have HTC Android (Should be 3 of them)
Right Click on the driver and press uninstall
Once done, Unplug your phone and plug it back in
You should now get the notification of the ADB device
Follow the steps above to install the drivers

--------------------------------------------------------------------------

When Typing just adb in cmd you will get whats called a "usage doc" which gives you a lits of commands that you can use:

Code:
 -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
 -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

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 jdwp                     - list PIDs of processes hosting a JDWP transport

  adb install [-l] [-r] <file> - push this package file to the device and instal
l it
                                 ('-l' means forward-lock the app)
                                 ('-r' means reinstall the app, keeping its data
)
  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

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 root                     - restarts adb with root permissions

networking:
  adb ppp <tty> [parameters]   - Run PPP over USB.
 Note: you should not automatically start a PDP 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.

--------------------------------------------------------------------------

Commands that you should know


adb push - Insert file to phone such as Stock.apk to /data/app_s
Code:
adb push <pathtofile.apk> <file system location> - Example: adb push c:\app.apk /data/app

adb pull - Remove file from phone such as Stock.apk from /data/app_s
Code:
adb pull <pathtofile.apk> <path where you want to save it>- Example: adb pull /data/app/Stock.apk C:\

adb install - Install app to phone

Code:
adb install <path to file> - Example: adb install c:/apps/apps2sd.apk

adb uninstall - Uninstall app from phone

Code:
adb uninstall <name of application> - Example: adb uninstall linda.apk

For more ADB Commands go - Here

--------------------------------------------------------------------------

Thats it for ADB! Congrats and if you have any questions please ask me or if anything is missing or not correct please tell me. I got all of this from research and personal experience. :D
 
Last edited:

nephron

Senior Member
May 25, 2009
745
65
[GUIDE] Fastboot for Noobs

Fastboot

Like My Guide(s)? Donate

Things you need:

New SPL - Download
New Radio - Download
Your Current ROM - CyanogenMod 3.6
SD Card Reader
Rooted G1 Phone
Computer
USB Cable
Patience

---------------------------------------------------------------------------------------

Install Radio FIRST

Download the Radio Update
Rename it to update.zip
Remove your SD Card from your phone and place it in your SD Card Reader
Put the update.zip at the root of your SDcard (root = not in any folder)
Insert your sdcard back into the phone
Turn off your phone (Hold power and press Power Off)
Hold the Home button and then press the power button (Keep holding power)
You will now enter recovery
Open up your keyboard and press Alt-S
Let it finish the update
When done reboot by pressing Home and Back
You should be able to access your Home screen (If its stuck on the Google G1 screen dont panic, just remove your battery for now)

---------------------------------------------------------------------------------------

Installing the new SPL

Note: To update you must have a PVT board. To Check go into fastboot (Power and Camera and check)


Take your SD Card out again and plug it into the pc
Remove the update.zip that you put in there
Download your current Rom or any other ROM that you want. I suggest CyanogenMod 3.6
Download the SPL Update
Rename the SPL Update to update.zip
Remove your SD Card from your phone and place it in your SD Card Reader
Put the update.zip at the root of your SDcard (root = not in any folder)
Insert your sdcard back into the phone
Turn off your phone (Hold power and press Power Off) or put your battery back in and turn it on
Hold the Home button and then press the power button (Keep holding power)
You will now enter recovery
Open up your keyboard and press Alt-S
Let it finish the update
Now it will reboot on its own back to recovery
Reboot again by pressing Home + Back
Your phone will be stuck on the T-Mobile G1 Screen (Again DONT FREAK)
Remove the battery from your phone
Remove your SD Card and plug it back into your computer
Take the ROM that you downloaded and rename it update.zip
Remove the update.zip that was on your SD Card and put this new one it
Put the battery back into your phone
Enter recovery (Home + Power)
Press Alt+s to update
Let it finish
Press Home + Back to reboot
Thats it! You now have your new SPL and Radio

---------------------------------------------------------------------------------------

Getting into Fastboot

Turn off your phone
Hold the back button and keep holding it while turning your phone back on
You should see 3 Android guys on skateboards
You should now be in Fastboot mode!

---------------------------------------------------------------------------------------

Setting up fastboot to work with your computer

Plug your phone in to your computer through USB
You should get a popup that your computer found the ADB Device for fastboot
When it asks you for drivers, make sure u select the option to locate the drivers from your computer yourself
Since you already have your Android 1.5r2 SDK installed, the drivers are in the same place where the ADB drivers are
C:\android-sdk-windows-1.5_r2\usb_driver
Make sure you choose the correct folder depending on your OS
Press ok to install the drivers
Fastboot should now be up and running

---------------------------------------------------------------------------------------

Make sure Fastboot is working

Open up Command Prompt
type the following

Code:
cd C:\android-sdk-windows-1.5_r2\tools === Press Enter
fastboot devices === Press enter, your device should be listed
fastboot shell === You should see a # in the next line

type fastboot and press enter for general commands

---------------------------------------------------------------------------------------

When Typing just fastboot in cmd you will get whats called a "usage doc" which gives you a lits of commands that you can use:

Code:
usage: fastboot [ <option> ] <command>
 
commands:
  update <filename>                        reflash device from update.zip
  flashall                                 'flash boot' + 'flash system'
  flash <partition> [ <filename> ]         write a file to a flash partition
  erase <partition>                        erase a flash partition
  getvar <variable>                        display a bootloader variable
  boot <kernel> [ <ramdisk> ]              download and boot kernel
  flash:raw boot <kernel> [ <ramdisk> ]    create bootimage and flash it
  devices                                  list all connected devices
  reboot                                   reboot device normally
  reboot-bootloader                        reboot device into bootloader
 
options:
  -w                                       erase userdata and cache
  -s <serial number>                       specify device serial number
  -p <product>                             specify product name
  -c <cmdline>                             override kernel commandline

For more fastboot Commands go - Here

---------------------------------------------------------------------------------------

Congrats! You now have Fastboot and ADB up and running!!! :D

----------------------------------------------------------------------------

Disclamer: I am not liable to any damage that happens to your phone. This is just a guide which you have chosen to follow, so please do not blame me for any damaged phones or bricks.
 
Last edited:

nephron

Senior Member
May 25, 2009
745
65
Nandroid Backup and Restore

Whats is a Nandroid Backup?

Like My Guide(s)? Donate

Nandroid Backup is a tool allowing all rooted g1 users to create a full system backup and restore which, when flashing and testing different roms can be very useful.

----------------------------------------------------------------------------

What You Will Need


A Rooted G1 phone, I suggest with the latest SPL (Guide above to install latest Radio and SPL)

Cyanogen's Pimped Out Recovery Image 1.4 - Download (IMG)

An SD Card with 100mb of free space
A Computer
SD Card reader or USB Cable

----------------------------------------------------------------------------

Installing the New Recovery Image


Download the recovery image from above, you will want the Download (IMG) download

Place the cm-recovery-1.4.img file in the root of your SD Card (Root = not in any folder)

Go back to your phone (Dont forget to unmount)

Open terminal and type in the following

Code:
su (wait for a screen to popup and press "allow")
flash_image recovery /sdcard/cm-recovery-1.4.img

If you have problems with a "no space on device" error, try using fastboot and erasing first:

Code:
fastboot erase recovery
fastboot flash recovery cm-recovery-1.4.img

----------------------------------------------------------------------------

Creating a Backup using Nandroid 2.1


Boot up your phone in recovery (Turn off, then turn on while holding Home button)
You will now see your new Cyanogen 1.3.1 + JF recovery screen (YAY!!! :D)
Scroll down to "nandroid v2.1 backup" and press on it to create your Backup
Let it work, it should take a minute or so
Once its done, your backup is complete and is saved on your sdcard in the "nandroid" folder


Recovering to Your Nandroid Backup


Option 1 (Without a Computer)

Note: This recovery will only recover your latest nandroid backup (the one with the newest timestamp)

Make sure u made a backup and its in the nandroid folder on your sdcard
Boot up your phone in recovery (Turn off, then turn on while holding Home button)
Scroll down to "restore latest backup" and press on it
Let it work
Once its done reboot your phone and you backup will now be restored!

Option 2 (With a computer)

Note: With this option, you can use any nandroid backup that you have made, not just the latest one

1) First go in to your tools folder where you put your SDK 1.5r2 (C:\android-sdk-windows-1.5_r2\tools as reference)

2) Take the files adb.exe fastboot.exe and AdbWinApi.dll (found here - http://sharebee.com/16a06ebb) and place them in C:\WINDOWS\system32

3) Download the Nandroid Backup and Restore GUI made by Markazeh - Here
Extract the folder to your desktop or where ever you can easily find it (I put mine in the SDK folder for easy access)

4) You will need 4 files: Boot.img, System.img , Data.img, and Recovery.img
Place those 4 files in the same folder as the Nandroid Recovery GUI folder you just extracted in step 3

5) Boot your phone into fastboot mode (Turn off the G1 and turn on while holding the BACK button. If you have an older SPL then hold the CAMERA button and press POWER)

6) Once in fastboot (you should see a white screen with three androids on skateboards) plug your phone to your computer via USB. You might have to press the BACK key to turn it into FASTBOOT mode, or follow the on screen prompts.

NOTE: If you dont have the drivers installed please look one post above to setup fastboot

7) Open NANDROID_Recovery_GUI.exe, everything on the left hand side should be "found!"

8) Choose an option from the right to Restore All, Restore all except Recovery, or Restore Data Only. Let the program do its thing.

Once its done you can reboot and all your info from your backup should be restored!

----------------------------------------------------------------------------

Congrats! You now Backed up your phone and will/have restored it! :D

----------------------------------------------------------------------------

Disclamer: I am not liable to any damage that happens to your phone. This is just a guide which you have chosen to follow, so please do not blame me for any damaged phones or bricks.
 
Last edited:

nephron

Senior Member
May 25, 2009
745
65
Credit:

Haykuro
Cyanogen
JacHero
NeoBlade
Markazeh
makethetick
XDA Community for your support and help
If i have forgot anyone, i am sorry, please tell me and i will add you :D
 
Last edited:

alritewhadeva

Senior Member
Mar 26, 2009
1,369
12
Excellent Guide bro. Although I have no need for it, still A++. Might want to include how to do a nandroid restore :) just a suggestion!

[EDIT]: I think this guide is worthy of a sticky! What do you guys think? ^^
 
Last edited:

ronyoung08

Senior Member
Oct 3, 2008
185
7
You are the man!!!

Short simple and to the point!!!

0nly if all the guides were like this...

Thanks man!
 

PlatinumMOTO

Senior Member
Apr 21, 2009
408
2
not sure if this is the right spot or not but ever since I flashed from cy36 to 361 I keep losing my adb connection I have to g1s and while I'm working on one the other one isn't even connected to the computer so I just flashed the hero theme on one and plugged it in usb and tried to do the clock switcher didn't work so I go do a cmd and do an adb devices and there's nothing listed then I do an adb shell and it says error device not found but the computer sees it and the adb driver is loaded along with the mass storage driver and haven't had any problems until now.
 

alritewhadeva

Senior Member
Mar 26, 2009
1,369
12
not sure if this is the right spot or not but ever since I flashed from cy36 to 361 I keep losing my adb connection I have to g1s and while I'm working on one the other one isn't even connected to the computer so I just flashed the hero theme on one and plugged it in usb and tried to do the clock switcher didn't work so I go do a cmd and do an adb devices and there's nothing listed then I do an adb shell and it says error device not found but the computer sees it and the adb driver is loaded along with the mass storage driver and haven't had any problems until now.

You might want to try reinstalling the drivers and the USB Storage devices. That fixed it for me
 

PlatinumMOTO

Senior Member
Apr 21, 2009
408
2
Did you follow the "Preparing your phone for ADB" steps? and do ^ that suggestion first. lol

yes I did I've had adb since sdk 1.0 and never had a problem like I said I actually have 1.0 and 1.5 on my computer so that when I root or re root other g1s I do adb but I noticed adb only works on it's version if I had a 1.5 g1 then the 1.0 won't work and same with the other way but that's not the problem I think I found it it's the clock switcher with 361 of Cyan because now I deleted it and restarted and it works just fine and I just tried to do the clock switcher and now it doesn't recognize either g1 again.
 
push apk via abd while in recovery mode?

Is it possible to use ADB to push apk files to the phone when the phone is in recovery mode? I tried and it didn't work (the files I was trying to replace weren't overwritten), and I'm wondering if it's because I did something wrong, or if it just doesn't work. I have adb working fine otherwise, have used it a bunch, including to push files while the phone was booted normally.

Specifically, I want to push the calendar.apk and calendarprovider.apk (I like the 1x4 calendar widget better than the 2x2). I want to do this in recovery mode so that the calendar isn't running when the file gets overwritten. I keep having calendar problems after pushing the 1x4 widget, and I think the problems are due to the calendar being active when the file gets replaced.
 
Last edited:

ccunningham83

Senior Member
Feb 13, 2009
234
1
Dallas
ADB Commands...

First I would like to say I think the guide is great. Though I don't have a lot of use for it, but I have some suggestions to make:

1. List some ADB commands and what they do, specifically how to use them, and what you would use them for. This forum has taught me so much about my phone and linux, but sometimes it was a slow learning process. Working the ADB push/pull feature was confusing when I first started using it.

2. Nandroid Back-ups. I still don't think I am using it correctly. I know there is a guide, but it still seems confusing. Maybe dumb it down a little.

3. Maybe more information on fastboot. I'm not sure exactly what it is or does, seems like just another version of recovery terminal, which from everything I have learned so far, if you can't get to your recovery terminal, you probably won't be able to get to your fastboot either.
 
Maybe more information on fastboot. I'm not sure exactly what it is or does, seems like just another version of recovery terminal, which from everything I have learned so far, if you can't get to your recovery terminal, you probably won't be able to get to your fastboot either.
Actually, you can access fastboot from the bootloader, so it's available even if the recovery console isn't.
 

alritewhadeva

Senior Member
Mar 26, 2009
1,369
12
Is it possible to use ADB to push apk files to the phone when the phone is in recovery mode? I tried and it didn't work (the files I was trying to replace weren't overwritten), and I'm wondering if it's because I did something wrong, or if it just doesn't work. I have adb working fine otherwise, have used it a bunch, including to push files while the phone was booted normally.

Specifically, I want to push the calendar.apk and calendarprovider.apk (I like the 1x4 calendar widget better than the 2x2). I want to do this in recovery mode so that the calendar isn't running when the file gets overwritten. I keep having calendar problems after pushing the 1x4 widget, and I think the problems are due to the calendar being active when the file gets replaced.

In recovery, nothing is mounted. So in order to push and overwrite the calender and calenderproviders, you have to do this in recovery/adb shell

mount /system/app

After that, You should be able to push the files + overwrite them =]. QQ why do you want to do this inrecovery and not when the phone is turned on and fully functional?o_o
 

ccunningham83

Senior Member
Feb 13, 2009
234
1
Dallas
but how many times is bootloader available when recovery console isn't? I understand they are different, but from everything I have seen, if you can get one, you can get the other and if you can't get one, you cant get the other either.
 

alritewhadeva

Senior Member
Mar 26, 2009
1,369
12
First I would like to say I think the guide is great. Though I don't have a lot of use for it, but I have some suggestions to make:

1. List some ADB commands and what they do, specifically how to use them, and what you would use them for. This forum has taught me so much about my phone and linux, but sometimes it was a slow learning process. Working the ADB push/pull feature was confusing when I first started using it.

2. Nandroid Back-ups. I still don't think I am using it correctly. I know there is a guide, but it still seems confusing. Maybe dumb it down a little.

3. Maybe more information on fastboot. I'm not sure exactly what it is or does, seems like just another version of recovery terminal, which from everything I have learned so far, if you can't get to your recovery terminal, you probably won't be able to get to your fastboot either.

If you type "adb" in terminal you get a whole list of the options and what they do :) Also what part of nandroid backup don't you understand? Its just booting into recovery and alt+b. I assume you mean nandroid restores right? Drop me a PM maybe I can help you
 

alritewhadeva

Senior Member
Mar 26, 2009
1,369
12
but how many times is bootloader available when recovery console isn't? I understand they are different, but from everything I have seen, if you can get one, you can get the other and if you can't get one, you cant get the other either.

Its because the boot loader is dependent on the SPL and if you flash the "Danger" SPL which is basically the only one that causes problems, then you have a chance of bricking your phone. In that case, brick = no bootloader no recovery
 
but how many times is bootloader available when recovery console isn't? I understand they are different, but from everything I have seen, if you can get one, you can get the other and if you can't get one, you cant get the other either.
Well, actually, I recently had just this happen. My fiance got a g1, and somehow in flashing it for him, it ended up without a working recovery console. It wouldn't flash the recovery image from within the OS, so I had to use fastboot to flash the recovery image. So, it's quite possible to have a bootloader and no recovery console.
 
In recovery, nothing is mounted. So in order to push and overwrite the calender and calenderproviders, you have to do this in recovery/adb shell

mount /system/app

After that, You should be able to push the files + overwrite them =]. QQ why do you want to do this inrecovery and not when the phone is turned on and fully functional?o_o
Ah ha, that's likely the problem, thanks!

Like I said, I want to overwrite a system app, the calendar. Every time I've done this with the phone "fully functional", the app ends up constantly force closing. I suspect this might be due to corruption from overwriting the app while it's running. I'm hoping that if I replace the app when the OS isn't on, the replacement app will work properly.
 

alritewhadeva

Senior Member
Mar 26, 2009
1,369
12
No problem :) You could also try replacing the calender app in a ROM and resigin it and then flash it. Have you tried rebooting after replacing the Calender app when the phone is I quote from myself " fully functional "?
 

Top Liked Posts

  • There are no posts matching your filters.
  • 23
    Hello All!

    After much frustration with setting up ADB i finally got it working. Everyone said its simple and takes minimal knowledge but when things dont work, nothing really worked. Anyways after 2 hours of research trying to get ADB to work i finally got it all working and wanted to share my knowledge to anyone else that needed help.


    This Guide is for windows only. If you are using Mac OS X please go here: ADB For Dummies

    If you are using Linux please go here: [HOW-TO]Set up Android SDK/ADB/Fastboot on Ubuntu Linux



    Like My Guide(s)? Donate


    --------------------------------------------------------------------------

    Things you need:


    Android SDK - Download
    Winrar - Download (32bit) Download (64bit)
    Windows PC
    USB Cable
    A Rooted HTC Dream (Google G1)

    --------------------------------------------------------------------------

    Setting up the Android SDK


    Download the file from above
    Unzip to your desktop
    Take the "android-sdk-windows" folder and move it to the root of your hard drive (C:\)

    Right click on My Computer and click properties
    Select the Advanced Tab or Advanced System Setting (Vista/Windows 7)
    Select Environment Variables...
    Press New

    For Variable Name type: adb
    For Variable Value type: C:\android-sdk-windows\platform-tools

    Now,

    1. Run SDK Manager.exe located in the android-sdk-windows folder
    2. If it gives you an error go to settings and click on "Force http//....."
    3. Select all options and let it download and install

    If you cant get the setup to work, Download the USB-DRIVERS folder - HERE (Windows XP/Vista/Windows 7)

    --------------------------------------------------------------------------

    Preparing your phone for ADB

    Go to Settings on your phone
    Select Applications
    Select Development
    Make sure 'USB Debugging' is checked

    --------------------------------------------------------------------------

    Installing Drivers


    Plug in your phone through USB and DO NOT MOUNT IT!!!!!
    Your computer should see a new device and try to install Android 1.0 driver (If it doesnt, scroll down to the "Im not getting a notification of Android ADB when i plug in my USB" section)
    Let it load
    Once it cant find them select "Install drivers from my pc"
    The drivers you need are in the Android SDK 1.5r2 folder (C:\android-sdk-windows\usb_driver)
    Depending on your OS pick x86 or amd64
    You ADB Android Device should now be installed! Good Job :D

    For Android SDK 1.5r7+

    1. Run SDK Manager.exe
    2. If it gives you an error go to settings and click on "Force http//....."
    3. Select all options and let it download and install

    If you cant get the setup to work, Download the USB-DRIVERS folder - HERE (Windows XP/Vista/Windows 7)

    --------------------------------------------------------------------------

    Check if your phone is detected by ADB

    Open up Command Prompt (Go to run, type in cmd, press enter)
    Type in

    Code:
    cd C:\android-sdk-windows\platform-tools === Press Enter
    adb devices === You should see your device listed
    adb shell === you should see # in the next line

    Now you are all set to run adb commands

    Note: for a list of commands type in 'adb' in cmd

    CONGRATS YOU NOW HAVE ADB FULLY RUNNING!

    --------------------------------------------------------------------------

    Droid Explorer by Camalot

    Droid Explorer is a Windows software that will download, install, and setup the android SDK for you all in under a minute so you are ready to go. I use this on a daily basis. This amazing piece of software has tons of plugins and a built in file explorer for all your files on your phone! All you gotta do is download, install, and go!

    Download Droid Explorer - Here

    Install the program, and let it setup the SDK files for you
    Connect your phone
    Enjoy!

    --------------------------------------------------------------------------

    "Im not getting a notification of Android ADB when i plug in my USB"


    Why: Your computer has detected your phone but as a protable device and as a storage device.

    Fix: This took me a lot of research and time to figure out so this is what your are going to do.

    First download USBDeview - Here
    Unzip it
    Run USBDeview.exe as Administrator
    You will see all drivers being used on your computer
    Highlight and Uninstall all drivers with the description have HTC Android (Should be 3 of them)
    Right Click on the driver and press uninstall
    Once done, Unplug your phone and plug it back in
    You should now get the notification of the ADB device
    Follow the steps above to install the drivers

    --------------------------------------------------------------------------

    When Typing just adb in cmd you will get whats called a "usage doc" which gives you a lits of commands that you can use:

    Code:
     -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
     -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
    
    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 jdwp                     - list PIDs of processes hosting a JDWP transport
    
      adb install [-l] [-r] <file> - push this package file to the device and instal
    l it
                                     ('-l' means forward-lock the app)
                                     ('-r' means reinstall the app, keeping its data
    )
      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
    
    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 root                     - restarts adb with root permissions
    
    networking:
      adb ppp <tty> [parameters]   - Run PPP over USB.
     Note: you should not automatically start a PDP 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.

    --------------------------------------------------------------------------

    Commands that you should know


    adb push - Insert file to phone such as Stock.apk to /data/app_s
    Code:
    adb push <pathtofile.apk> <file system location> - Example: adb push c:\app.apk /data/app

    adb pull - Remove file from phone such as Stock.apk from /data/app_s
    Code:
    adb pull <pathtofile.apk> <path where you want to save it>- Example: adb pull /data/app/Stock.apk C:\

    adb install - Install app to phone

    Code:
    adb install <path to file> - Example: adb install c:/apps/apps2sd.apk

    adb uninstall - Uninstall app from phone

    Code:
    adb uninstall <name of application> - Example: adb uninstall linda.apk

    For more ADB Commands go - Here

    --------------------------------------------------------------------------

    Thats it for ADB! Congrats and if you have any questions please ask me or if anything is missing or not correct please tell me. I got all of this from research and personal experience. :D
    6
    Nandroid Backup and Restore

    Whats is a Nandroid Backup?

    Like My Guide(s)? Donate

    Nandroid Backup is a tool allowing all rooted g1 users to create a full system backup and restore which, when flashing and testing different roms can be very useful.

    ----------------------------------------------------------------------------

    What You Will Need


    A Rooted G1 phone, I suggest with the latest SPL (Guide above to install latest Radio and SPL)

    Cyanogen's Pimped Out Recovery Image 1.4 - Download (IMG)

    An SD Card with 100mb of free space
    A Computer
    SD Card reader or USB Cable

    ----------------------------------------------------------------------------

    Installing the New Recovery Image


    Download the recovery image from above, you will want the Download (IMG) download

    Place the cm-recovery-1.4.img file in the root of your SD Card (Root = not in any folder)

    Go back to your phone (Dont forget to unmount)

    Open terminal and type in the following

    Code:
    su (wait for a screen to popup and press "allow")
    flash_image recovery /sdcard/cm-recovery-1.4.img

    If you have problems with a "no space on device" error, try using fastboot and erasing first:

    Code:
    fastboot erase recovery
    fastboot flash recovery cm-recovery-1.4.img

    ----------------------------------------------------------------------------

    Creating a Backup using Nandroid 2.1


    Boot up your phone in recovery (Turn off, then turn on while holding Home button)
    You will now see your new Cyanogen 1.3.1 + JF recovery screen (YAY!!! :D)
    Scroll down to "nandroid v2.1 backup" and press on it to create your Backup
    Let it work, it should take a minute or so
    Once its done, your backup is complete and is saved on your sdcard in the "nandroid" folder


    Recovering to Your Nandroid Backup


    Option 1 (Without a Computer)

    Note: This recovery will only recover your latest nandroid backup (the one with the newest timestamp)

    Make sure u made a backup and its in the nandroid folder on your sdcard
    Boot up your phone in recovery (Turn off, then turn on while holding Home button)
    Scroll down to "restore latest backup" and press on it
    Let it work
    Once its done reboot your phone and you backup will now be restored!

    Option 2 (With a computer)

    Note: With this option, you can use any nandroid backup that you have made, not just the latest one

    1) First go in to your tools folder where you put your SDK 1.5r2 (C:\android-sdk-windows-1.5_r2\tools as reference)

    2) Take the files adb.exe fastboot.exe and AdbWinApi.dll (found here - http://sharebee.com/16a06ebb) and place them in C:\WINDOWS\system32

    3) Download the Nandroid Backup and Restore GUI made by Markazeh - Here
    Extract the folder to your desktop or where ever you can easily find it (I put mine in the SDK folder for easy access)

    4) You will need 4 files: Boot.img, System.img , Data.img, and Recovery.img
    Place those 4 files in the same folder as the Nandroid Recovery GUI folder you just extracted in step 3

    5) Boot your phone into fastboot mode (Turn off the G1 and turn on while holding the BACK button. If you have an older SPL then hold the CAMERA button and press POWER)

    6) Once in fastboot (you should see a white screen with three androids on skateboards) plug your phone to your computer via USB. You might have to press the BACK key to turn it into FASTBOOT mode, or follow the on screen prompts.

    NOTE: If you dont have the drivers installed please look one post above to setup fastboot

    7) Open NANDROID_Recovery_GUI.exe, everything on the left hand side should be "found!"

    8) Choose an option from the right to Restore All, Restore all except Recovery, or Restore Data Only. Let the program do its thing.

    Once its done you can reboot and all your info from your backup should be restored!

    ----------------------------------------------------------------------------

    Congrats! You now Backed up your phone and will/have restored it! :D

    ----------------------------------------------------------------------------

    Disclamer: I am not liable to any damage that happens to your phone. This is just a guide which you have chosen to follow, so please do not blame me for any damaged phones or bricks.
    3
    [GUIDE] Fastboot for Noobs

    Fastboot

    Like My Guide(s)? Donate

    Things you need:

    New SPL - Download
    New Radio - Download
    Your Current ROM - CyanogenMod 3.6
    SD Card Reader
    Rooted G1 Phone
    Computer
    USB Cable
    Patience

    ---------------------------------------------------------------------------------------

    Install Radio FIRST

    Download the Radio Update
    Rename it to update.zip
    Remove your SD Card from your phone and place it in your SD Card Reader
    Put the update.zip at the root of your SDcard (root = not in any folder)
    Insert your sdcard back into the phone
    Turn off your phone (Hold power and press Power Off)
    Hold the Home button and then press the power button (Keep holding power)
    You will now enter recovery
    Open up your keyboard and press Alt-S
    Let it finish the update
    When done reboot by pressing Home and Back
    You should be able to access your Home screen (If its stuck on the Google G1 screen dont panic, just remove your battery for now)

    ---------------------------------------------------------------------------------------

    Installing the new SPL

    Note: To update you must have a PVT board. To Check go into fastboot (Power and Camera and check)


    Take your SD Card out again and plug it into the pc
    Remove the update.zip that you put in there
    Download your current Rom or any other ROM that you want. I suggest CyanogenMod 3.6
    Download the SPL Update
    Rename the SPL Update to update.zip
    Remove your SD Card from your phone and place it in your SD Card Reader
    Put the update.zip at the root of your SDcard (root = not in any folder)
    Insert your sdcard back into the phone
    Turn off your phone (Hold power and press Power Off) or put your battery back in and turn it on
    Hold the Home button and then press the power button (Keep holding power)
    You will now enter recovery
    Open up your keyboard and press Alt-S
    Let it finish the update
    Now it will reboot on its own back to recovery
    Reboot again by pressing Home + Back
    Your phone will be stuck on the T-Mobile G1 Screen (Again DONT FREAK)
    Remove the battery from your phone
    Remove your SD Card and plug it back into your computer
    Take the ROM that you downloaded and rename it update.zip
    Remove the update.zip that was on your SD Card and put this new one it
    Put the battery back into your phone
    Enter recovery (Home + Power)
    Press Alt+s to update
    Let it finish
    Press Home + Back to reboot
    Thats it! You now have your new SPL and Radio

    ---------------------------------------------------------------------------------------

    Getting into Fastboot

    Turn off your phone
    Hold the back button and keep holding it while turning your phone back on
    You should see 3 Android guys on skateboards
    You should now be in Fastboot mode!

    ---------------------------------------------------------------------------------------

    Setting up fastboot to work with your computer

    Plug your phone in to your computer through USB
    You should get a popup that your computer found the ADB Device for fastboot
    When it asks you for drivers, make sure u select the option to locate the drivers from your computer yourself
    Since you already have your Android 1.5r2 SDK installed, the drivers are in the same place where the ADB drivers are
    C:\android-sdk-windows-1.5_r2\usb_driver
    Make sure you choose the correct folder depending on your OS
    Press ok to install the drivers
    Fastboot should now be up and running

    ---------------------------------------------------------------------------------------

    Make sure Fastboot is working

    Open up Command Prompt
    type the following

    Code:
    cd C:\android-sdk-windows-1.5_r2\tools === Press Enter
    fastboot devices === Press enter, your device should be listed
    fastboot shell === You should see a # in the next line

    type fastboot and press enter for general commands

    ---------------------------------------------------------------------------------------

    When Typing just fastboot in cmd you will get whats called a "usage doc" which gives you a lits of commands that you can use:

    Code:
    usage: fastboot [ <option> ] <command>
     
    commands:
      update <filename>                        reflash device from update.zip
      flashall                                 'flash boot' + 'flash system'
      flash <partition> [ <filename> ]         write a file to a flash partition
      erase <partition>                        erase a flash partition
      getvar <variable>                        display a bootloader variable
      boot <kernel> [ <ramdisk> ]              download and boot kernel
      flash:raw boot <kernel> [ <ramdisk> ]    create bootimage and flash it
      devices                                  list all connected devices
      reboot                                   reboot device normally
      reboot-bootloader                        reboot device into bootloader
     
    options:
      -w                                       erase userdata and cache
      -s <serial number>                       specify device serial number
      -p <product>                             specify product name
      -c <cmdline>                             override kernel commandline

    For more fastboot Commands go - Here

    ---------------------------------------------------------------------------------------

    Congrats! You now have Fastboot and ADB up and running!!! :D

    ----------------------------------------------------------------------------

    Disclamer: I am not liable to any damage that happens to your phone. This is just a guide which you have chosen to follow, so please do not blame me for any damaged phones or bricks.
    1
    First of all, there is no such command as 'fastboot shell' only 'adb shell'. Fastboot commands are used to flash images to certain paritions in the phone's memory.

    Thanks for clarifying that. I asked the same thing on the 5th. See the quote below from the OP for the source of our confusion.

    Make sure Fastboot is working

    Open up Command Prompt
    type the following

    Code:
    cd C:\android-sdk-windows-1.5_r2\tools === Press Enter
    fastboot devices === Press enter, your device should be listed
    fastboot shell === You should see a # in the next line

    type fastboot and press enter for general commands

    ---------------------------------------------------------------------------------------
    1
    Pc does not recognize fastboot mode on device

    Hey guys I've been bumping my head for a while trying to update my phone to radio 2.22.27.08 and hboot 1.33.0013d. I currently have adb and fastboot installed on my laptop. Currently I have hboot 1.33.2005 and radio 2.22.23.02 running biffmod 2.1 on my magic 32b(G1).

    When I go into "adb devices" it lists my device, but when I go to "fastboot devices" it just prompts back "C:\android-sdk_r09-windows\tools.

    I've tried uninstalling the driver and then reinstalling the usb driver while in fastboot mode and it accepts it, however when I type in "fastboot devices" it just begins the prompt over again (C:\android-sdk_r09-windows\tools). If I type "fastboot" it lists the commands. If I type in "fastboot flash radio radio-2.22.27.08.img" while in fastboot mode on the phone it just says "waiting for device" on my pc.

    I have both the hboot image and the radio image in the same tools folder on my computer. Heck I even put them on the sd card.

    I've been searching around the forum for the past few days but still no dice resolving this. I've even tried the new tool "Easy fastboot for most htc devices" but it still says "waiting for device..." Which leads me to believe there is a problem with the pc not recognizing the phone in fastboot mode. :confused:

    Any and all help is appreciated

    LB FAM