Version: unknown (using KDE 3.5.0, Kubuntu Package 4:3.5.0-0ubuntu3 dapper) Compiler: Target: i486-linux-gnu OS: Linux (i686) release 2.6.15-11-686 Hi, we try to integrate media: hotplug support into the upcoming release 0.8.1 of digikam. When I plug in a Canon Powershot A40, nothing happens. media:/ is empty and I get no Media action selector dialog. camera:/ and gphoto2 --auto-detect and digikam --detect-camera detect the camera without problems and show the list of photos. The service menu entry is: [Desktop Action digikam download] Exec=digikam --detect-camera Icon=digikam Name=digikam download [Desktop Entry] Actions=digikam download ServiceTypes=media/gphoto2camera When the camera is plugin in the command output of dcop kded mediamanager fullList is an empty line. Using udevmonitor I get for plugin and -out: plug in: UEVENT[1136759605.330403] add@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1 UEVENT[1136759605.330532] add@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1/4-1.1:1.0 UEVENT[1136759605.330560] add@/class/usb_device/usbdev4.10 UDEV [1136759605.351294] add@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1 UDEV [1136759605.442592] add@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1/4-1.1:1.0 UDEV [1136759605.502255] add@/class/usb_device/usbdev4.10 switch off: UEVENT[1136759610.185176] remove@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1/4-1.1:1.0 UEVENT[1136759610.185228] remove@/class/usb_device/usbdev4.10 UEVENT[1136759610.185253] remove@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1 UDEV [1136759610.187409] remove@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1/4-1.1:1.0 UDEV [1136759610.193200] remove@/class/usb_device/usbdev4.10 UDEV [1136759610.195409] remove@/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1 The diff between lshal output before and after the camera is pluged in is: $ diff -u hal.1 hal.2 --- hal.1 2006-01-08 22:39:09.000000000 +0100 +++ hal.2 2006-01-08 22:45:10.000000000 +0100 @@ -1,5 +1,5 @@ -Dumping 81 device(s) from the Global Device List: +Dumping 83 device(s) from the Global Device List: ------------------------------------------------- udi = '/org/freedesktop/Hal/devices/computer' storage.policy.default.mount_option.exec = true (bool) @@ -93,7 +93,7 @@ battery.charge_level.rate = 0 (0x0) (int) battery.charge_level.last_full = 46080 (0xb400) (int) battery.charge_level.current = 46080 (0xb400) (int) - battery.voltage.current = 12501 (0x30d5) (int) + battery.voltage.current = 12507 (0x30db) (int) battery.reporting.rate = 0 (0x0) (int) battery.reporting.current = 53280 (0xd020) (int) battery.rechargeable.is_discharging = false (bool) @@ -849,6 +849,72 @@ linux.sysfs_path_device = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1' (string) +udi = '/org/freedesktop/Hal/devices/usb_device_4a9_3058_noserial' + info.udi = '/org/freedesktop/Hal/devices/usb_device_4a9_3058_noserial' (string) + linux.subsystem = 'usb' (string) + linux.hotplug_type = 1 (0x1) (int) + usb_device.bus_number = 4 (0x4) (int) + usb_device.can_wake_up = false (bool) + usb_device.is_self_powered = true (bool) + usb_device.version_bcd = 272 (0x110) (int) + usb_device.speed_bcd = 4608 (0x1200) (int) + usb_device.linux.device_number = 7 (0x7) (int) + usb_device.num_ports = 0 (0x0) (int) + usb_device.max_power = 100 (0x64) (int) + usb_device.device_revision_bcd = 1 (0x1) (int) + info.product = 'PowerShot A40' (string) + usb_device.product = 'PowerShot A40' (string) + info.vendor = 'Canon, Inc.' (string) + usb_device.vendor = 'Canon, Inc.' (string) + usb_device.product_id = 12376 (0x3058) (int) + usb_device.vendor_id = 1193 (0x4a9) (int) + usb_device.device_protocol = 255 (0xff) (int) + usb_device.device_subclass = 255 (0xff) (int) + usb_device.device_class = 255 (0xff) (int) + usb_device.num_interfaces = 1 (0x1) (int) + usb_device.num_configurations = 1 (0x1) (int) + usb_device.configuration_value = 1 (0x1) (int) + usb_device.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1' (string) + info.linux.driver = 'usb' (string) + info.bus = 'usb_device' (string) + info.parent = '/org/freedesktop/Hal/devices/usb_device_409_58_noserial' (string) + linux.sysfs_path_device = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1' (string) + linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1' (string) + +udi = '/org/freedesktop/Hal/devices/usb_device_4a9_3058_noserial_if0' + info.udi = '/org/freedesktop/Hal/devices/usb_device_4a9_3058_noserial_if0' (string) + linux.subsystem = 'usb' (string) + linux.hotplug_type = 1 (0x1) (int) + info.product = 'USB Vendor Specific Interface' (string) + usb.interface.protocol = 255 (0xff) (int) + usb.interface.subclass = 255 (0xff) (int) + usb.interface.class = 255 (0xff) (int) + usb.interface.number = 0 (0x0) (int) + usb.linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1/4-1.1:1.0' (string) + usb.configuration_value = 1 (0x1) (int) + usb.num_configurations = 1 (0x1) (int) + usb.num_interfaces = 1 (0x1) (int) + usb.device_class = 255 (0xff) (int) + usb.device_subclass = 255 (0xff) (int) + usb.device_protocol = 255 (0xff) (int) + usb.vendor_id = 1193 (0x4a9) (int) + usb.product_id = 12376 (0x3058) (int) + usb.vendor = 'Canon, Inc.' (string) + usb.product = 'USB Vendor Specific Interface' (string) + usb.device_revision_bcd = 1 (0x1) (int) + usb.max_power = 100 (0x64) (int) + usb.num_ports = 0 (0x0) (int) + usb.linux.device_number = 7 (0x7) (int) + usb.speed_bcd = 4608 (0x1200) (int) + usb.version_bcd = 272 (0x110) (int) + usb.is_self_powered = true (bool) + usb.can_wake_up = false (bool) + usb.bus_number = 4 (0x4) (int) + info.bus = 'usb' (string) + info.parent = '/org/freedesktop/Hal/devices/usb_device_4a9_3058_noserial' (string) + linux.sysfs_path_device = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1/4-1.1:1.0' (string) + linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb4/4-1/4-1.1/4-1.1:1.0' (string) + udi = '/org/freedesktop/Hal/devices/usb_device_409_58_noserial_if0' info.udi = '/org/freedesktop/Hal/devices/usb_device_409_58_noserial_if0' (string) linux.subsystem = 'usb' (string) @@ -1781,6 +1847,6 @@ linux.sysfs_path = '/sys/devices/pnp0/00:0a' (string) -Dumped 81 device(s) from the Global Device List. +Dumped 83 device(s) from the Global Device List. ------------------------------------------------ If you need more info let me know. thx, Achim Achim
From your lshal output, HAL reports your camera incorrectly, and in your case we can't even workaround it. We need info.capabilities to contain camera, and camera.access_method or camera.libgphoto2.support to be set on the device. Otherwise we can't determine that it's a camera. Looking at this output it's definitely an issue in HAL or gphoto packaging. The necessary HAL config files are not generated on your system (and they should be once libgphoto is installed). We got such reports recently, and it looks like only Suse got the packages rights.