RPD is breaking phone's "File Transfer" connexion

Describe the bug
The phone is connected to Debian in File Transfer/Android Auto. The connexion is ok, files can be transfered.
To open RPD breaks the connexion to No Data Transfer on the phone.
Try to selectect File Transfer/Android Auto on the phone again gives the window “All files on the POCO are inaccessible” and break the connexion to No Data Transfer on the phone.

If you have a way to resolve this behavior I’ld be very happy, RPD is a must have for a daily Linux user ( :clap: )
Thanx

Additional context
RPD was always working before the last upgrade of my Debian. I use it every week.

To Reproduce
Steps to reproduce the behavior with the informations below :

  1. Connext the phone to th computer
  2. Select “File Transfer/Android Auto”
  3. clone git GitHub - scorpi11/rapid-photo-downloader
  4. install with python3 install.py
  5. launch rapid-photo-downloader --debug
  6. See error

Information

  • RPD version : rapid-photo-downloader 0.9.33 (from git)
  • Distribution: Debian
  • Description: Debian GNU/Linux bookworm/sid
  • Release: testing/unstable
  • Kernel version (ex. uname -srmo): Linux 5.16.0-6-amd64 x86_64 GNU/Linux
  • Smartphone : Xiaomi POCO X3
  • MIUI version 12.5.5Stable
  • Output of rapid-photo-downloader --debug:
(python3:13531): Gtk-WARNING **: 04:34:41.780: Theme parsing error: gtk.css:1:106: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@jonaspoehler.de/stylesheet.css: No such file or directory

(python3:13531): Gtk-WARNING **: 04:34:41.780: Theme parsing error: gtk.css:2:112: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@jonaspoehler.de/stylesheet-tiled.css: No such file or directory

(python3:13531): Gtk-WARNING **: 04:34:41.780: Theme parsing error: gtk.css:3:113: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@franglais125.gmail.com/stylesheet.css: No such file or directory

(python3:13531): Gtk-WARNING **: 04:34:41.780: Theme parsing error: gtk.css:4:119: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@franglais125.gmail.com/stylesheet-tiled.css: No such file or directory

(python3:13531): Gtk-WARNING **: 04:34:41.783: Theme parsing error: gtk.css:1969:72: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(python3:13531): Gtk-WARNING **: 04:34:41.783: Theme parsing error: gtk.css:1969:117: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(python3:13531): Gtk-WARNING **: 04:34:41.783: Theme parsing error: gtk.css:1993:72: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(python3:13531): Gtk-WARNING **: 04:34:41.783: Theme parsing error: gtk.css:1993:117: The :insensitive pseudo-class is deprecated. Use :disabled instead.
INFO     Rapid Photo Downloader is starting
INFO     Rapid Photo Downloader: 0.9.33
INFO     Platform: Linux-5.16.0-6-amd64-x86_64-with-glibc2.33
INFO     Memory: 3.56 GB used of 67.25 GB
INFO     Confinement: none
INFO     Installed using pip: yes
INFO     Python: 3.10.4
INFO     Python executable: /usr/bin/python3
INFO     Qt: 5.15.2
INFO     PyQt: 5.15.6 (system package)
INFO     SIP: 6.6.1
INFO     ZeroMQ: 4.3.4
INFO     Python ZeroMQ: 22.3.0 (cython backend)
INFO     gPhoto2: 2.5.27
INFO     Python gPhoto2: 1.9.0 (system package)
INFO     ExifTool: 12.41
INFO     pymediainfo: 5.0.3
INFO     GExiv2: 0.14.0
INFO     Gstreamer: 1.20.1
INFO     PyGObject: 3.42.1
INFO     psutil: 5.9.0
INFO     Show in File Manager: 1.1.4
INFO     Exiv2: 0.27.5 (CR3 support enabled)
INFO     glibc: 2.33
INFO     Arrow: 1.2.2 (system package)
INFO     dateutil: 2.8.1
INFO     Tornado: 6.1
INFO     Can read HEIF/HEIC metadata: yes
INFO     Pyheif: 0.7.0
INFO     libheif: 1.12.0
INFO     iOS support: yes
INFO     Session: x11
INFO     Desktop scaling: not set
INFO     Desktop scaling detection: undetected
INFO     Desktop: GNOME (Gnome)
INFO     Default file manager: nautilus
DEBUG    Available screen geometry: 1920x1080 on 1920x1080 display.
INFO     High DPI scaling disabled because no scaled screen was detected
INFO     Desktop scaling set to 1.0
DEBUG    Fractional scaling not set
DEBUG    Window maximized when last run: False
DEBUG    Window size: 1262x841
INFO     Device autodetection: True
INFO     For automatically detected devices, only the contents the following folders will be scanned: DCIM, PRIVATE, MP_ROOT
INFO     This Computer is not used as a download source
INFO     Photo download location: /home/ngux/Pictures
INFO     Video download location: /home/ngux/Videos
INFO     Backing up files: False
DEBUG    Starting main ExifTool process
DEBUG    Validating CPU core count for thumbnail generation...
DEBUG    ...6 physical cores detected
DEBUG    Starting logging subscription manager...
DEBUG    ...logging subscription manager started
DEBUG    Stage 2 initialization
DEBUG    Starting thumbnail daemon model
DEBUG    Running sink for Thumbnail Daemon Manager
DEBUG    Stage 3 initialization
DEBUG    ...thumbnail daemon model started
DEBUG    Starting worker for Thumbnail Daemon Manager
DEBUG    Starting thumbnail model...
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbnaildaemon.py --receive 41663 --send 36977 --logging 46219' with pid 13601
DEBUG    Setting arrow locale to en_GB
DEBUG    Running sink for Thumbnail Manager
DEBUG    ...thumbnail model started
DEBUG    Starting thumbnail load balancer...
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbloadbalancer.py --receive 45523 --send 38829 --controller 34451 --logging 46219' with pid 13604
DEBUG    Subscribing to logging on port 34475
DEBUG    ...thumbnail load balancer started
DEBUG    Stage 4 initialization
DEBUG    Locale directory: /home/ngux/.local/share/locale
DEBUG    Getting gphoto2 context
DEBUG    Probing for valid mounts
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbnailextractor.py --request 34737 --send 38829 --identity 0 --logging 46219' with pid 13611
DEBUG    Media dir is /media/ngux
DEBUG    To be recognized, partitions must be mounted under /media/ngux
DEBUG    Freedesktop.org thumbnails location: /home/ngux/.cache/thumbnails
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbnailextractor.py --request 34737 --send 38829 --identity 1 --logging 46219' with pid 13612
DEBUG    Checking path validity
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbnailextractor.py --request 34737 --send 38829 --identity 2 --logging 46219' with pid 13613
DEBUG    Updating watched paths
DEBUG    Subscribing to logging on port 45565
DEBUG    Adding to watched paths: /home/ngux
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbnailextractor.py --request 34737 --send 38829 --identity 3 --logging 46219' with pid 13616
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbnailextractor.py --request 34737 --send 38829 --identity 4 --logging 46219' with pid 13618
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/thumbnailextractor.py --request 34737 --send 38829 --identity 5 --logging 46219' with pid 13619
DEBUG    Using selector: EpollSelector
DEBUG    Laying out main window
DEBUG    Setting photo combobox chosen value to Original Filename
DEBUG    Updating example photo name in rename panel
DEBUG    Setting video combobox chosen value to Original Filename
DEBUG    Updating example video name in rename panel
DEBUG    Inserting 2 job codes into job code widget
DEBUG    Media dir is /media/ngux
DEBUG    To be recognized, partitions must be mounted under /media/ngux
DEBUG    Rebuilding photo combobox entries...
DEBUG    ...8 combobox entries added
INFO     photo path /home/ngux is a default value or path to an external volume
DEBUG    Rebuilding video combobox entries...
DEBUG    ...8 combobox entries added
INFO     video path /home/ngux is a default value or path to an external volume
DEBUG    Have GIO module: True
DEBUG    GVFS (GIO) controls mounts: True
DEBUG    Starting GVolumeMonitor...
DEBUG    ...GVolumeMonitor started
DEBUG    Starting version check
DEBUG    Starting download tracker
DEBUG    Setting up download update timer
DEBUG    Starting offload manager...
DEBUG    Running sink for Offload Manager
DEBUG    ...offload manager started
DEBUG    Starting worker for Offload Manager
DEBUG    Starting rename manager...
DEBUG    Running sink for Rename and Move File Manager
DEBUG    ...rename manager started
DEBUG    Starting worker for Rename and Move File Manager
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/offload.py --receive 42567 --send 41881 --logging 46219' with pid 13630
DEBUG    Starting scan manager...
DEBUG    Running sink for Scan Manager
DEBUG    ...scan manager started
DEBUG    Starting copy files manager...
DEBUG    Running sink for Copy Files Manager
DEBUG    ...copy files manager started
DEBUG    Starting backup manager ...
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/renameandmovefile.py --receive 46095 --send 41769 --logging 46219' with pid 13633
DEBUG    Running sink for Backup Manager
DEBUG    ...backup manager started
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.photo: 1>]
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.video: 2>]
DEBUG    Searching for cameras
DEBUG    Device serial: 9c7b04c6
DEBUG    Detected Xiaomi Mi-2s (id2) (MTP) on port usb:001,020
DEBUG    Xiaomi Mi-2s (id2) (MTP) was not already mounted
DEBUG    Assigning scan id 0 to POCO X3 NFC
DEBUG    INSERT OR REPLACE INTO devices (scan_id, device_name) VALUES (?,?) (0, POCO X3 NFC)
DEBUG    Adding POCO X3 NFC to Devices display with scan id 0 at row 0
DEBUG    Setting device state for POCO X3 NFC to scanning
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.photo: 1>]
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.video: 2>]
DEBUG    Setting progress bar to show scanning activity
DEBUG    Setting up non-camera devices
DEBUG    Not scanning volume with path /media/ngux/BB because it lacks a folder at the base level that indicates it should be scanned
DEBUG    Will not scan BB
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py --receive 42441 --send 45807 --controller 38509 --syncclient 41717 --filter 0 --logging 46219' with pid 13683
DEBUG    Subscribing to logging on port 34335

(python3:13630): Gtk-WARNING **: 04:34:43.361: Theme parsing error: gtk.css:1:106: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@jonaspoehler.de/stylesheet.css: No such file or directory

(python3:13630): Gtk-WARNING **: 04:34:43.362: Theme parsing error: gtk.css:2:112: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@jonaspoehler.de/stylesheet-tiled.css: No such file or directory

(python3:13630): Gtk-WARNING **: 04:34:43.362: Theme parsing error: gtk.css:3:113: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@franglais125.gmail.com/stylesheet.css: No such file or directory

(python3:13630): Gtk-WARNING **: 04:34:43.362: Theme parsing error: gtk.css:4:119: Failed to import: Error opening file /home/ngux/.local/share/gnome-shell/extensions/no-title-bar@franglais125.gmail.com/stylesheet-tiled.css: No such file or directory

(python3:13630): Gtk-WARNING **: 04:34:43.365: Theme parsing error: gtk.css:1969:72: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(python3:13630): Gtk-WARNING **: 04:34:43.365: Theme parsing error: gtk.css:1969:117: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(python3:13630): Gtk-WARNING **: 04:34:43.365: Theme parsing error: gtk.css:1993:72: The :insensitive pseudo-class is deprecated. Use :disabled instead.

(python3:13630): Gtk-WARNING **: 04:34:43.365: Theme parsing error: gtk.css:1993:117: The :insensitive pseudo-class is deprecated. Use :disabled instead.
DEBUG    Subscribing to logging on port 39047
DEBUG    Subscribing to logging on port 44527
DEBUG    Subscribing to logging on port 33135
DEBUG    Subscribing to logging on port 41549
DEBUG    Subscribing to logging on port 33639
DEBUG    Subscribing to logging on port 35221
DEBUG    Subscribing to logging on port 35811
DEBUG    Completed stage 9 initializing main window
DEBUG    Subscribing to logging on port 46793
DEBUG    Starting new HTTPS connection (1): damonlynch.net:443
DEBUG    Window position quirk delta: PyQt5.QtCore.QPoint()
ERROR    Xiaomi Mi-2s (id2) (MTP) is already mounted
DEBUG    Sending 0 scanned files from POCO X3 NFC to sink
DEBUG    https://damonlynch.net:443 "GET /rapid/version.json HTTP/1.1" 200 741
DEBUG    Examining mount mtp
DEBUG    Examining mount POCO X3 NFC


