After building a system image to root the ASUS MemoPad FHD 10, I am fed up with having to wait almost 15 minutes for Windoze to boot up and shut down so I can run fastboot to flash the image file. So, I've been on a quest to get adb and fastboot working with Ubuntu so I don't have to deal with stupid Windoze.
Using lnusb, tablet has different vendor:device ids when regular booted and usb debug on (adb mode) and when bootloader/recovery booted with fastboot waiting for command.
Tablet mounts using 'go-mtpfs' so I can work with internal/external SDcards.
Tablet displays with 'adb devices' (normal boot) as Medfield9A65CCEC (also shows this with Windoze fastboot devices)
Tablet doesn't display with 'fastboot devices' (bootloader/recovery boot)
51-android.rules file to recognize both vendor ids:
Code:
# ASUS MemoPad FHD 10 32Mb
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666", GROUP="plugdev", OWNER="Me" # MTP mode with USB debug on
SUBSYSTEM=="usb", ATTR(idVendor}=="8087", MODE="0666", GROUP="plugdev", OWNER="Me" # fastboot mode
Tried downloading a different fastboot binary, same results.
At this point I am stumped why adb works but fastboot does not. fastboot works fine in Windoze.
More Info
After some more research, I found this:
http://packages.ubuntu.com/raring/i386/android-tools-fastboot/filelist
which shows a rules file in /lib/udev/rules.d/70-android-tools-fastboot.rules
so I looked in /lib/udev/rules.d and found the rules file: 51-android-rules.rules with loads of entries
and not /etc/udev/rules.d/51-android-rules.rules as most discussions refer to
so I modified the ASUS section to this:
Code:
# Asus MemoPad FHD 10 (Intel)
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", ATTR{idProduct}=="521f", SYMLINK+="android_adb"
SUBSYSTEM=="usb", ATTR{idVendor}=="8087", ATTR{idProduct}=="09ef", SYMLINK+="android_fastboot"
#SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0660", GROUP="adbusers"
#SUBSYSTEM=="usb", ATTR{idVendor}=="8087", MODE="0660", GROUP="adbusers"
If I comment out the first two lines and use #3&4 syslog shows an error - udevd[3982]: specified group 'adbusers' unknown
If I use the first two lines and comment out #3&4 (as shown above) syslog shows:
Code:
Dec 20 14:45:48 kernel: [25297.608132] usb 2-1: new high-speed USB device number 11 using ehci-pci
Dec 20 14:45:48 kernel: [25297.745240] usb 2-1: New USB device found, idVendor=8087, idProduct=09ef
Dec 20 14:45:48 kernel: [25297.745252] usb 2-1: New USB device strings: Mfr=2, Product=3, SerialNumber=4
Dec 20 14:45:48 kernel: [25297.745260] usb 2-1: Product: Android-Phone
Dec 20 14:45:48 kernel: [25297.745268] usb 2-1: Manufacturer: Android
Dec 20 14:45:48 kernel: [25297.745275] usb 2-1: SerialNumber: Medfield9A65CCEC
Dec 20 14:45:48 mtp-probe: checking bus 2, device 11: "/sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1"
Dec 20 14:45:48 mtp-probe: bus: 2, device: 11 was not an MTP device
There are no errors, so the rules file in /lib/udev/rules.d and not /etc/udev/rules.d is being used
Also interesting is that lsusb shows:
Bus 002 Device 011: ID 8087:09ef Intel Corp.
...which is a different Vendor ID
However, even with the correct rules file set and no syslog errors on USB connect, fastboot still refuses to recognize the device when connected in fastboot mode.
I have also tried fastboot i 0x8087 reboot and fastboot -sMedfield9A65CCEC reboot and it just waits for device.
It may be possible that fastboot doesn't like the Intel and is looking for ARM, not sure - although Windoze version of fastboot works fine.
On Archlinux I have the same problem
sudo adb devices works, fastboot fails with <Waiting for device>
but in fastboot mode nothing works at all
Same problem in Ubuntu 14.04 for Kindle Fire
I know this thread has been dormant for a while, but it's pretty much the only hit that comes up when searching on how to setup the /lib/udev/rules.d/70-android-tools-fastboot.rules to get device to mount in fastboot properly.
I had followed some other guides like the OP that said to put rules in the /etc/udev/rules.d/51-android-devices.rules which didn't work at all. I do not have a file /lib/udev/rules.d/51-android-devices..rules
I am having issues similar to the OP with a Kindle Fire Gen2. Device shows up when in Adb mode, but not in fastboot (using factory "fastboot" cable).
Was there ever a resolution to this issue?
Anybody have a source of documentation on how these config files need to be set up when in fastboot mode to gain access and/or get a trusted connection in MTP?
Related
I am trying to set up an Ubuntu environment using VirtualBox on my Win7 host but I'm unable to pass my USB-connected Infuse through from the host to Ubuntu. Running adb devices from Ubuntu just outputs "List of devices attached" with no devices listed (my Infuse DOES show when running this out of my Win7 host).
I followed these directions here to set up my udev rules,
http://forum.xda-developers.com/showthread.php?t=570452g
using the below settings in my /etc/udev/rules.d/51-android.rules file but I'm not able to ever see my Infuse when executing the adb command:
1st failed try:
SUBSYSTEM=="usb", ATTR{idVendor}=="04E8", MODE="0666", GROUP="plugdev"
2nd failed try:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="04E8", ATTRS{idProduct}=="681D", MODE="0666", OWNER="<your user name>" #Mass Storage Samsung Infuse 4G
SUBSYSTEMS=="usb", ATTRS{idVendor}=="04E8", ATTRS{idProduct}=="681C", MODE="0666", OWNER="<your user name>" #Debug Samsung Infuse 4G
3rd failed try:
SUBSYSTEMS=="usb", ATTRS{idVendor}=="80ee", ATTRS{idProduct}=="0021", MODE="0666", OWNER="<your user name>" #Debug Samsung Infuse 4G
I got these various Vendor and Product IDs by hovering over the "SAMSUNG_Android [0400]" USB Device Filter (after clicking the green '+' button in the USB section of the Settings menu in VirtualBox:
When connected in Debug mode:
Vendor ID: 04E8
Product ID: 681C
Revision: 0400
Serial No.: I997********
State: Busy
When connected in Mass Storage mode:
Vendor ID: 04E8
Product ID: 681D
Revision: 0400
Serial No.: I997********
State: Busy
VirtualBox hover over Unknown device 04E8:6877 [0400] when in Kies mode:
Vendor ID: 04E8
Product ID: 6877
Revision: 0400
State: Busy
I got the settings for the 3rd try after running lsusb and getting this output:
lsusb command when connected in Debug mode:
Bus 002 Device 002: ID 80ee:0021
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Any idea what I'm doing wrong?
Thanks
I could mount my Gnex under Archlinux using gvfs-gphoto2, but I tried it with the Acer 700 and still have no luck. Have somebody successfully mount the sdcard under Linux using any mtp-file transfer?
In Windows it was no problem, but normally I boot Windows only if I have to, so it would be nice, if someone has a workaround for me
Anyone? I`m now on gentoo and have the same problem. Gnex is mounting fine and Acer doesn`t.
I want to fix the problem now and will collect all the information I need to sort this one out!
Here`s the dmesg output:
[14170.686330] usb 1-1.1: New USB device found, idVendor=0502, idProduct=3376
[14170.686334] usb 1-1.1: New USB device strings: Mfr=2, Product=3, SerialNumber=x
[14170.686336] usb 1-1.1: Product: Acer Iconia Tab A700
[14170.686339] usb 1-1.1: Manufacturer: Acer
[14170.686341] usb 1-1.1: SerialNumber: xxxxxxxxxxxx
lsb output:
gentoo-htpc ~ # lsusb
Bus 001 Device 006: ID 0502:3376 Acer, Inc.
Maybe an udev rule will fix it.
I will search further. If anyone have an idea to fix it, then please post it here in this thread. Big thx
Edit: Ok I`ve made a progress.
I emerged mtpfs, created a udev rule, which looks like this:
/etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
and add the following line to the /etc/fstab:
mtpfs /media/a700 fuse user,noauto,allow_other 0 0
Now I could see the A700 in nautilus but the Internal storage is empty... Hmmmm
Any suggestions?
Hi all, my Infinity is running on CWM and the CROMI. Just to make sure I have a safety net, I am trying to get access with fastboot to the device. Originally I have installed the CWM by dd'ing the image on the device itself. All the PC systems I have access to are running Linux, so Windows is no option for me.
I have the fastboot binary for Linux and my other Android device -a HTC HD2- can be accessed via fastboot. This makes me believe the PC side of the story is ok. Now, when I start my Infinity with the Volume minus key pressed, then hit Volume minus two more times and then Volume plus, there is a message saying "Starting Fastboot USB download protocol". The device is not recognized from my PC though. I checked with
Code:
fastboot devices
.. and simply nothing happens. The command returns without any message or error. When I plug into USB, this are the log messages:
Code:
kernel: [11222.200068] usb 1-1.3: new high-speed USB device number 14 using ehci_hcd
kernel: [11222.286798] usb 1-1.3: New USB device found, idVendor=0b05, idProduct=4daf
kernel: [11222.286808] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
kernel: [11222.286814] usb 1-1.3: Product: Fastboot
kernel: [11222.286818] usb 1-1.3: Manufacturer: ASUSTeK COMPUTER INC.
[11222.286823] usb 1-1.3: SerialNumber: xxxxxxxxxxxxx
mtp-probe: checking bus 1, device 14: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3"
mtp-probe: bus: 1, device: 14 was not an MTP device
Here comes my question. What do I have to expect on the screen of the Infinity when fastboot is active? Is "Starting Fastboot USB download protocol" ok? Taken literally this does not imply it's ready to be used. Do the log messages look ok?
I additionally have tried to enhance my udev rules file. There are a lot of descriptions all over the place, unfortunately they are contradicting in places. Any help is highly appreciated. Thanks!
The message that the fastboot protocol had started was the only thing I ever saw happen on the screen. The rest is in the terminal/command line window.
-that recently remarked that the manufacturer's code was no longer necessary (from JB bootloaders and onwards). You might need to add it in your case. <?> (I always forget what it is, but you can most easily look it up in the recovery flashing threads (esp. the CWM ones). "-i ..."
)
MartyHulskemper said:
The message that the fastboot protocol had started was the only thing I ever saw happen on the screen. The rest is in the terminal/command line window.
-that recently remarked that the manufacturer's code was no longer necessary (from JB bootloaders and onwards). You might need to add it in your case. <?> (I always forget what it is, but you can most easily look it up in the recovery flashing threads (esp. the CWM ones). "-i ..."
)
Click to expand...
Click to collapse
Thanks for replying. Well, maybe I was overly sensitive here because it was not working. However, the message on the Infinity says it's "starting" and not that it "has started".
Encouraged by your reply I tried something different. Instead of trying to check with the "devices" command, I simply tried to re-flash the recovery. To my amazement and pleasure it simply worked Now I feel prepared for any flashing adventure the future may bring! On a lighter note, I find it strange that the devices command doesn't work. To me that seemed to be the most "harmless" command to check the fastboot setup. My HD2 also reacts different on the devices command.
Bottom line, the fastboot devices command seems not to be suitable to do the check I wanted. Thanks for your help!
FordPrefect said:
TBottom line, the fastboot devices command seems not to be suitable to do the check I wanted.
Click to expand...
Click to collapse
It works for me:
Code:
[email protected] ~ $ lsusb|grep ASUS
Bus 002 Device 066: ID 0b05:4daf ASUSTek Computer, Inc. Transformer Pad Infinity TF700 (Fastboot)
[email protected] ~ $ fastboot devices
015e3aabe751ed14 fastboot
[email protected] ~ $ fastboot continue
resuming boot...
OKAY [ 0.000s]
finished. total time: 0.001s
(then the tablet says "Cold Booting Linux" and does exactly that)
Here are my udev rules:
Code:
# Transformer TF700
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b05", ATTRS{idProduct}=="4c90", GROUP="plugdev", MODE="0660" # normal
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b05", ATTRS{idProduct}=="4c91", GROUP="plugdev", MODE="0660" # USB Debugging
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b05", ATTRS{idProduct}=="4daf", GROUP="plugdev", MODE="0660" # Fastboot
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7030", GROUP="plugdev", MODE="0660" # Tegra APX
_that said:
It works for me:
Code:
[email protected] ~ $ lsusb|grep ASUS
Bus 002 Device 066: ID 0b05:4daf ASUSTek Computer, Inc. Transformer Pad Infinity TF700 (Fastboot)
[email protected] ~ $ fastboot devices
015e3aabe751ed14 fastboot
[email protected] ~ $ fastboot continue
resuming boot...
OKAY [ 0.000s]
finished. total time: 0.001s
(then the tablet says "Cold Booting Linux" and does exactly that)
Here are my udev rules:
Code:
# Transformer TF700
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b05", ATTRS{idProduct}=="4c90", GROUP="plugdev", MODE="0660" # normal
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b05", ATTRS{idProduct}=="4c91", GROUP="plugdev", MODE="0660" # USB Debugging
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0b05", ATTRS{idProduct}=="4daf", GROUP="plugdev", MODE="0660" # Fastboot
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0955", ATTRS{idProduct}=="7030", GROUP="plugdev", MODE="0660" # Tegra APX
Click to expand...
Click to collapse
Thanks for supplying your udev rules. I adjusted mine following your example. Still shows nothing with the devices command. Also for flashing I have to supply the manufacturer code, which I have read somewhere wouldn't be needed any more. Anyway, flashing recovery works for me now, and that's what I wanted to achieve.
ADB flatly refuses to recognise my Xoom MZ601.
I run ADB on my Debian Linux computer and it recognises my LG Optimus 2x (P990) which appears in the list provided by 'adb devices' the same command with my Xoom produces 'List of devices attached' with nothing underneath. The USB Debug setting on the Xoom is ticked and the computer recognises the device. The computer's log shows:
Jun 24 12:10:37 dataman1 kernel: [3605717.696244] usb 1-7.2: new high-speed USB device number 67 using ehci_hcd
Jun 24 12:10:37 dataman1 kernel: [3605717.800363] usb 1-7.2: unable to read config index 0 descriptor/start: -71
Jun 24 12:10:37 dataman1 kernel: [3605717.800368] usb 1-7.2: chopping to 0 config(s)
Jun 24 12:10:37 dataman1 kernel: [3605717.807734] usb 1-7.2: New USB device found, idVendor=22b8, idProduct=70a8
Jun 24 12:10:37 dataman1 kernel: [3605717.807739] usb 1-7.2: New USB device strings: Mfr=2, Product=3, SerialNumber=4
Jun 24 12:10:37 dataman1 kernel: [3605717.807742] usb 1-7.2: Product: MZ600
Jun 24 12:10:37 dataman1 kernel: [3605717.807745] usb 1-7.2: Manufacturer: Motorola
Jun 24 12:10:37 dataman1 kernel: [3605717.807748] usb 1-7.2: SerialNumber: xxxxxxxxxxxxxxxxx
Jun 24 12:10:37 dataman1 kernel: [3605717.807878] usb 1-7.2: no configuration chosen from 0 choices
{The serial number has been changed to protect the innocent }
The udev 51-android.rules shows:
# LG Optimus 2x
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="1004", ATTRS{idProduct}=="618e", SYMLINK+="libmtp-%k", MODE="0666"
# Xoom
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTRS{idProduct}=="70a9", SYMLINK+="libmtp-%k", MODE="0666"
# Bootloader
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666"
I have run out of ideas. I am hoping to root the Xoom soon so any suggestions would be greatly appreciated.
BarrySamuels said:
ADB flatly refuses to recognise my Xoom MZ601.
I run ADB on my Debian Linux computer and it recognises my LG Optimus 2x (P990) which appears in the list provided by 'adb devices' the same command with my Xoom produces 'List of devices attached' with nothing underneath. The USB Debug setting on the Xoom is ticked and the computer recognises the device. The computer's log shows:
Jun 24 12:10:37 dataman1 kernel: [3605717.696244] usb 1-7.2: new high-speed USB device number 67 using ehci_hcd
Jun 24 12:10:37 dataman1 kernel: [3605717.800363] usb 1-7.2: unable to read config index 0 descriptor/start: -71
Jun 24 12:10:37 dataman1 kernel: [3605717.800368] usb 1-7.2: chopping to 0 config(s)
Jun 24 12:10:37 dataman1 kernel: [3605717.807734] usb 1-7.2: New USB device found, idVendor=22b8, idProduct=70a8
Jun 24 12:10:37 dataman1 kernel: [3605717.807739] usb 1-7.2: New USB device strings: Mfr=2, Product=3, SerialNumber=4
Jun 24 12:10:37 dataman1 kernel: [3605717.807742] usb 1-7.2: Product: MZ600
Jun 24 12:10:37 dataman1 kernel: [3605717.807745] usb 1-7.2: Manufacturer: Motorola
Jun 24 12:10:37 dataman1 kernel: [3605717.807748] usb 1-7.2: SerialNumber: xxxxxxxxxxxxxxxxx
Jun 24 12:10:37 dataman1 kernel: [3605717.807878] usb 1-7.2: no configuration chosen from 0 choices
{The serial number has been changed to protect the innocent }
The udev 51-android.rules shows:
# LG Optimus 2x
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ATTR{idVendor}=="1004", ATTRS{idProduct}=="618e", SYMLINK+="libmtp-%k", MODE="0666"
# Xoom
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", ATTRS{idProduct}=="70a9", SYMLINK+="libmtp-%k", MODE="0666"
# Bootloader
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666"
I have run out of ideas. I am hoping to root the Xoom soon so any suggestions would be greatly appreciated.
Click to expand...
Click to collapse
download http://adbdriver.com/upload/AdbDriverInstaller.exe
and install adb drivers installer on pc,open it
and connect your phone to pc and install the
adb drivers.
Syed.Zeshan said:
download http://adbdriver.com/upload/AdbDriverInstaller.exe
and install adb drivers installer on pc,open it
and connect your phone to pc and install the
adb drivers.
Click to expand...
Click to collapse
It is nice of you to try and help but a Windows executable is not going to run on a Linux machine. There are drivers already on the Linux machine because, as I said in my post, I can use ADB to connect to my LG Optimus 2x.
Wasn't there some udev rule that needs adding?
Sent from my HTC One using xda app-developers app
Maybe use WiFi adb? That's another solution that will probably work. I'm sure you can find an app easily enough. Or does stock android has it by default? Don't really remember...
Chaosgod27 said:
Maybe use WiFi adb? That's another solution that will probably work. I'm sure you can find an app easily enough. Or does stock android has it by default? Don't really remember...
Click to expand...
Click to collapse
I'll give that a try and report back.
spychodelics: I have added udev rules as shown in my first post.
Thanks to you both for trying to help.
Update: I have now solved the problem. With some Linux kernels, mine included, if the ehci_hcd module (needed for USB 2.0) is loaded it prevents the Xoom from being recognised so a modprobe -r ehci_hcd will unload that module and, Voila!, my Xoom is now recognised by ADB. I imagine a fix for that bug will be issued sometime.
I've been scratching head all evening trying to solve this, with no luck.
I've added the following lines to the /etc/udev/rules.d/51-android.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee2", MODE="0600", OWNER="paul"
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee0", MODE="0600", OWNER="paul"
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", ATTR{idProduct}=="4ee1", MODE="0600", OWNER="paul"When I run adb devices, it looks OK
List of devices attached
07c082820f1e64c0 deviceAnd lsusb | grep Google finds the device (although it is identified as a Nexus 4 for some reason)
Bus 001 Device 105: ID 18d1:4ee2 Google Inc. Nexus 4 (debug)Finally, ls -Rl /dev/bus/usb/001/105 indicates
crw-rw----+ 1 paul audio 189, 104 Nov 11 00:13 /dev/bus/usb/001/105
But, when I set the phone to bootloader mode by running adb reboot bootloader, and run fastboot devices, I get an empty line.
When I run fastboot flashall -w, I get
< waiting for device >When I run lsusb, the Google line is no longer displayed.
Also, I see in the /var/log/syslog that the Google device is added when I boot the phone, and is removed when I change to fastboot mode.
On reboot:
Nov 11 00:13:03 LENOVO-W541 kernel: [ 2807.950990] usb 1-2: Product: AOSP on HammerHead
Nov 11 00:13:03 LENOVO-W541 kernel: [ 2807.950992] usb 1-2: Manufacturer: LGE
Nov 11 00:13:03 LENOVO-W541 kernel: [ 2807.950993] usb 1-2: SerialNumber: 07c082820f1e64c0
Nov 11 00:13:03 LENOVO-W541 colord: Device added: sysfs-LGE-AOSP_on_HammerHeadIn fastboot:
Nov 11 00:21:08 LENOVO-W541 kernel: [ 3293.100855] usb 1-2: USB disconnect, device number 105
Nov 11 00:21:08 LENOVO-W541 colord: device removed: sysfs-(null)
Nov 11 00:21:08 LENOVO-W541 colord: device removed: sysfs-(null)
Nov 11 00:21:08 LENOVO-W541 colord: device removed: sysfs-LGE-AOSP_on_HammerHead
Can anyone help? I can't even do something as basic as flashing a new image to the phone.
Paul
Try
Code:
sudo fastboot devices
Found the problem (I think). Seems to be a stupid USB cable problem.
At work, with phone in fastboot/bootloader mode:
$ lsusb | grep Google
Bus 001 Device 098: ID 18d1:4ee0 Google Inc.There seems to be a bug, because in normal mode, the same command gives:
Bus 001 Device 100: ID 18d1:4ee2 Google Inc. Nexus 4 (debug)At home, in fastboot mode this command gives nothing, just an empty line.
Similarly, at work, in fastboot mode:
$ fastboot devices
07c082820f1e64c0 fastbootThe same command at home gives:
<waiting for device>
All with the same phone and laptop, just different cables.
After creating rules, did you reload them? either by rebooting or using udevadm?
What distro are you on?
beekay201 said:
After creating rules, did you reload them? either by rebooting or using udevadm?
What distro are you on?
Click to expand...
Click to collapse
beekay,
Yes, I had reloaded the rules, using sudo /etc/init.d/udev restart
Ubuntu 14.04. problem solved, as I indicated above.