How To Set Up ADB/USB Drivers for Android Devices (Updated 07/15/14)

So most people won’t have to use ADB (Android Debug Bridge) ever, but if you want to learn how or want to get a little more technical with your Android phone, here’s how to get it set up.

I. Setting Up The SDK

1. Head to the Android SDK site.

Android SDK

2. Click on Get the SDK for an Existing IDE > Download the Stand Alone SDK for Windows.

3. Check that you agree to the terms and click Download the Stand Alone SDK for Windows.

4. Save it to your Desktop.

5. Double click the exe file you just downloaded and follow the prompts.

6. When asked to Choose the Install Location, make sure it is c:\android-sdk\ in the text field before hitting Next.

7. Continue until it installs and then check the box that says Start SDK Manager and hit Finish.

8. When it opens, check off Tools (and make sure it selects everything underneath it) then hit Install X Packages.

9. Accept the any licenses it asks you to and let it continue until it installs everything (might take a while).

10. Open File Explorer and go to  C: > android-sdk > platform-tools.

11. Hold shift on your keyboard and right-click in a blank spot inside the platform-tools folder and select Open Command Window Here.

12. Plug your device in via USB cable and wait for it to install drivers.

13. Type the following into the command prompt window (hitting enter at the end of every line):

adb devices

You should see a serial number pop up, it’s the serial number of your phone. This means you are all set!

If you do NOT see a serial number, then we need to reinstall the drivers manually in Section II below.

II. If Drivers Won’t Install Automatically, Use These Installers Below to Do It Manually

1. A program called PDANet (used normally to allow you to wired tether your phone’s internet to your computer) can be used to install the ADB drivers for a lot of phones. Download it and follow it’s instructions to install it then go back to step 8 in Section I above and see if that gets you the serial number (if you do, you are all done). If not, then use one of the device specific programs below in step 2.

PDANet

2. Download your phone’s driver’s below then goto your Device Manager on your computer, look for the phone and click on it. Then click Properties > Update Driver > Browse > Let me pick > Computer > Have Disk > Browse > Then select the driver you downloaded below:

Universal ADB Drivers (by Koush)

Universal Motorola Drivers (unzip the file once you download it, and run the program inside to install the drivers)(Updated 09.27.10)

If using a Samsung device, try downloading Samsung Kies and installing that then plugging in your device and trying again.

III. (Optional) Reinstall Drivers (If they did not install properly in Section I or II)

1. Download USBDeview

USBDeview

2. While the phone is still plugged in, open USBDeview and sort by manufacturer. Find all the HTC drivers and delete them all.

3. Once all have been deleted, unplug the phone from the USB cable and plug it back in.

4. The correct drivers should reinstall automatically (check the drivers as they are installing, one should say ADB Device driver).

5. To check, goto Devices (or Device Manager for older versions of Windows) in your Start menu then click on the “Android Phone”. Click on the Hardware tab, and check the list of drivers for ADB Interface under Type.

IV. (Optional) Install Fastboot

1. Download fastboot.exe and save it to your computer.

Fastboot (UPDATED 03.23.13)

2. Unzip it, then copy the fastboot.exe file into the platform-tools folder of your Android SDK.

3. Now, you can type fastboot commands in command prompt in the same place you typed adb commands.

V. Some Common ADB/Fastboot Commands

ADB Commands

adb devices – lists which devices are currently attached to your computer
adb install <packagename.apk> – lets you install an Android application on your phone
adb remount – Remounts your system in write mode – this lets you alter system files on your phone using ADB
adb push <localfile> <location on your phone> – lets you upload files to your phones filesystem
adb pull <location on your phone> <localfile> – lets you download files off your phones filesystem
adb logcat – starts dumping debugging information from your handset to the console – useful for debugging your apps
adb shell <command> – drops you into a basic linux command shell on your phone with no parameters, or lets you run commands directly

adb devices – lists which devices are currently attached to your computer

adb install <packagename.apk> – lets you install an Android application on your phone

adb remount – Remounts your system in write mode – this lets you alter system files on your phone using ADB

adb push <localfile> <location on your phone> – lets you upload files to your phones filesystem

adb pull <location on your phone> <localfile> – lets you download files off your phones filesystem

adb logcat – starts dumping debugging information from your handset to the console – useful for debugging your apps

adb shell <command> – drops you into a basic linux command shell on your phone with no parameters, or lets you run commands directly

Fastboot Commands

fastboot devices – lists which devices in fastboot mode are currently attached to your computer

fastboot boot <filename> – boots a rom stored on your pc specified by the filename

fastboot flash <partition> <filename> – flashes a rom stored on your PC, partition can be one of {boot, recovery, system, userdata}

fastboot update zip <zip filename> – updates the phone with a ROM stored on the PC.

  • Paul

    i’m on a mac, and i cant do the command prompt thing
    help???

    • http://theunlockr.com TheUnlockr

      Paul,

      Use Terminal. Same thing.

  • Pingback: How To: Root Your Phone From Stock FRF91 - Page 2 - Nexus One Forum - Google Phone Forum

  • drew

    I have all usb drives but i keep getting sgh-t939 not the serial number what am i doing wrong?

  • Kris

    I cant set up ADB fully. a box that says ”refresh sources” pops out and in the txt box it says ”Failed to fetch URL https://dl-ssl.google.com/android/repository/repository.xml, reason: HTTPS SSL error. You might want to force download through HTTP in the settings.” I have windows 7 and my phone is an HTC Legend PLEASE HELP!!!!

    • AF

      Hi, same problem as Kris…………..

    • Joshua Servin

      After the message comes up where it says it failed to fetch URL, close the window and then cancel on the next window. And now on the left, click settings. On the bottom, under “Misc” check the box that says “Force https://…”. Close the program and reboot. Hope it helps :D

  • Muckway

    Ok, So I thought I had done this install the ADB correctly. When I ran the cmd menu and the Serial number is suppoed to show up it came up the t939 and I thought I was set. Now no matter where I plug it in it cannot read the device. on top of that it fails to install the driver (manually or automatically) even if I run SDK setup.. Help? I can no longer access my phone at all unless I take out my memory card and plug it in seperate..

  • Pingback: How to root your Samsung Vibrant or Captivate | The Android Site

  • Pingback: Planet Android » Blog Archive » How to root your Samsung Vibrant or Captivate

  • Pingback: How-To: Make a Goldcard and Root a HTC Desire | r3dux.org

  • Raf

    I can’t install the drivers for my HTC.
    It is a HTC Desire, and when I plug it in it says i reqiure a disc which should have come with my phone. but no disc came with it, What should I do?

  • Pingback: How To: Unlock NAND on the HTC Evo 4G | TheUnlockr

  • Bilson

    Hey Unlockr,
    I have a Samsung Behold 2 and running on Window Vista 32bit.
    I tried by follow the step by step but the Serial number did not show up, the USB Debugging is on and installed the driver manually and automatically, download the USBDeview and tried….still no luck! Does it matter if I have a data plan or not? Not sure what I did wrong…

    Can you or anyone provide any help on this?
    Thank You

  • Pingback: Droid X Rooted! Thanks to Birdman and friends! | SmackBox.org

  • Pingback: Samsung Captivate (Galaxy S) Gets Rooted Too, Here’s How You Do It [AT&T’s Samsung Captivate Can be Rooted Too Just Like Any Hot Android Smartphone] » TFTS – Technology, Gadgets & Curiosities

  • Roxanne

    How can I do all this on linux??
    I’m new to linux so I know NOTHING about it…
    HELP :\

  • Joel

    It still says “List of devices attached” and nothing below it. i followed all the steps, please help me.

  • Erick

    The behold 2 doesn’t have HTC on the USB Files..

    So do we still have to erase something?

    cause im not getting the serial number. :/

  • Erick

    Do one for behold 2 cause i don’t think everything is the same for behold as G1… >.<

  • http://perl.lt algirdas

    drivers (android-sdk) for nexus one are available at http://developer.android.com/sdk/win-usb.html

  • http://theunlockr.com/2009/10/06/how-to-set-up-adb-usb-drivers-for-android-devices/ Phill Wisniewski

    HELP ! this doesnt wok on any of my windows. p.s or my macbook. Do you need to do this to have ROMS themes ? and this guy told me not to do this it can screw up your android badly HELPPPPPP!

    • http://theunlockr.com TheUnlockr

      Phil,

      1. This cannot screw up your phone. It doesn’t touch your phone its a tool for developers to communicate with their phone and create applications…
      2. You need to click How Tis at the top of the site, then Android then your phone. Do the How To Root then How To Load a ROM. After that you can change your phones themes etc

  • Devin

    I’ve tried this process three times even after reinstalling the drivers of my phone and also redownloading the sdk file and I can’t get my computer to pull up the serial number. I am using windows xp and I did the “How To: Root my HTC Evo” before this. Will that cause the error I am having or what is it exactly I’m doing wrong? I’m just trying to get the Nand so I can download the Cyanogan ROM.

    • http://theunlockr.com TheUnlockr

      Devin,

      Make sure USB Debugging is checked ON in Settings > Applications > Development.