When force to connect to File Transfer/Android Auto again

DEBUG    GIO: POCO X3 NFC volume removed
DEBUG    GIO: POCO X3 NFC might be a camera
DEBUG    Examining system for removed camera
DEBUG    Device removed: POCO X3 NFC
DEBUG    Clearing all non-downloaded thumbnails for scan id 0
DEBUG    SELECT uid FROM files WHERE scan_id=? AND downloaded=? [0, False]
DEBUG    SELECT uid FROM files WHERE scan_id=? AND downloaded=? [0, False]
DEBUG    Removing 0 thumbnail and rpd_files rows
DEBUG    Purging 0 thumbnails from buffer
DEBUG    DELETE FROM files WHERE scan_id=? AND downloaded=? ([0, False])
DEBUG    DELETE FROM devices WHERE scan_id=? (0, )
DEBUG    Removing 2 rows from Devices display, starting at row 0
INFO     Cleaning provisional download folders for POCO X3 NFC
DEBUG    Cleaning subfolders created for scan id 0
DEBUG    Updating file system model and views
DEBUG    Unsubscribing to logging on port 35811
DEBUG    Scan Manager worker 0 has stopped
DEBUG    Deleting camera device from device collection
DEBUG    Scan Manager currently has no workers
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.photo: 1>]
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.video: 2>]
DEBUG    -- Device Collection --
DEBUG    0 devices: 0 volumes/cameras (0 cameras), 0 this computer
DEBUG    Device states: 
DEBUG    No devices scanning
DEBUG    No devices downloading
DEBUG    No devices thumbnailing
DEBUG    -- Thumbnail Model --
DEBUG    0 thumbnails (0 marked)
DEBUG    0 not downloaded; 0 downloaded; 0 previously downloaded
DEBUG    Active devices:  (1 removed)
DEBUG    Resetting progress bar
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.photo: 1>]
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.video: 2>]
DEBUG    GIO: Volume added POCO X3 NFC. Automount: True
DEBUG    POCO X3 NFC is a camera at /dev/bus/usb/001/021
DEBUG    Examining mount mtp
DEBUG    Examining mount POCO X3 NFC
DEBUG    POCO X3 NFC is now mounted
DEBUG    Searching for cameras
DEBUG    Device serial: 9c7b04c6
DEBUG    Detected Xiaomi Mi-2s (id2) (MTP) on port usb:001,021
DEBUG    GIO: Attempting to unmount Xiaomi Mi-2s (id2) (MTP)...
DEBUG    Successfully unmounted Xiaomi Mi-2s (id2) (MTP)
DEBUG    ...successfully unmounted Xiaomi Mi-2s (id2) (MTP)
DEBUG    Assigning scan id 1 to POCO X3 NFC
DEBUG    INSERT OR REPLACE INTO devices (scan_id, device_name) VALUES (?,?) (1, POCO X3 NFC)
DEBUG    Adding POCO X3 NFC to Devices display with scan id 1 at row 0
DEBUG    Setting device state for POCO X3 NFC to scanning
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.photo: 1>]
DEBUG    SELECT uid FROM files WHERE marked=? AND file_type=? [True, <FileType.video: 2>]
DEBUG    Setting progress bar to show scanning activity
DEBUG    Started '/usr/bin/python3 /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py --receive 42441 --send 45807 --controller 38509 --syncclient 41717 --filter 1 --logging 46219' with pid 14039
DEBUG    Subscribing to logging on port 42981
DEBUG    Scan 1 worker started
ERROR    Unable to access camera POCO X3 NFC: GP_ERROR. Is it locked?
DEBUG    Sending 0 scanned files from POCO X3 NFC to sink
DEBUG    POCO X3 NFC had been automatically mounted

There is the problem.

This is not the official git. Just saying.

clone git GitHub - scorpi11/rapid-photo-downloader

You’re right, but I’ve tried also with with the script install.py (v.0.9.33) from the official site but this is the same.

When Iselect “File Transfert from USB” it comes back to “No data transfer” if RDP is open, that’s the bug for me.
Until now I’ve always selected this feature to transfert. Is there an other way to unlock the phone you think ? (could be I’m a noob with smartphone, I’ve searched my phone but without success).

Three things are required to be able to download from your phone:

  1. Data transfer needs to be enabled on the phone
  2. the phone needs to be unlocked
  3. no other program on the computer should be accessing the phone, e.g. Gnome Files, KDE Dolphin, etc.

Sometimes removing the phone and plugging it in again helps.

I have uninstalled KDE connect from my phone and my Debian. Still i cannot connect but the debug message is different ans the connexion stays on File Transfert (w/out be beaked to go back to “No data tranfer”). Rebooted the two devices.
This is the debug output when I clic on Try Again from the “All files on the POCO X3 are inaccessible”

ERROR    Unable to access camera POCO X3 NFC: GP_ERROR. Is it locked? 
DEBUG    Sending 0 scanned files from POCO X3 NFC to sink #then i click on "try Again"
DEBUG    Examining mount mtp
ERROR    Unable to access camera: GP_ERROR_BAD_PARAMETERS
DEBUG    Sending 0 scanned files from POCO X3 NFC to sink

If i run RPD --debug when the connexion is already on File Transfert I get another error

ERROR    Xiaomi Mi-2s (id2) (MTP) is already mounted
DEBUG    Sending 0 scanned files from POCO X3 NFC to sink

Is making sense for you ?

It looks like something else is mounting the phone. Only one operating system level process can access the phone at one time. That is a limitation of the PTP/MTP protocol. This cannot be worked around. You need to figure out what that process is, and stop it doing it.

If you want to get an overwhelming amount of debug output, set the environment variable RPD_SCAN_DEBUG to any value using export, and then run Rapid Photo Downloader with the --debug option.

Another approach is to try to access the phone using the commandline tool provided by gphoto2, running with the debug flag set to varying levels of verbosity.

FYI it’s not surprising that didn’t make a difference, KDE Connect does not use MTP.

Dolphin has built in MTP support, that may be interfering somehow?

Thanks, good tracks to follow. I’ll try this tomorrow

Thanks good to know. btw, I don’t have dolphin on my machine

I’ve runned gphoto2 and in deed something get busy my phone when I connect it as “File Transfer” (well I’m still able to transfert files to the PC). But how to know what is it ?

:~$ gphoto2 --auto-detect 
Model                          Port                                            
----------------------------------------------------------
Xiaomi Mi-2s (id2) (MTP)       usb:001,011     

but

gphoto2 --summary
                                                                               
*** Error ***              
An error occurred in the io-library ('Could not claim the USB device'): Could not claim interface 0 (Device or resource busy). Make sure no other program (gvfs-gphoto2-volume-monitor) or kernel module (such as sdc2xx, stv680, spca50x) is using the device and you have read/write access to the device.
*** Error (-53: 'Could not claim the USB device') ***       

For debugging messages, please use the --debug option.
Debugging messages may help finding a solution to your problem.
If you intend to send any error or debug messages to the gphoto
developer mailing list <gphoto-devel@lists.sourceforge.net>, please run
gphoto2 as follows:

    env LANG=C gphoto2 --debug --debug-logfile=my-logfile.txt --summary

Please make sure there is sufficient quoting around the arguments.

and
env LANG=C gphoto2 --debug --debug-logfile=my-logfile.txt --summary
gives the output file below ↓

0.000003 main                        (2): ALWAYS INCLUDE THE FOLLOWING LINES WHEN SENDING DEBUG MESSAGES TO THE MAILING LIST:
0.000025 main                        (2): gphoto2 2.5.27
0.000029 main                        (2): gphoto2 has been compiled with the following options:
0.000032 main                        (2):  + gcc (C compiler used)
0.000034 main                        (2):  + popt (mandatory, for handling command-line parameters)
0.000037 main                        (2):  + exif (for displaying EXIF information)
0.000039 main                        (2):  + cdk (for accessing configuration options)
0.000041 main                        (2):  + aa (for displaying live previews)
0.000043 main                        (2):  + jpeg (for displaying live previews in JPEG format)
0.000045 main                        (2):  + readline (for easy navigation in the shell)
0.000049 main                        (2): libgphoto2 2.5.27
0.000069 main                        (2): libgphoto2 has been compiled with the following options:
0.000072 main                        (2):  + standard camlib set (ax203 canon digigr8 dimagev directory docupen jl2005a jl2005c kodak_dc240 lumix mars pentax ptp2 ricoh_g3 sierra sonix sq905 st2205 topfield tp6801)
0.000074 main                        (2):  + gcc (C compiler used)
0.000076 main                        (2):  + ltdl (for portable loading of camlibs)
0.000078 main                        (2):  + EXIF (for special handling of EXIF files)
0.000100 main                        (2): libgphoto2_port 0.12.0
0.000102 main                        (2): libgphoto2_port has been compiled with the following options:
0.000104 main                        (2):  + iolibs: disk ptpip serial usb1 usbdiskdirect usbscsi
0.000107 main                        (2):  + gcc (C compiler used)
0.000109 main                        (2):  + ltdl (for portable loading of iolibs)
0.000111 main                        (2):  + EXIF (for vusb)
0.000113 main                        (2):  + USB (libusb1, for USB cameras)
0.000115 main                        (2):  + serial (for serial cameras)
0.000117 main                        (2):  + no resmgr (serial port access and locking)
0.000119 main                        (2):  + no ttylock (serial port locking)
0.000121 main                        (2):  + no lockdev (serial port locking)
0.000123 main                        (2): CAMLIBS env var not set, using compile-time default instead
0.000125 main                        (2): IOLIBS env var not set, using compile-time default instead
0.000127 main                        (2): invoked with following arguments:
0.000130 main                        (2):   --debug
0.000132 main                        (2):   --debug-logfile=my-logfile.txt
0.000134 main                        (2):   --summary
0.000143 load_settings               (2): Creating gphoto config directory ('/home/ngux/.gphoto')
0.000160 load_settings               (2): Loading settings from file '/home/ngux/.gphoto/settings'.
0.000209 main                        (2): The user has not specified both a model and a port. Try to figure them out.
0.000212 gp_port_info_list_load      (2): Using ltdl to load io-drivers from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0'...
0.000243 foreach_func                (2): Called for filename '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/disk'.
0.000296 gp_port_library_list        (2): found fstab fsname UUID=81dcbdca-9247-4298-8186-97ec2fe9978a
0.000303 gp_port_library_list        (2): found fstab fsname UUID=c2d90b79-3492-481b-aa15-dc23b41e1440
0.000307 gp_port_library_list        (2): found fstab fsname UUID=84BE60CCBE60B876
0.000563 gp_port_library_list        (2): found fstab fsname UUID=6811-610A
0.000575 gp_port_library_list        (2): found fstab fsname UUID=80E0B9ADE0B9AA34
0.000791 gp_port_library_list        (2): found mtab fsname sysfs
0.000816 gp_port_library_list        (2): found mtab fsname proc
0.000819 gp_port_library_list        (2): found mtab fsname udev
0.000824 gp_port_library_list        (2): found mtab fsname devpts
0.000832 gp_port_library_list        (2): found mtab fsname tmpfs
0.000837 gp_port_library_list        (2): found mtab fsname /dev/nvme0n1p5
0.000841 gp_port_library_list        (2): found mtab fsname securityfs
0.000844 gp_port_library_list        (2): found mtab fsname tmpfs
0.000848 gp_port_library_list        (2): found mtab fsname tmpfs
0.000853 gp_port_library_list        (2): found mtab fsname cgroup2
0.000856 gp_port_library_list        (2): found mtab fsname pstore
0.000862 gp_port_library_list        (2): found mtab fsname efivarfs
0.000868 gp_port_library_list        (2): found mtab fsname bpf
0.000885 gp_port_library_list        (2): found mtab fsname systemd-1
0.000888 gp_port_library_list        (2): found mtab fsname mqueue
0.000891 gp_port_library_list        (2): found mtab fsname hugetlbfs
0.000896 gp_port_library_list        (2): found mtab fsname debugfs
0.000900 gp_port_library_list        (2): found mtab fsname tracefs
0.000905 gp_port_library_list        (2): found mtab fsname configfs
0.000911 gp_port_library_list        (2): found mtab fsname fusectl
0.000914 gp_port_library_list        (2): found mtab fsname ramfs
0.000918 gp_port_library_list        (2): found mtab fsname /dev/nvme0n1p3
0.000968 gp_port_library_list        (2): found mtab fsname /dev/nvme0n1p1
0.000973 gp_port_library_list        (2): found mtab fsname /dev/sda1
0.001079 gp_port_library_list        (2): found mtab fsname tmpfs
0.001089 gp_port_library_list        (2): found mtab fsname portal
0.001092 gp_port_library_list        (2): found mtab fsname /dev/sdb1
0.001178 foreach_func                (2): Loaded '' ('^disk:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/disk'.
0.001183 foreach_func                (2): Called for filename '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/ptpip'.
0.001229 foreach_func                (2): Loaded 'PTP/IP Connection' ('ptpip:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/ptpip'.
0.001234 foreach_func                (2): Loaded '' ('^ptpip:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/ptpip'.
0.001237 foreach_func                (2): Loaded 'IP Connection' ('ip:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/ptpip'.
0.001239 foreach_func                (2): Loaded '' ('^ip:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/ptpip'.
0.001241 foreach_func                (2): Called for filename '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/serial'.
0.001314 foreach_func                (2): Loaded 'Serial Port 0' ('serial:/dev/ttyS0') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/serial'.
0.001319 foreach_func                (2): Loaded 'Serial Port 1' ('serial:/dev/ttyS1') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/serial'.
0.001321 foreach_func                (2): Loaded 'Serial Port 2' ('serial:/dev/ttyS2') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/serial'.
0.001324 foreach_func                (2): Loaded 'Serial Port 3' ('serial:/dev/ttyS3') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/serial'.
0.001326 foreach_func                (2): Loaded 'Serial Port Device' ('serial:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/serial'.
0.001328 foreach_func                (2): Loaded '' ('^serial:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/serial'.
0.001331 foreach_func                (2): Called for filename '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usb1'.
0.002892 foreach_func                (2): Loaded '' ('^usb:') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usb1'.
0.002899 foreach_func                (2): Loaded 'Universal Serial Bus' ('usb:002,002') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usb1'.
0.002902 foreach_func                (2): Loaded 'Universal Serial Bus' ('usb:001,011') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usb1'.
0.002904 foreach_func                (2): Loaded 'Universal Serial Bus' ('usb:001,004') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usb1'.
0.002907 foreach_func                (2): Called for filename '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usbdiskdirect'.
0.002996 foreach_func                (2): Loaded 'USB Mass Storage direct IO' ('usbdiskdirect:/dev/sdb') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usbdiskdirect'.
0.003001 foreach_func                (2): Called for filename '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usbscsi'.
0.003076 foreach_func                (2): Loaded 'USB Mass Storage raw SCSI' ('usbscsi:/dev/sg1') from '/usr/lib/x86_64-linux-gnu/libgphoto2_port/0.12.0/usbscsi'.
0.003083 gp_port_info_list_count     (2): Counting entries (17 available)...
0.003086 gp_port_info_list_count     (2): 12 regular entries available.
0.003090 gp_abilities_list_load_dir  (2): Using ltdl to load camera libraries from '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27'...
0.003112 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/ax203'.
0.003116 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/canon'.
0.003118 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/digigr8'.
0.003120 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/dimagev'.
0.003122 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/directory'.
0.003124 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/docupen'.
0.003126 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/jl2005a'.
0.003129 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/jl2005c'.
0.003131 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/kodak_dc240'.
0.003133 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/lumix'.
0.003135 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/mars'.
0.003137 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/pentax'.
0.003139 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/ptp2'.
0.003141 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/ricoh_g3'.
0.003144 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/sierra'.
0.003146 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/sonix'.
0.003148 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/sq905'.
0.003150 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/st2205'.
0.003152 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/topfield'.
0.003154 foreach_func                (2): Found '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/tp6801'.
0.003157 gp_abilities_list_load_dir  (2): Found 20 camera drivers.
0.016397 gp_port_info_list_count     (2): Counting entries (17 available)...
0.016414 gp_port_info_list_count     (2): 12 regular entries available.
0.016417 gp_port_new                 (2): Creating new device...
0.016420 gp_port_info_list_get_info  (2): Getting info of entry 0 (17 available)...
0.016462 gp_port_set_settings        (2): Setting settings...
0.016467 gp_port_info_list_get_info  (2): Getting info of entry 1 (17 available)...
0.016505 gp_port_set_settings        (2): Setting settings...
0.016510 gp_port_info_list_get_info  (2): Getting info of entry 2 (17 available)...
0.016554 gp_port_set_timeout         (2): Setting port timeout to 500 milliseconds.
0.016558 gp_port_set_settings        (2): Setting settings...
0.016561 gp_port_info_list_get_info  (2): Getting info of entry 3 (17 available)...
0.016599 gp_port_set_timeout         (2): Setting port timeout to 500 milliseconds.
0.016603 gp_port_set_settings        (2): Setting settings...
0.016606 gp_port_info_list_get_info  (2): Getting info of entry 4 (17 available)...
0.016643 gp_port_set_timeout         (2): Setting port timeout to 500 milliseconds.
0.016647 gp_port_set_settings        (2): Setting settings...
0.016656 gp_port_info_list_get_info  (2): Getting info of entry 5 (17 available)...
0.016693 gp_port_set_timeout         (2): Setting port timeout to 500 milliseconds.
0.016697 gp_port_set_settings        (2): Setting settings...
0.016700 gp_port_info_list_get_info  (2): Getting info of entry 6 (17 available)...
0.016735 gp_port_set_timeout         (2): Setting port timeout to 500 milliseconds.
0.016739 gp_port_set_settings        (2): Setting settings...
0.016742 gp_port_info_list_get_info  (2): Getting info of entry 7 (17 available)...
0.018247 gp_port_set_timeout         (2): Setting port timeout to 5000 milliseconds.
0.018255 gp_port_set_settings        (2): Setting settings...
0.018261 gp_libusb1_update           (2): (old int=0, conf=-1, alt=-1) port usb:002,002, (new int=0, conf=-1, alt=-1) port usb:002,002
0.018264 gp_libusb1_update           (2): lowlevel libusb1 port not yet opened, no need for libusb changes
0.018266 gp_abilities_list_detect_usb(2): Auto-detecting USB cameras...
0.018442 gp_libusb1_find_device_by_class_lib(2): Looking for USB device (class 0x29a, subclass, 0xffffffff, protocol 0xffffffff)...
0.018566 gp_libusb1_find_device_by_class_lib(2): Looking for USB device (class 0x6, subclass, 0x1, protocol 0x1)...
0.018578 gp_port_info_list_get_info  (2): Getting info of entry 8 (17 available)...
0.020009 gp_port_set_timeout         (2): Setting port timeout to 5000 milliseconds.
0.020016 gp_port_set_settings        (2): Setting settings...
0.020021 gp_libusb1_update           (2): (old int=0, conf=-1, alt=-1) port usb:001,011, (new int=0, conf=-1, alt=-1) port usb:001,011
0.020024 gp_libusb1_update           (2): lowlevel libusb1 port not yet opened, no need for libusb changes
0.020027 gp_abilities_list_detect_usb(2): Auto-detecting USB cameras...
0.020182 gp_libusb1_find_device_by_class_lib(2): Looking for USB device (class 0x29a, subclass, 0xffffffff, protocol 0xffffffff)...
0.020305 gp_libusb1_find_device_by_class_lib(2): Looking for USB device (class 0x6, subclass, 0x1, protocol 0x1)...
0.020314 gp_libusb1_find_device_lib  (2): Looking for USB device (vendor 0x2717, product 0xff40)... found.
0.020332 gp_libusb1_find_device_lib  (2): Detected defaults: config 1, interface 0, altsetting 0, inep 81, outep 01, intep 82, class ff, subclass ff
0.020336 gp_abilities_list_detect_usb(2): Found 'Xiaomi Mi-2s (id2) (MTP)' (0x2717,0xff40)
0.020346 gp_port_info_list_get_info  (2): Getting info of entry 9 (17 available)...
0.021876 gp_port_set_timeout         (2): Setting port timeout to 5000 milliseconds.
0.021930 gp_port_set_settings        (2): Setting settings...
0.021957 gp_libusb1_update           (2): (old int=0, conf=-1, alt=-1) port usb:001,004, (new int=0, conf=-1, alt=-1) port usb:001,004
0.021961 gp_libusb1_update           (2): lowlevel libusb1 port not yet opened, no need for libusb changes
0.021964 gp_abilities_list_detect_usb(2): Auto-detecting USB cameras...
0.022210 gp_libusb1_find_device_by_class_lib(2): Looking for USB device (class 0x29a, subclass, 0xffffffff, protocol 0xffffffff)...
0.022402 gp_libusb1_find_device_by_class_lib(2): Looking for USB device (class 0x6, subclass, 0x1, protocol 0x1)...
0.022422 gp_port_info_list_get_info  (2): Getting info of entry 10 (17 available)...
0.022596 gp_port_set_settings        (2): Setting settings...
0.022602 gp_abilities_list_detect_usb(2): Auto-detecting USB cameras...
0.022644 gp_port_info_list_get_info  (2): Getting info of entry 11 (17 available)...
0.022696 gp_port_set_settings        (2): Setting settings...
0.022702 gp_abilities_list_detect_usb(2): Auto-detecting USB cameras...
0.023150 gp_port_free                (2): Freeing port...
0.023154 gp_port_close               (2): Closing port...
0.023219 gp_camera_set_abilities     (2): Setting abilities ('Xiaomi Mi-2s (id2) (MTP)')...
0.023225 gp_setting_set              (2): Setting key 'model' to value 'Xiaomi Mi-2s (id2) (MTP)' (gphoto2)
0.023229 save_settings               (2): Saving 2 setting(s) to file "/home/ngux/.gphoto/settings"
0.023285 gp_port_info_list_lookup_path(2): Looking for path 'usb:001,011' (17 entries available)...
0.023292 gp_port_info_list_get_info  (2): Getting info of entry 8 (17 available)...
0.023296 gp_camera_set_port_info     (2): Setting port info for port 'Universal Serial Bus' at 'usb:001,011'...
0.024869 gp_port_set_timeout         (2): Setting port timeout to 5000 milliseconds.
0.024881 gp_port_set_settings        (2): Setting settings...
0.024889 gp_libusb1_update           (2): (old int=0, conf=-1, alt=-1) port usb:001,011, (new int=0, conf=-1, alt=-1) port usb:001,011
0.024892 gp_libusb1_update           (2): lowlevel libusb1 port not yet opened, no need for libusb changes
0.024895 gp_setting_set              (2): Setting key 'port' to value 'usb:001,011' (gphoto2)
0.024899 save_settings               (2): Saving 2 setting(s) to file "/home/ngux/.gphoto/settings"
0.025090 gp_camera_init              (2): Initializing camera...
0.025133 gp_libusb1_find_device_lib  (2): Looking for USB device (vendor 0x2717, product 0xff40)... found.
0.025157 gp_libusb1_find_device_lib  (2): Detected defaults: config 1, interface 0, altsetting 0, inep 81, outep 01, intep 82, class ff, subclass ff
0.025179 gp_camera_init              (2): Loading '/usr/lib/x86_64-linux-gnu/libgphoto2/2.5.27/ptp2'...
0.025973 gp_port_open                (2): Opening USB port...
0.025999 gp_libusb1_open             (2): ()
0.026020 gp_libusb1_open             (2): claiming interface 0
0.026026 gp_libusb1_open [libusb1.c:437](0): 'libusb_claim_interface (port->pl->dh, port->settings.usb.interface)' failed: Resource busy (-6)
0.026031 gp_port_set_error [gphoto2-port.c:1190](0): Could not claim interface 0 (Device or resource busy). Make sure no other program (gvfs-gphoto2-volume-monitor) or kernel module (such as sdc2xx, stv680, spca50x) is using the device and you have read/write access to the device.
0.026145 gp_context_error            (0): An error occurred in the io-library ('Could not claim the USB device'): Could not claim interface 0 (Device or resource busy). Make sure no other program (gvfs-gphoto2-volume-monitor) or kernel module (such as sdc2xx, stv680, spca50x) is using the device and you have read/write access to the device.
0.026422 gp_camera_free              (2): Freeing camera...
0.026426 gp_port_free                (2): Freeing port...
0.026429 gp_port_close               (2): Closing port...
0.027529 gp_port_set_error [gphoto2-port.c:1190](0): Could not release interface 0 (Device or resource busy).
0.027709 gp_filesystem_reset         (2): resetting filesystem
0.027714 gp_filesystem_lru_clear     (2): Clearing fscache LRU list...
0.027716 gp_filesystem_lru_clear     (2): fscache LRU list already empty
0.027719 delete_all_folders          (2): Internally deleting all folders from '/'...
0.027721 lookup_folder               (2): Lookup folder '/'...
0.027724 lookup_folder               (2): Found! / is 0x56165c7796b0
0.027726 recurse_delete_folder       (2): Recurse delete folder 0x56165c7796b0//
0.027728 delete_all_files            (2): Delete all files in folder 0x56165c7796b0//

It’s probably Gnome files. You need to unmount (“eject”) the phone in Gnome files. By default, Gnome files mounts it. Rapid Photo Downloader attempts to automatically instruct Gnome files to do that, but it looks like it’s not working for some reason.

With the RPD_SCAN_DEBUG’s method the output (from the error to the end)

``` ERROR Unable to access camera POCO X3 NFC: GP_ERROR. Is it locked? Thu Apr 28 20:10:05 2022 Call to __init__ on line 50 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/cameraerror.py from line 222 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/camera.py Thu Apr 28 20:10:05 2022 Call to __init__ on line 34 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/cameraerror.py from line 56 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/cameraerror.py Thu Apr 28 20:10:05 2022 Call to __init__ on line 1320 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/interprocess.py from line 552 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py Thu Apr 28 20:10:05 2022 Call to _slotnames on line 109 of /usr/lib/python3.10/copyreg.py from line 551 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py Thu Apr 28 20:10:05 2022 Call to __reduce_ex__ on line 786 of /usr/lib/python3.10/enum.py from line 551 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py Thu Apr 28 20:10:05 2022 Call to send_message_to_sink on line 1188 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py from line 555 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py Thu Apr 28 20:10:05 2022 Call to debug on line 2140 of /usr/lib/python3.10/logging/__init__.py from line 1190 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py Thu Apr 28 20:10:05 2022 Call to debug on line 1455 of /usr/lib/python3.10/logging/__init__.py from line 2148 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to isEnabledFor on line 1724 of /usr/lib/python3.10/logging/__init__.py from line 1464 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to _log on line 1600 of /usr/lib/python3.10/logging/__init__.py from line 1465 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to findCaller on line 1549 of /usr/lib/python3.10/logging/__init__.py from line 1612 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to on line 160 of /usr/lib/python3.10/logging/__init__.py from line 1554 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to normcase on line 52 of /usr/lib/python3.10/posixpath.py from line 1568 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to normcase on line 52 of /usr/lib/python3.10/posixpath.py from line 1568 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to makeRecord on line 1585 of /usr/lib/python3.10/logging/__init__.py from line 1622 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to __init__ on line 283 of /usr/lib/python3.10/logging/__init__.py from line 1591 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to getLevelName on line 119 of /usr/lib/python3.10/logging/__init__.py from line 313 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to basename on line 140 of /usr/lib/python3.10/posixpath.py from line 317 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to _get_sep on line 41 of /usr/lib/python3.10/posixpath.py from line 143 of /usr/lib/python3.10/posixpath.py Thu Apr 28 20:10:05 2022 Call to splitext on line 117 of /usr/lib/python3.10/posixpath.py from line 318 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to _splitext on line 121 of /usr/lib/python3.10/genericpath.py from line 125 of /usr/lib/python3.10/posixpath.py Thu Apr 28 20:10:05 2022 Call to current_thread on line 1423 of /usr/lib/python3.10/threading.py from line 332 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to name on line 1122 of /usr/lib/python3.10/threading.py from line 332 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to handle on line 1626 of /usr/lib/python3.10/logging/__init__.py from line 1624 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to filter on line 806 of /usr/lib/python3.10/logging/__init__.py from line 1633 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to callHandlers on line 1680 of /usr/lib/python3.10/logging/__init__.py from line 1634 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to handle on line 955 of /usr/lib/python3.10/logging/__init__.py from line 1696 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to filter on line 806 of /usr/lib/python3.10/logging/__init__.py from line 964 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to acquire on line 912 of /usr/lib/python3.10/logging/__init__.py from line 966 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to emit on line 1454 of /usr/lib/python3.10/logging/handlers.py from line 968 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to prepare on line 1425 of /usr/lib/python3.10/logging/handlers.py from line 1461 of /usr/lib/python3.10/logging/handlers.py Thu Apr 28 20:10:05 2022 Call to format on line 932 of /usr/lib/python3.10/logging/__init__.py from line 1444 of /usr/lib/python3.10/logging/handlers.py Thu Apr 28 20:10:05 2022 Call to format on line 665 of /usr/lib/python3.10/logging/__init__.py from line 943 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to getMessage on line 359 of /usr/lib/python3.10/logging/__init__.py from line 678 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to usesTime on line 643 of /usr/lib/python3.10/logging/__init__.py from line 679 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to usesTime on line 423 of /usr/lib/python3.10/logging/__init__.py from line 647 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to formatMessage on line 649 of /usr/lib/python3.10/logging/__init__.py from line 681 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to format on line 438 of /usr/lib/python3.10/logging/__init__.py from line 650 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to _format on line 431 of /usr/lib/python3.10/logging/__init__.py from line 440 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to copy on line 66 of /usr/lib/python3.10/copy.py from line 1446 of /usr/lib/python3.10/logging/handlers.py Thu Apr 28 20:10:05 2022 Call to _reconstruct on line 259 of /usr/lib/python3.10/copy.py from line 102 of /usr/lib/python3.10/copy.py Thu Apr 28 20:10:05 2022 Call to __newobj__ on line 100 of /usr/lib/python3.10/copyreg.py from line 265 of /usr/lib/python3.10/copy.py Thu Apr 28 20:10:05 2022 Call to enqueue on line 61 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/iplogging.py from line 1461 of /usr/lib/python3.10/logging/handlers.py Thu Apr 28 20:10:05 2022 Call to send on line 480 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py from line 63 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/iplogging.py Thu Apr 28 20:10:05 2022 Call to release on line 919 of /usr/lib/python3.10/logging/__init__.py from line 970 of /usr/lib/python3.10/logging/__init__.py Thu Apr 28 20:10:05 2022 Call to send_message_to_sink on line 973 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/interprocess.py from line 1197 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py Thu Apr 28 20:10:05 2022 Call to send_multipart on line 549 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py from line 975 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/interprocess.py Thu Apr 28 20:10:05 2022 Call to send on line 480 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py from line 595 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py Thu Apr 28 20:10:05 2022 Call to send on line 480 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py from line 595 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py Thu Apr 28 20:10:05 2022 Call to send on line 480 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py from line 597 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py Thu Apr 28 20:10:05 2022 Call to resume_work on line 1130 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/interprocess.py from line 557 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/scan.py Thu Apr 28 20:10:05 2022 Call to recv_multipart on line 599 of /usr/lib/python3/dist-packages/zmq/sugar/socket.py from line 1131 of /home/ngux/.local/lib/python3.10/site-packages/raphodo/interprocess.py DEBUG Sending 0 scanned files from POCO X3 NFC to sink DEBUG https://damonlynch.net:443 "GET /rapid/version.json HTTP/1.1" 200 741 ```

If I unmount the phone (with turn to No data file transfert) and launch again RPD, it cannot find the phone.

Well it is not so a big deal, I can DL the file to the computer then sort and backup to the disks with RPD. CompactCard are working fine which is the most imortant. Probably an other Gnome’s update will do the trick.

Thanks for you help, I’ve learned

Unless I’m misunderstanding you, I think you’re doing something wrong here.

Here is what you need to do:

  1. Enable file transfer in the phone itself, using the android user interface
  2. Eject (unmount) the phone from gnome files, using the eject button.

Sorry for my explantions, English is not my motherlanguage, I’m French (nobody’s perfect ;-))

Yes these are the two steps I followed.

  • I’ve just noticed that when I unmount the phone in Nautilus (my file manager) the USB connexion in the phone turns to “No data Transfert”.
  • If I turn it back to “File Tranfert” it mounts the phone in the PC.
    I cannot have the phone with the connexio USB on “File Transfert” and ejected (unmounted) in Nautilus.
    Note : To be sure we are talking about the same thing, there is three possiblitiies to the USB when I connect my phone :
    1/ No data tranfer
    2/ File Transfer / Android Auto
    3/ Transfer Photos (PTP) witch works but I cannot see any picture with this connexion.
    I suddenly have a terrible doubt : could it be the right connexion (the third) for RDP but my pictures and videos are not in the right folder (they are saved by the camera on an external card) :face_with_open_eyes_and_hand_over_mouth:

Is it possible that RDP has no access to the MicroSDcard of the phone ?

In this case nautalis is interfering with RPD mounting your phone. If you can disable that, RPD should mount your phone.

You mean disabling the connection to Nautilus (how?) to have the MicroSD of the phone to mount ?

There are two issues happening simultaneously here:

  1. Your phone takes a unique approach to file transfers: as soon as the computer relinquishes control of the MTP connection, your phone immediately switches to a mode in which no file transfers are possible without you authorising them again. Maybe there are other phones that do that, but I have never heard of it. Is it a bug? Is it by design? I have no idea. Who knows.
  2. You are using a Linux desktop that uses GVFS under the hood. By default, GVFS is configured to take control of an MTP connection as soon as the phone is plugged in.

It is the combination of (1) and (2) that is causing the underlying problem: Rapid Photo Downloader is not able to establish an MTP connection to download files from the phone, because your phone has already disconnected by the time GVFS relinquishes control of the phone. Remember: only one operating system process can control an MTP device. That is how the protocol works. There is literally nothing Rapid Photo Downloader or any other program like gPhoto2 that uses MTP directly can do here. This is not a problem with Rapid Photo Downloader. It is a problem with the way your phone and your Linux desktop are Interacting with each other.

You have four different options, the first three of which will allow you to use Rapid Photo Downloader to download directly from your phone:

  1. Change the configuration of your phone, if possible, so that it does not immediately turn off file transfers when an active MTP connection is relinquished. This may or may not be possible, depending on your phone software. Hopefully it is, because in my opinion it’s pretty dumb.
  2. Disable automatic mounting of MTP devices by GVFS. How do you do that? That’s a question for Gnome people, or those who developed your current Linux desktop.
  3. Use a Linux desktop that doesn’t automatically mount MTP devices. KDE is much, much more flexible in this respect, because you can easily turn it on or off, and in every KDE setup I’ve seen, it is not turned on by default. I haven’t tried every KDE desktop in every Linux distro, but as part of my testing of Rapid Photo Downloader, I have tried many. None of them default to automatically mounting MTP devices — they ask you what to do first.
  4. Use a GVFS based file manager to transfer files from your phone, and use Rapid Photo Downloader only of its capabilities are still convenient to you.
1 Like