Canon R10 camera not showing up as removable storage anymore

I have a Canon R10 camera that I could connect to my Manjaro system via USB and have its SD card show up as a removable drive. That’s not the case anymore. Plugging the camera in has no visible effect on my system nor on the camera itself.

I don’t remember when was the last time I was able to access the camera’s memory card this way but it was several months ago.

Plugging the same camera using the same USB cable on a Windows machine does work and the SD card is visible as an external storage device. Also the USB ports on the Manjaro machine work just fine when plugging in other devices

I have libgphoto-2 installed and running gphoto2 --auto-detectreturns:

Model                          Port                                            
----------------------------------------------------------
Canon EOS R10                  usb:001,017

Return of inxi --full --admin --filter --width with the camera plugged in:

System:
  Kernel: 6.6.99-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 15.1.1
    clocksource: tsc avail: acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.6-x86_64
    root=UUID=d97bae32-f42e-4c00-aace-99c27729fea7 rw quiet apparmor=1
    security=apparmor resume=UUID=8d9f0b08-f95a-4dae-8463-e90447e43f5e
    udev.log_priority=3
  Desktop: Cinnamon v: 6.4.10 tk: GTK v: 3.24.49 wm: Muffin v: 6.4.1 tools:
    avail: cinnamon-screensaver vt: 7 dm: LightDM v: 1.32.0 Distro: Manjaro
    base: Arch Linux
Machine:
  Type: Laptop System: LENOVO product: 20NB001SUS v: ThinkPad E590
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: LENOVO model: 20NB001SUS v: SDK0J40697 WIN
    serial: <superuser required> part-nu: LENOVO_MT_20NB_BU_SMB_FM_ThinkPad E590
    uuid: <superuser required> UEFI: LENOVO v: R0YET49W (1.32 )
    date: 03/14/2022
Battery:
  ID-1: BAT0 charge: 32.6 Wh (100.0%) condition: 32.6/45.7 Wh (71.3%)
    volts: 12.3 min: 11.1 model: Celxpert 01AV448 type: Li-poly serial: <filter>
    status: full cycles: 1433
  Device-1: hidpp_battery_0 model: Logitech M720 Triathlon Multi-Device Mouse
    serial: <filter> charge: 100% (should be ignored) rechargeable: yes
    status: discharging
