40

I've searched on the web about this problem and it's usually solved by installing the appropriate drivers. Problem is I'm on a Mac.

When I plug in my device, it can be discovered when I run adb devices. I run adb reload bootloader and it goes into download mode (the mode you get when you hold Volume Down + Home button when powering up). Is this correct? I assume it is.

Anyway, when it is in this stage, adb devices or fastboot devices yields nothing.

I have tested this on i9100 and i9505.

radj
  • 575
  • 2
  • 5
  • 7
  • Related: fastboot doesn't see device / adb can find device but fastboot cannot / adb devices show phone in debug mod but not in fastboot mod / fastboot does not discover my device. At least some of the questions/answers are Unix/Linux based, so they should give you a clue or even more for Mac as well. – Izzy Dec 03 '13 at 10:33
  • 1
    I've seen some of those QA links before. Maybe I should have mentioned them in the question. Link 1: Windows driver related. Link 2: resolved itself after restart and symlink creation. Didn't help in my case. Link 3 & 4: involving udev/rules which doesn't exist on Mac :( Have to check into diskutil since a search mentions this is an alternative on Mac. – radj Dec 04 '13 at 02:11
  • adb devices won't yield anything coz your mobile is in fastboot mode and fastboot devices alone also won't yield anything. You've to add sudo before the fastboot command. So, typing sudo fastboot devices in the fastboot will work. It worked for me. Hope it works for you also. – Ibungo Jul 26 '19 at 07:59
  • In my case on Ubuntu 20.04, it was a USB 3.0 port problem. It was detect device with fastboot devices but other commands does not has a response. My laptop hasn't got a USB 2.0 port. Then I disabled internal USB 3.0 support in my BIOS and now fastboot is working normally. But all USB 3.0 support is stopped. It seems USB 2.0 hub is the better option. I will set back the BIOS setting later. – Almas Dusal Oct 16 '22 at 04:59

8 Answers8

25

To make the system recognize the Android device, in their several modes, one needs to set permissions for his user in udev.

You need to repeat this process of loading Android udev IDs, for every mode the phone has (operating system, bootloader or recovery) because they have different USB IDs

# reboot into fastboot mode
adb reboot bootloader

# grab you fastboot/bootloader device ids
lsusb
> Bus 001 Device 035: ID **18d1:d00d** Google Inc.

# install the ids into /etc/udev/rules.d/99-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="d00d", MODE="0666", OWNER="thiago"

# restart udev
/etc/init.d/udev restart

# try fastboot (only on bootloader mode)
fastboot devices
Andrew T.
  • 15,988
  • 10
  • 74
  • 123
Thiago Macedo
  • 361
  • 3
  • 5
  • 1
    Do you not mean 51 -android.rules? – nderjung Jun 19 '14 at 16:02
  • 2
    @falcontoast the number just change the order of loading. For simplicity use the one you already have installed (if any) – Thiago Macedo Jun 19 '14 at 18:47
  • Ah, I had 51 there already. I have the same issue as OP, but your method doesn't work I'm afraid ): – nderjung Jun 19 '14 at 19:01
  • My method shows how to make the system reconize the android device and set permissions. In fact, with sudo you could overcome the problem without modifications. But if your device still not online even with permission, maybe is due to corrupt firmware. Also make sure drivers is updated. What is the current state of your device? – Thiago Macedo Jun 19 '14 at 21:06
  • Using sudo renders fastboot as an unrecognised command. I am using the Samsung Tab 10.1 (GT-P7500) with no modifications to the firmware at all, it's pretty much out of the box. – nderjung Jun 19 '14 at 21:37
  • Make sure you are in bootloader mode, not recovery mode: adb reboot bootloader. Find fastboot binary and run with sudo: which fastboot > /Users/name/bin/fastboot. sudo /Users/name/bin/fastboot. If you have android-sdk, try also android update. – Thiago Macedo Jun 19 '14 at 21:52
  • Running adb reboot bootloader just turns off my device... Also, I only have two modes when turning on the device using the key combinations: recovery and downloading mode. – nderjung Jun 19 '14 at 22:23
  • recovery usually doest have fastboot enabled. you could try download mode. In either case, you must enter the device mode, issue lsusb and configure android.rules in udev – Thiago Macedo Jun 20 '14 at 03:41
  • It just appears as if fastboot is not working on my device(?) because running fastboot devices prompts with nothing (adb devices does though). Additionally, I have configured android.rules. – nderjung Jun 20 '14 at 12:12
  • 1
    Just to make clear, if adb devices shows something the device isn`t in bootloader cause it does not have adb daemon in that mode. – Thiago Macedo Jun 27 '14 at 07:37
  • True, however, when I boot it into the mode where I am able to select between recovery mode and downloading mode, fastboot still doesn't show anything. – nderjung Jun 27 '14 at 12:35
  • Not working, the rule only sets the owner ? – Pieter Jan 09 '16 at 19:43
  • 1
    http://developer.android.com/tools/device.html – Gelldur Jan 26 '16 at 15:42
  • once again a length udev saves the day, where a simple sudo chown [username] /dev/bus/usb/[xxx]/[yyy] ([xxx],[yyy] corresponding to the output of lsusb) would be much too complicated ;) – humanityANDpeace Feb 23 '16 at 17:21
  • It's not showing Bus 001 Device 035: ID 18d1:d00d** Google Inc** instead listing showing list of other include intel_Corp. and other. Anything I'm missing. Please suggest. – CoDe Mar 09 '16 at 05:55
  • Any equivalent on Windows? – Kidburla Aug 25 '23 at 10:51
16

Personally I had to run fastboot as root/sudo for fastboot to detect the device. I tried this on Linux as I don't own a Mac, but it's *NIX anyway ;)

p1xel
  • 317
  • 1
  • 8
  • +1. Just spent 2 hours banging my head against a keyboard trying to figure out why I couldn't flash Android M. – 0xcaff Nov 26 '15 at 04:12
  • 1
    sure running fastboot as root would solve the issue to access the dev/bus/usb/xxx/yyy character device that represents the android phone/tablet device. One can also use a sudo chown username /dev/bus/usb/xxx/yyy to make the device accessible to the user. In case one distrusts the fastboot executable. – humanityANDpeace Feb 23 '16 at 17:18
15

For future reference, this was my related case (involving a Nexus 4):

I tried to bring my phone back to the original state (bootloader locked + stock rom).

Now fastboot devices did not show the device where adb device did, until I put the phone in fastboot mode (this makes sense, but took me a while to figure out...)

To put the Nexus 4 in fastboot mode:

  • Power off the Nexus 4.
  • Press and hold the Volume Up, Volume Down and Power buttons

Now fastboot devices found my phone and the restore could continue :-)

geffchang
  • 17,565
  • 18
  • 57
  • 73
beeman
  • 251
  • 1
  • 4
  • 1
    +1 ah, didn't realise it required fastboot mode and that that was where it shows the bootloader screen – barlop Aug 16 '14 at 18:28
9

I had the same problem with InFocus M512, recognized by adb but not by fastboot when in download mode.

I've found that specifying vendor ID with -i works (0xID). fastboot -i 0x0489 worked for me.

Andrew T.
  • 15,988
  • 10
  • 74
  • 123
3

I was facing this problem for two days, and I solved installing the USB driver for my phone LG G3 on my Mac Yosemite. I downloaded the file LGMobileMacDriver_v5.0.zip and installed it and than adb devices just worked.

You can try to install the USB driver of your phone, maybe it'll help.

Best,

3

I am on MAC Sierra facing same problem. The actual problem is with fastboot that I was using. It was an older version. So, I have downloaded android sdk and took fastboot from platform-tools of it and got it working for my Infocus bingo 21 m430.

user204340
  • 31
  • 1
3

I use macbook and encountered exactly the same problem.

Finally I successfully flash my phone (Flame).

The key is to enter "Fastboot mode" by pressing down Volume Down and Power buttons together(Detail is in the section of official guide).

When you're in Fastboot mode and your device is connected to computer, run fastboot devices again. This time the device is detected.

cades kao
  • 31
  • 2
2

First, put your mobile in the fastboot mode, then type command sudo fastboot devices in terminal and your device will be detected. Adding sudo worked for me.

Typing fastboot devices without sudo didn't worked for me. So, I think sudo is a must for fastboot to detect our devices.

Hope it works out for you guys also.

Ibungo
  • 165
  • 2
  • 11