35

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.

  • 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 3 '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 4 '13 at 2: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 at 7:59
22

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
  • 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
  • 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 7:37
  • 1
17

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 ;)

  • +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 4: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
13

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

  • +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
7

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.

  • How do you get the vendor ID? – IgorGanapolsky Sep 18 '16 at 22:37
  • 2
    @IgorG. run lsusb and find the number like ID 0489:123d. – naXa Aug 5 '17 at 10:08
  • 1
    is it possible to avoid this? I have an executable which uses fastboot internally without the -i option and it is not able to find the device. – psykid May 22 at 7:08
1

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.

1

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,

1

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.

0

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.

Not the answer you're looking for? Browse other questions tagged or ask your own question.