CPU:
  Info: model: Intel Core i7-8565U bits: 64 type: MT MCP
    arch: Comet/Whiskey Lake note: check gen: core 8 level: v3 note: check
    built: 2018 process: Intel 14nm family: 6 model-id: 0x8E (142)
    stepping: 0xC (12) microcode: 0x100
  Topology: cpus: 1x dies: 1 clusters: 4 cores: 4 threads: 8 tpc: 2
    smt: enabled cache: L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB
    desc: 4x256 KiB L3: 8 MiB desc: 1x8 MiB
  Speed (MHz): avg: 800 min/max: 400/4600 scaling: driver: intel_pstate
    governor: powersave cores: 1: 800 2: 800 3: 800 4: 800 5: 800 6: 800 7: 800
    8: 800 bogomips: 32012
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: gather_data_sampling mitigation: Microcode
  Type: indirect_target_selection mitigation: Aligned branch/return thunks
  Type: itlb_multihit status: KVM: VMX disabled
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: reg_file_data_sampling status: Not affected
  Type: retbleed mitigation: Enhanced IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: Enhanced / Automatic IBRS; IBPB: conditional;
    PBRSB-eIBRS: SW sequence; BHI: SW loop, KVM: SW loop
  Type: srbds mitigation: Microcode
  Type: tsa status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel WhiskeyLake-U GT2 [UHD Graphics 620] vendor: Lenovo
    driver: i915 v: kernel arch: Gen-9.5 process: Intel 14nm built: 2016-20
    ports: active: HDMI-A-1,eDP-1 empty: DP-1,HDMI-A-2 bus-ID: 00:02.0
    chip-ID: 8086:3ea0 class-ID: 0300
  Device-2: Canon Canon Digital Camera driver: N/A type: USB rev: 2.1
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-3:17 chip-ID: 04a9:32f8
    class-ID: 0601 serial: <filter>
  Device-3: Bison SunplusIT Integrated Camera driver: uvcvideo type: USB
    rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6:3 chip-ID: 5986:2113
    class-ID: 0e02
  Display: x11 server: X.org v: 1.21.1.18 with: Xwayland v: 24.1.8 driver: X:
    loaded: modesetting alternate: fbdev,vesa dri: iris gpu: i915 display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 4480x1440 s-size: <missing: xdpyinfo>
  Monitor-1: HDMI-A-1 mapped: HDMI-1 pos: primary,top-left
    model: ViewSonic VX2478 Series serial: <filter> built: 2019 res:
    mode: 2560x1440 hz: 60 scale: 100% (1) dpi: 124 gamma: 1.2
    size: 526x296mm (20.71x11.65") diag: 604mm (23.8") ratio: 16:9 modes:
    max: 2560x1440 min: 720x400
  Monitor-2: eDP-1 pos: bottom-r model: Lenovo 0x40ba built: 2018 res:
    mode: 1920x1080 hz: 60 scale: 100% (1) dpi: 142 gamma: 1.2
    size: 344x194mm (13.54x7.64") diag: 395mm (15.5") ratio: 16:9
    modes: 1920x1080
  API: EGL v: 1.5 hw: drv: intel iris platforms: device: 0 drv: iris
    device: 1 drv: swrast gbm: drv: iris surfaceless: drv: iris x11: drv: iris
    inactive: wayland
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 25.1.6-arch1.1
    glx-v: 1.4 direct-render: yes renderer: Mesa Intel UHD Graphics 620 (WHL GT2)
    device-ID: 8086:3ea0 memory: 30.34 GiB unified: yes
  Info: Tools: api: eglinfo,glxinfo x11: xprop,xrandr
Audio:
  Device-1: Intel Cannon Point-LP High Definition Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl,snd_sof_pci_intel_cnl
    bus-ID: 00:1f.3 chip-ID: 8086:9dc8 class-ID: 0403
  API: ALSA v: k6.6.99-1-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: sndiod v: N/A status: off tools: aucat,midicat,sndioctl
  Server-2: JACK v: 1.9.22 status: off tools: N/A
  Server-3: PipeWire v: 1.4.6 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
    vendor: Lenovo driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1
    port: 2000 bus-ID: 04:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: enp4s0 state: down mac: <filter>
  Device-2: Intel Wi-Fi 5 Wireless-AC 9x6x [Thunder Peak] driver: iwlwifi
    v: kernel pcie: gen: 2 speed: 5 GT/s lanes: 1 bus-ID: 05:00.0
    chip-ID: 8086:2526 class-ID: 0280
  IF: wlp5s0 state: up mac: <filter>
  IF-ID-1: br-0c3f1127ec33 state: down mac: <filter>
  IF-ID-2: br-7e9c3d76afc0 state: down mac: <filter>
  IF-ID-3: br-8921cd838264 state: down mac: <filter>
  IF-ID-4: br-93a16cba89ae state: down mac: <filter>
  IF-ID-5: br-94e9640b65cb state: down mac: <filter>
  IF-ID-6: br-dce6322ced5d state: down mac: <filter>
  IF-ID-7: br-ebd36a73a43c state: down mac: <filter>
  IF-ID-8: br-f623d385bd86 state: down mac: <filter>
  IF-ID-9: docker0 state: down mac: <filter>
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
  Device-1: Intel Wireless-AC 9260 Bluetooth Adapter driver: btusb v: 0.8
    type: USB rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-5:2
    chip-ID: 8087:0025 class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 1 state: up address: see --recommends
