Since very recently I have problems connecting my Onyx Boox Darwin 6 via MTP on Ubuntu 18.04. ADB is working well, but trying to connect via mtp leads to a LIBMTP PANIC (see outputs below). I tried with both the latest original package on Ubuntu 18.04 (1.1.13) and the self-build 1.1.17. I tried also with different cables (which all work with my phone with MTP).
mtp-detect output:
libmtp version: 1.1.17 Listing raw device(s) Device 0 (VID=2207 and PID=0011) is a Various Viewpia DR/bq Kepler Debugging. Found 1 device(s): Various: Viewpia DR/bq Kepler Debugging (2207:0011) @ bus 1, dev 22 Attempting to connect device(s) PTP_ERROR_IO: failed to open session, trying again after resetting USB interface LIBMTP libusb: Attempt to reset device outep: usb_get_endpoint_status(): Resource temporarily unavailable libusb_open() failed!: No such device LIBMTP PANIC: Could not init USB on second attempt Unable to open raw device 0 OK.
lsusb -v output:
Bus 001 Device 023: ID 2207:0011 Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x2207 idProduct 0x0011 bcdDevice 3.10 iManufacturer 2 Onyx iProduct 3 MC_DARWIN6 iSerial 4 0123456789ABCDEF bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 62 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower 500mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 3 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 0 iInterface 6 MTP Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x02 EP 2 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x001c 1x 28 bytes bInterval 6 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 66 bInterfaceProtocol 1 iInterface 6 MTP Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x06 EP 6 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x87 EP 7 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Device Qualifier (for other device speed): bLength 10 bDescriptorType 6 bcdUSB 2.00 bDeviceClass 0 (Defined at Interface level) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 bNumConfigurations 1 Device Status: 0x0001 Self Powered
Anonymous
Same error with Samsung Galaxy S7:
mtp-detect
libmtp version: 1.1.17
Listing raw device(s)
Device 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
Found 1 device(s):
Samsung: Galaxy models (MTP) (04e8:6860) @ bus 1, dev 8
Attempting to connect device(s)
LIBMTP PANIC: Could not open session! (Return code 8194)
Try to reset the device.
Unable to open raw device 0
OK.
Surprisingly for me it could connect again one day later without any updates or reboot of the computer (only sleeping mode). But the day I reported that error, I tried many times and it worked for all my devices, except this specific Onyx Boox (also rebooting this device several times didn't help).
And today it does again not work for me, also after rebooting both the device and the computer (also trying different cables doesn't help).
Same error with Samsung Galaxy S5
mtp-detect
libmtp version: 1.1.16
Listing raw device(s)
Device 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
Found 1 device(s):
Samsung: Galaxy models (MTP) (04e8:6860) @ bus 2, dev 9
Attempting to connect device(s)
error returned by libusb_claim_interface() = -6LIBMTP PANIC: Unable to initialize device
Unable to open raw device 0
OK.
This error:
error returned by libusb_claim_interface() = -6
actually means the device is "BUSY" , e.g. blocked by another program, like gvfs or KDE.
Check if your desktops filemanager shows it, and umount it from there if you need the commandline.
Thanks for your reply Marcus. This time I have ignored what the KDE/Dolphin side of things is telling me when I plug in the phone. The usual "allow/deny" message from the phone, took "allow" obviously, then
$
mtp-detect
libmtp version: 1.1.16
Listing raw device(s)
Device 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
Found 1 device(s):
Samsung: Galaxy models (MTP) (04e8:6860) @ bus 2, dev 2
Attempting to connect device(s)
Error 1: Get Storage information failed.
USB low-level info:
bcdUSB: 528
bDeviceClass: 0
bDeviceSubClass: 0
bDeviceProtocol: 0
and pages and pages of information. So you are correct, the BUSY was from KDE/Dolphin. Now I also uninstalled
jmtpfs
yesterday as I thought was was causing the problems, plus there seemed little or no support for it on Github.Can you advise how do I mount it now please ? I require it to be mounted as I use Beyond Compare to copy/compare filesets between the phone and computer. That requires a mount point.
Checked in Synaptic and there was a
go-mtpfs
installed. Read up on that and$
go-mtpfs
/media/peter/myphone2020/06/07 13:56:13 FUSE mounted
2020/06/07 13:56:41 fetched "Grundfosliterature-6014959.pdf", 10439599 bytes in 336 ms. 31.0 MB/s
2020/06/07 13:56:42 fetched "20200302_124804.jpeg", 198493 bytes in 11 ms. 16.7 MB/s
2020/06/07 13:56:42 fetched "Screenshot_2019-11-26-16-18-42.png", 1821799 bytes in 54 ms. 33.4 MB/s
It just sat there not finishing because I didn't have the & at the end.. I assume the files 'fetched' were in the Downloads folder of the phone, although I can see 7 there, not 3. This has resulted in the device being mounted.
Is this all that is required, or should I reinstall
jmtpfs
and use that ?when launching go-mtpfs /media/peter/myphone
can you check in another window if you can just open and access this directory?
Similar would be with jmtpfs
Both provide a filesystem view of the device that you then can use with other tools.
Yes, I was able to do that yesterday. However this morning it failed on the mount
go-mtpfs
/media/peter/myphone &[1] 3293
$ 2020/06/08 08:20:06 selectStorages failed: EOF
^C
[1]+ Exit 1
Couldn't access that path of course, so pressed Ctrl-C. Try again ..
go-mtpfs
/media/peter/myphone &[1] 3383
$ 2020/06/08 08:23:30 FUSE mounted
and now I can access that path. This is what I find in general terms, it is not consistent with the mounting.
Yes, however
jmtpfs
hasn't been maintained for a many years from the looks on Github and the changelog for it also reflects no activity. That's why I'm tryinggo-mtpfs
now as it appears to be more frequenctly maintained. Is there another tool to mount the phone ?Possibly that error that came up about EOF was simply that explained at https://github.com/hanwen/go-mtpfs/issues/59#issuecomment-60502963