Tuesday 26th November, 2013
USB errors in fastboot: I was just trying to upgrade my development tablet to Android 4.4 "some kind of allegedly cute codename probably goes here". While upgrading, using whatever weirdy version of fastboot happened to be in my $PATH, I was getting somewhat opaque errors. Noticeably:

apsu:nakasi-krt16s cheesey$ fastboot erase boot
ERROR: could not get pipe properties
erasing 'boot'... OKAY

And then, later:

sending 'system' (611886 KB)... ERROR: usb_write failed with status e00002be
FAILED (data transfer failure (No such file or directory))

And again, later still:

getvar:version-bootloader FAILED (remote: (Nv3pBadReceiveLength))

The results for searching for error e00002be on the Internet seemed to result in a lot of people thrashing around being ad-hoc, but the actual problem (at least for me) was embarassingly simple:

I was accidentally using an absolutely ancient version of fastboot.

Using a more recent fastboot solved the problem entirely. Unfortunately fastboot doesn't have a --version option or anything similar but the newer versions have a longer help message.

Broken fastboot:

$ fastboot 2>&1 | wc -l
20

Working fastboot:

$ /SDKs/Android/fastboot 2>&1 | wc -l
24

If in doubt, there's an up-to-date fastboot included as part of the Android SDK for your platform (in the platform-tools directory).

posted by Rob Mitchelmore, 14:19 (anchor)