Drives:
  Local Storage: total: 476.94 GiB used: 207.6 GiB (43.5%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Toshiba model: N/A
    size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 15.8 Gb/s
    lanes: 2 tech: SSD serial: <filter> fw-rev: 0108ADLA temp: 34.9 C
    scheme: GPT
Partition:
  ID-1: / raw-size: 442.46 GiB size: 434.45 GiB (98.19%)
    used: 207.6 GiB (47.8%) fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 320 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default) zswap: yes
    compressor: zstd max-pool: 20%
  ID-1: swap-1 type: partition size: 34.18 GiB used: 0 KiB (0.0%)
    priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3
Sensors:
  System Temperatures: cpu: 53.0 C pch: 41.0 C mobo: N/A
  Fan Speeds (rpm): fan-1: 0 fan-2: 0
Info:
  Memory: total: 32 GiB available: 31.07 GiB used: 14.21 GiB (45.7%)
  Processes: 343 Power: uptime: 5h 20m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 12.42 GiB services: csd-power,upowerd
    Init: systemd v: 257 default: graphical tool: systemctl
  Packages: 1613 pm: pacman pkgs: 1592 libs: 476 tools: pamac,yay pm: flatpak
    pkgs: 21 Compilers: gcc: 15.1.1 Shell: Bash v: 5.3.0
    running-in: gnome-terminal inxi: 3.3.38

Hey @ferares
I had the same problem with my camera, recently:

I found out, that i could connect my camera with the help from a little bid older iso (usbstick with live boot environment).

Where the autoconnection pop up… in Taskbar showed up, that normally won’t recognise under my normal Manjaro install.

I could mount the camera, only one single time there after i mounted the device with KDE Automount or Autodetect. But after i closed the dolphin browser after it. It won’t let me access the camera again.

Anyways, i had the pictures and i didn’t investigate anymore after that partial success.

I thought first this might be a KDE problem, but since you using Cinnamon, it must be something different then.

It looks like the system is seeing it.

You may be able to discover more by running:
journalctl -f
in a terminal
and then plugging in the device
… see what the system is seeing when you do that

There’s a possibility the SD card is corrupt; have you tried re-formatting it, assuming you don’t have other cards to test with?

I’d doubt that. And wouldn’t it be easier to take the SD card from the camera to a card reader? At least, that’s what me served as a current workaround for this re-occurring issue with several cameras and computer systems for the last 25 years, until I can solve it at the respective occurrence.

2 Likes

This is what I’ve done in the past, particularly with my previous camera where USB transfers were appallingly slow (it was probably USB1 or something).

One point to note: none of my built-in (laptop) SD readers have ever been recognized under Linux, as far as I know; USB-connected readers work fine.

Just note, that a removable storage is not the same as a storage which is accessible through the PTP-Protocol. I doubt a camera can be accessed directly as removable USB storage if the internal menu doesn’t offer that. That would lead to exclusive access, so that the camera has no access to the SD-Card while connected. So there must be an option in the settings of the camera for exclusive access.

That is a good start, but the PTP-Protocol is file manager dependent. If you use nautilus or nemo, then keep sure that gvfs-gphoto2 is installed. Keep sure, you unmount it correctly and don’t unplug it right away.

That list all available mounts:

gio mount -l
1 Like

Thanks everyone for the suggestions so far.

@anon33601770 running journalctl -f prints out the following when connecting the camera to the computer:

ago 06 17:38:50 fermin-e590 kernel: usb 1-3: new high-speed USB device number 5 using xhci_hcd
ago 06 17:38:50 fermin-e590 kernel: usb 1-3: New USB device found, idVendor=04a9, idProduct=32f8, bcdDevice= 2.10
ago 06 17:38:50 fermin-e590 kernel: usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
ago 06 17:38:50 fermin-e590 kernel: usb 1-3: Product: Canon Digital Camera
ago 06 17:38:50 fermin-e590 kernel: usb 1-3: Manufacturer: Canon Inc.
ago 06 17:38:50 fermin-e590 kernel: usb 1-3: SerialNumber: XXXXXXXX
ago 06 17:38:50 fermin-e590 mtp-probe[12410]: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-3"
ago 06 17:38:50 fermin-e590 mtp-probe[12410]: bus: 1, device: 5 was not an MTP device
ago 06 17:38:50 fermin-e590 mtp-probe[12413]: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-3"
ago 06 17:38:50 fermin-e590 mtp-probe[12413]: bus: 1, device: 5 was not an MTP device

@BG405, @nitja and @megavolt : The camera does work as expected on another computer that’s running Windows and it used to work as expected on this same installation of Manjaro some time ago. With “expected” I mean the camera would automatically detect it was plugged in via USB with a computer and get itself in “file transfer mode”. That would effectively block the use of the camera while it was connected and the OS would display the contents of the SD card as a removable drive. Again, this used to work like this with the same camera and on the same Manjaro system.

I could get the photos via another system or using the app on a mobile phone but this post I made hoping to get this working again since it is my preferred way of downloading the photos.

I can confirm that I have gvfs-gphoto2 installed and the output of gio mount -l while the camera is connected only lists my SSD.

Is gvfs-mtp installed?

That is the only thing I can think of, even though it would, to me, mean that the camera does not announce to support that protocol. :man_shrugging:

gvfs-mtp is installed :melting_face: I’m kinda busy rn but I’m going to try googling for that message later and see where that leads. ty

Te camera is now working as expected again. I did not do anything though so I don’t know what was that about.

Running journalctl -f and plugging the camera in prints out:

ago 17 20:48:18 fermin-e590 kernel: usb 1-4: new high-speed USB device number 8 using xhci_hcd
ago 17 20:48:18 fermin-e590 kernel: usb 1-4: New USB device found, idVendor=04a9, idProduct=32f8, bcdDevice= 2.10
ago 17 20:48:18 fermin-e590 kernel: usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
ago 17 20:48:18 fermin-e590 kernel: usb 1-4: Product: Canon Digital Camera
ago 17 20:48:18 fermin-e590 kernel: usb 1-4: Manufacturer: Canon Inc.
ago 17 20:48:18 fermin-e590 kernel: usb 1-4: SerialNumber: XXXXXXXXXXXXXXXX
ago 17 20:48:18 fermin-e590 mtp-probe[47433]: checking bus 1, device 8: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-4"
ago 17 20:48:18 fermin-e590 mtp-probe[47433]: bus: 1, device: 8 was not an MTP device
ago 17 20:48:18 fermin-e590 mtp-probe[47438]: checking bus 1, device 8: "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-4"
ago 17 20:48:18 fermin-e590 colord[779]: CdMain: failed to emit DeviceAdded: failed to register object: An object is already exported for the interface org.freedesktop.ColorManager.Device at /org/freedesktop/ColorManager/devices/sysfs__null_
ago 17 20:48:18 fermin-e590 mtp-probe[47438]: bus: 1, device: 8 was not an MTP device

And gio mount -l with the camera connected now prints:

Drive(0): KBG30ZMT512G TOSHIBA
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
Volume(0): Canon Digital Camera
  Type: GProxyVolume (GProxyVolumeMonitorGPhoto2)
  Mount(0): Canon Digital Camera -> gphoto2://Canon_Inc._Canon_Digital_Camera_A0000000000000000000000XXXXXXXXX/
    Type: GProxyShadowMount (GProxyVolumeMonitorGPhoto2)
Mount(1): Canon Digital Camera -> gphoto2://Canon_Inc._Canon_Digital_Camera_A0000000000000000000000XXXXXXXXX/
  Type: GDaemonMount

If any of this gives someone a clue about what might have happened I’d love to know about it.

Marking this as solved for now…