2

I'm facing a problem with ABD connection under Kubuntu 13.04 x64. Every time I try to push/pull/shell ls the adb disconnects from device. I tried the following solutions:

  1. Added device ID into .android/adb_usb.ini but nothing helped
  2. Added new udev rule and also nothing helped
  3. Flashed the ROM and nothing helped
  4. I re-installed my Kubuntu 13.04 x64

Some notes :

  • USB Debugging activated
  • Device is Prestigio PMP5080BRU (Rooted) - Android Gingerbread 2.3.1
  • I'm using the latest Android SDK available on official web site
  • The ADB works very well on Windows 7 x64
  • Even when ADB disconnects, I still can see device via lsusb command
  • ia32-libs already installed on the system
  • jdk and jre installed on the system and works as expected
  • Paths configured and working properly
  • ADB works as expected with my Samsung Galaxy S II (Jelly Bean 4.1.2 - Stock)

dmesg :

[ 5571.640498] usb 3-2: new high-speed USB device number 13 using xhci_hcd
[ 5571.657013] usb 3-2: config 1 interface 1 altsetting 0 bulk endpoint 0x83 has invalid maxpacket 64
[ 5571.657426] usb 3-2: New USB device found, idVendor=0bb4, idProduct=0c02
[ 5571.657433] usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 5571.657436] usb 3-2: Product: rk2918
[ 5571.657439] usb 3-2: Manufacturer: RockChip
[ 5571.657442] usb 3-2: SerialNumber: 0123456789ABCDEF
[ 5571.664067] scsi13 : usb-storage 3-2:1.0
[ 5572.659163] scsi 13:0:0:0: Direct-Access     PMP5080B                  0100 PQ: 0 ANSI: 2
[ 5572.659453] scsi 13:0:0:1: Direct-Access     PMP5080B                  0100 PQ: 0 ANSI: 2
[ 5572.661211] sd 13:0:0:0: Attached scsi generic sg2 type 0
[ 5572.661525] sd 13:0:0:1: Attached scsi generic sg3 type 0
[ 5572.662492] sd 13:0:0:0: [sdb] Attached SCSI removable disk
[ 5572.662947] sd 13:0:0:1: [sdc] Attached SCSI removable disk

Any one got an idea? Regards,,,

9
  • Any hints in your Kubuntu's dmesg output?
    – ott--
    Commented Jul 9, 2013 at 8:46
  • I added dmesg to the question... By the way, I changed the USB cable, but still same result.
    – Angry-d
    Commented Jul 9, 2013 at 8:54
  • That's just the last lines. Add the lines, that come up when you connect the device and you try adb shell. dmesg >f1 connect+adb dmesg >f2 f2 -= f1.
    – ott--
    Commented Jul 9, 2013 at 8:58
  • I got no more lines actually after connect the device, after adb shell push/pull/ls it disconnects
    – Angry-d
    Commented Jul 9, 2013 at 9:03
  • It's connecting the device as 2 scsi disks then? Can you change the usb mode to something else in your Prestigio?
    – ott--
    Commented Jul 9, 2013 at 10:56

1 Answer 1

1

I've had a similar problem with a Rockchip device. Short adb shell commands worked, but ones with multi-line output just disconnected randomly, sometimes before producing any output.

On plugging the device in, the kernel syslogged the following:

Dec 30 20:38:03 icebox kernel: [ 1153.016178] usb 9-1.1: new high-speed USB device number 4 using xhci_hcd
Dec 30 20:38:03 icebox kernel: [ 1153.032476] usb 9-1.1: config 1 interface 0 altsetting 0 bulk endpoint 0x81 has invalid maxpacket 64
Dec 30 20:38:03 icebox kernel: [ 1153.038276] usb 9-1.1: New USB device found, idVendor=2207, idProduct=0006
Dec 30 20:38:03 icebox kernel: [ 1153.038281] usb 9-1.1: New USB device strings: Mfr=2, Product=3, SerialNumber=4
Dec 30 20:38:03 icebox kernel: [ 1153.038284] usb 9-1.1: Product: rk30sdk
Dec 30 20:38:03 icebox kernel: [ 1153.038287] usb 9-1.1: Manufacturer: rockchip
Dec 30 20:38:03 icebox kernel: [ 1153.038290] usb 9-1.1: SerialNumber: 0123456789ABCDEF
Dec 30 20:38:03 icebox colord: Device added: sysfs-rockchip-rk30sdk

Out of desperation I moved the device from a USB3 socket on my Linux box to a USB2 socket, as follows

Dec 30 20:45:03 icebox kernel: [ 1572.844024] usb 1-3: new high-speed USB device number 2 using ehci-pci
Dec 30 20:45:03 icebox kernel: [ 1572.976394] usb 1-3: config 1 interface 0 altsetting 0 bulk endpoint 0x81 has invalid maxpacket 64
Dec 30 20:45:03 icebox kernel: [ 1572.976889] usb 1-3: New USB device found, idVendor=2207, idProduct=0006
Dec 30 20:45:03 icebox kernel: [ 1572.976893] usb 1-3: New USB device strings: Mfr=2, Product=3, SerialNumber=4
Dec 30 20:45:03 icebox kernel: [ 1572.976896] usb 1-3: Product: rk30sdk
Dec 30 20:45:03 icebox kernel: [ 1572.976899] usb 1-3: Manufacturer: rockchip
Dec 30 20:45:03 icebox kernel: [ 1572.976902] usb 1-3: SerialNumber: 0123456789ABCDEF
Dec 30 20:45:03 icebox colord: Device added: sysfs-rockchip-rk30sdk

and adb shell then worked perfectly. You will notice the warning bulk endpoint 0x81 has invalid maxpacket 64. This means the Rockchip device is not compliant with the USB standards. My guess is that the Linux ehci-pci driver is more forgiving than the xhci_hcd driver.

Interestingly enough, I saw exactly the same behaviour on a Mac laptop, when I plugged in the Rockchip device. There, the kernel syslogged:

Dec 29 21:54:33 dhcp13 kernel[0]: USBF: 889121. 50      Endpoint 0x81 of the USB device "rk30sdk" at location 0x26400000:  converting Bulk MPS from 64 to 512 (USB 2.0 Spec section 5.8.3)

and adb shell broke in exactly the same way.

TL;DR:

Plugging into a USB2 port instead of a USB3 port might solve the issue.

Good luck!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .