After testing out the newer version of libmtp v1.1.18, I was able to get even the current version of Calibre working (as long as I unmounted the device from Nautilus / GVFS first!)
Here is the initial error if the device is already automounted by GVFS:
Device 0 (VID=1949 and PID=0581) is a Amazon Kindle Fire HD8 Plus.
libusb_claim_interface() reports device is busy, likely in use by GVFS or KDE MTP device handling alreadyLIBMTP PANIC: Unable to initialize device
Error while trying to open MTPDevice(busnum=1, devnum=36, vendor_id=6473, product_id=1409, bcd=547, serial='XXXXXXXXXXXXXXXX', manufacturer='Amazon', product='XXXXXX') (Driver: <calibre.devices.mtp.driver.MTP_DEVICE object at 0x7f8353368880>)
Traceback (most recent call last):
File "/usr/lib/calibre/calibre/devices/mtp/unix/driver.py", line 218, in open
self.dev = self.create_device(connected_device)
File "/usr/lib/calibre/calibre/devices/mtp/base.py", line 25, in synchronizer
return func(self, *args, **kwargs)
File "/usr/lib/calibre/calibre/devices/mtp/unix/driver.py", line 171, in create_device
return self.libmtp.Device(d.busnum, d.devnum, d.vendor_id,
libmtp.MTPError: Unable to open MTP device with busnum=1 and devnum=36, tried 1 such devices
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/calibre/calibre/gui2/device.py", line 297, in detect_device
dev.open(cd, self.current_library_uuid)
File "/usr/lib/calibre/calibre/devices/mtp/driver.py", line 125, in open
BASE.open(self, device, library_uuid)
File "/usr/lib/calibre/calibre/devices/mtp/base.py", line 25, in synchronizer
return func(self, *args, **kwargs)
File "/usr/lib/calibre/calibre/devices/mtp/unix/driver.py", line 221, in open
raise OpenFailed('Failed to open %s: Error: %s'%(
calibre.devices.errors.OpenFailed: Failed to open MTPDevice(busnum=1, devnum=36, vendor_id=6473, product_id=1409, bcd=547, serial='XXXXXXXXXXXXXXXX', manufacturer='Amazon', product='XXXXXX'): Error: Unable to open MTP device with busnum=1 and devnum=36, tried 1 such devices
Device 0 (VID=1949 and PID=0581) is a Amazon Kindle Fire HD8 Plus.
libusb_claim_interface() reports device is busy, likely in use by GVFS or KDE MTP device handling alreadyLIBMTP PANIC: Unable to initialize device
Error while trying to open MTPDevice(busnum=1, devnum=37, vendor_id=6473, product_id=1409, bcd=547, serial='XXXXXXXXXXXXXXXX', manufacturer='Amazon', product='XXXXXX') (Driver: <calibre.devices.mtp.driver.MTP_DEVICE object at 0x7f8353368880>)
Traceback (most recent call last):
File "/usr/lib/calibre/calibre/devices/mtp/unix/driver.py", line 218, in open
self.dev = self.create_device(connected_device)
File "/usr/lib/calibre/calibre/devices/mtp/base.py", line 25, in synchronizer
return func(self, *args, **kwargs)
File "/usr/lib/calibre/calibre/devices/mtp/unix/driver.py", line 171, in create_device
return self.libmtp.Device(d.busnum, d.devnum, d.vendor_id,
libmtp.MTPError: Unable to open MTP device with busnum=1 and devnum=37, tried 1 such devices
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/calibre/calibre/gui2/device.py", line 297, in detect_device
dev.open(cd, self.current_library_uuid)
File "/usr/lib/calibre/calibre/devices/mtp/driver.py", line 125, in open
BASE.open(self, device, library_uuid)
File "/usr/lib/calibre/calibre/devices/mtp/base.py", line 25, in synchronizer
return func(self, *args, **kwargs)
File "/usr/lib/calibre/calibre/devices/mtp/unix/driver.py", line 221, in open
raise OpenFailed('Failed to open %s: Error: %s'%(
calibre.devices.errors.OpenFailed: Failed to open MTPDevice(busnum=1, devnum=37, vendor_id=6473, product_id=1409, bcd=547, serial='XXXXXXXXXXXXXXXX', manufacturer='Amazon', product='XXXXXX'): Error: Unable to open MTP device with busnum=1 and devnum=37, tried 1 such devices
After testing out the newer version of libmtp v1.1.18, I was able to get even the current version of Calibre working (as long as I unmounted the device from Nautilus / GVFS first!)
Here is the initial error if the device is already automounted by GVFS:
Device 0 (VID=1949 and PID=0581) is a Amazon Kindle Fire HD8 Plus. claim_interface () reports device is busy, likely in use by GVFS or KDE MTP device handling alreadyLIBMTP PANIC: Unable to initialize device 'XXXXXXXXXXXXXX XX', manufacturer= 'Amazon' , product='XXXXXX') (Driver: <calibre. devices. mtp.driver. MTP_DEVICE object at 0x7f8353368880>) calibre/ calibre/ devices/ mtp/unix/ driver. py", line 218, in open device( connected_ device) calibre/ calibre/ devices/ mtp/base. py", line 25, in synchronizer calibre/ calibre/ devices/ mtp/unix/ driver. py", line 171, in create_device Device( d.busnum, d.devnum, d.vendor_id,
libusb_
Error while trying to open MTPDevice(busnum=1, devnum=36, vendor_id=6473, product_id=1409, bcd=547, serial=
Traceback (most recent call last):
File "/usr/lib/
self.dev = self.create_
File "/usr/lib/
return func(self, *args, **kwargs)
File "/usr/lib/
return self.libmtp.
libmtp.MTPError: Unable to open MTP device with busnum=1 and devnum=36, tried 1 such devices
During handling of the above exception, another exception occurred:
Traceback (most recent call last): calibre/ calibre/ gui2/device. py", line 297, in detect_device library_ uuid) calibre/ calibre/ devices/ mtp/driver. py", line 125, in open calibre/ calibre/ devices/ mtp/base. py", line 25, in synchronizer calibre/ calibre/ devices/ mtp/unix/ driver. py", line 221, in open devices. errors. OpenFailed: Failed to open MTPDevice(busnum=1, devnum=36, vendor_id=6473, product_id=1409, bcd=547, serial= 'XXXXXXXXXXXXXX XX', manufacturer= 'Amazon' , product='XXXXXX'): Error: Unable to open MTP device with busnum=1 and devnum=36, tried 1 such devices claim_interface () reports device is busy, likely in use by GVFS or KDE MTP device handling alreadyLIBMTP PANIC: Unable to initialize device 'XXXXXXXXXXXXXX XX', manufacturer= 'Amazon' , product='XXXXXX') (Driver: <calibre. devices. mtp.driver. MTP_DEVICE object at 0x7f8353368880>) calibre/ calibre/ devices/ mtp/unix/ driver. py", line 218, in open device( connected_ device) calibre/ calibre/ devices/ mtp/base. py", line 25, in synchronizer calibre/ calibre/ devices/ mtp/unix/ driver. py", line 171, in create_device Device( d.busnum, d.devnum, d.vendor_id,
File "/usr/lib/
dev.open(cd, self.current_
File "/usr/lib/
BASE.open(self, device, library_uuid)
File "/usr/lib/
return func(self, *args, **kwargs)
File "/usr/lib/
raise OpenFailed('Failed to open %s: Error: %s'%(
calibre.
Device 0 (VID=1949 and PID=0581) is a Amazon Kindle Fire HD8 Plus.
libusb_
Error while trying to open MTPDevice(busnum=1, devnum=37, vendor_id=6473, product_id=1409, bcd=547, serial=
Traceback (most recent call last):
File "/usr/lib/
self.dev = self.create_
File "/usr/lib/
return func(self, *args, **kwargs)
File "/usr/lib/
return self.libmtp.
libmtp.MTPError: Unable to open MTP device with busnum=1 and devnum=37, tried 1 such devices
During handling of the above exception, another exception occurred:
Traceback (most recent call last): calibre/ calibre/ gui2/device. py", line 297, in detect_device library_ uuid) calibre/ calibre/ devices/ mtp/driver. py", line 125, in open calibre/ calibre/ devices/ mtp/base. py", line 25, in synchronizer calibre/ calibre/ devices/ mtp/unix/ driver. py", line 221, in open devices. errors. OpenFailed: Failed to open MTPDevice(busnum=1, devnum=37, vendor_id=6473, product_id=1409, bcd=547, serial= 'XXXXXXXXXXXXXX XX', manufacturer= 'Amazon' , product='XXXXXX'): Error: Unable to open MTP device with busnum=1 and devnum=37, tried 1 such devices
File "/usr/lib/
dev.open(cd, self.current_
File "/usr/lib/
BASE.open(self, device, library_uuid)
File "/usr/lib/
return func(self, *args, **kwargs)
File "/usr/lib/
raise OpenFailed('Failed to open %s: Error: %s'%(
calibre.
Reference: https:/ /sourceforge. net/p/libmtp/ bugs/1879/ #5c37
To work around Ubuntu's GVFS automount behavior:
- Open Nautilus
- Find your device's product ID name in the mounted filesystems list
- Click the Eject button
- Now open Calibre
After making sure only Calibre is managing the MTP device, it works fine!
Resolution: Update to libmtp >= 1.1.18