Wednesday, February 9, 2011

fastboot says "< waiting for device >" forever

To be able to use fastboot, you need to be running either an ADP1 or the Engineering Bootloader on your HTC phone.

If you are developing on a linux host, you may need to tweak UDEV to recognize the phone in fastboot mode. You may already have done this to get the phone recognized in Eclipse, but you need to do it again for fastboot, since fastboot uses a different device ID: 0bb4:xxxx. The warning sign is that fastboot says "<>" forever, even when you have the "FASTBOOT" message on the phone; if this happens, try adding the device ID 0bb4:xxxx to your UDEV configuration for Android.

The following config file, in /etc/udev/rules.d/11-android.rules, seems to work:

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="xxxx", MODE="0666", OWNER="your login name"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="xxxx", MODE="0666", OWNER="your login name"

NOTE: change "your login name" to your Linux login ID. Also note that the product ID bit is optional (probably easier to leave it out), and you need to change "0bb4" to the vendor ID for your phone if it isn't made by HTC (whose vendor ID is 0bb4). You can find the vendor id using 'lsusb'. An alternative to this is just to run fastboot as root, using sudo.

No comments: