This site deals with the problem of getting Casio QV and Exilim digital still cameras to work with the Linux USB mass storage driver. If you have another digital still camera you should have a look at the overview of supported digital still cameras.
Casio QV and Exilim digital still cameras are not conformant to the USB storage specification in two ways:
Older Casio QV Digital Still Cameras (for example the QV 2x00/3x00/8000) show
up as
VendorID: 0x07cf ProductID: 0x1001 Revision: 90.09.
These cameras are supported as USB mass storage devices by Alan Cox's 2.4.x-ac kernels
since kernel
2.4.2-ac21
and by the official Linux kernels since kernel 2.4.8-pre3.
Recent Casio QV and Exilim Digital Still Cameras (for example the QV3, QV 4000, QV 5700, QV R3, QV R4, and the Exilim Series) show
up as
VendorID: 0x07cf ProductID: 0x1001 Revision: 10.00.
These cameras are supported as USB mass storage devices by Alan Cox's 2.4.x-ac kernels
since kernel 2.4.10-ac12 and by the official Linux kernels since kernel 2.4.18-pre3.
Patches for older kernels are available:
When configuring the kernel you must enable SCSI support and SCSI hard disk support as well as the support for VFAT file systems, as the storage of the camera is accessed as a VFAT partition on a SCSI hard disk. Of course you must enable USB support and USB mass storage support and the USB controller you are using (UHCI or OHCI).
So far the Linux USB support for the Casio QV and Exilim series has only been tested with the following cameras:
Please let me know whether the driver works for you if you are using another model of the Casio QV series. If it doesn't work please send me the output of "cat /proc/bus/usb/devices".
For more information on using USB with Linux you should have a look at www.linux-usb.org .
All 2.4.x kernels of SuSE 7.1 and 7.2 must be patched with linux-2.4.2-Casio-QV.diff . The camera cannot be used with the 2.2.x kernels.
The Suse 7.1 and 7.2 Linux distributions uses the USB manager
usbmgr
for loading the required modules when you connect an USB device and unloading them
when you disconnect the device. But usbmgr does
not yet know the Casio QV Digital Still Cameras. So you have to edit the file
/etc/usbmgr/usbmgr.conf and have to add the following two lines
to the camera section:
# QV and Exilim [Casio]
vendor 0x07cf product 0x1001 module scsi_mod , sd_mod , usb-storage
Then you have to rebuild the usbmgr database by typing
/sbin/update_usbdb -f /etc/usbmgr/usbmgr.conf
Next you have to restart the usbmgr by typing
/etc/init.d/usbmgr restart
Now if you connect the camera and switch it to play, the usbmgr should automatically load the necessary modules (scsi_mod, sd_mod, and usb-storage).
Kernel 2.4.10 of SuSE 7.3 supports cameras with revision 90.09 out of the box. For cameras with revision 10.00 you must apply the patch linux-2.4.11-Casio-QV-4000.diff .
SuSE 7.3 does not use the USB manager "usbmgr" any more. It has been replaced by the more intelligent USB manager hotplug which does not need any modification of the configuration files.
Users of Red Hat 7.1 and 7.2 should upgrade their kernel and modutils to version 2.4.18 available at ftp://updates.redhat.com or any mirror of this site.
Red Hat 7.1 and 7.2 use the USB manager hotplug . So it is not necessary to modify any configuration files.
These Distributions are based on kernel 2.4.18 or later and support all of the above cameras out of the box. Be sure the hotplug package is installed, as some of these distributions don't install it by default.
The Debian developers consider the Linux 2.4.x kernel series as not mature enough to use it as default kernel. So Debian GNU Linux 3.0 (Woody) installs kernel 2.2.20 by default. You cannot access your camera with this kernel. But there are several kernel-image-2.4.18 packages optionally availabe. Just install the one that fits to your hardware. You should install the hotplug package as well.
If you have no SCSI disks in your computer system you can access the
storage of your camera as /dev/sda1. If you have one SCSI disk
you can access the storage as /dev/sdb1, and so on. In the
following let's assume that you have one SCSI disk in your system and
so you access the storage as /dev/sdb1. To create a mount
point for your camera you have to type:
mkdir -p /media/camera
then append the following line to the file /etc/fstab :
/dev/sdb1 /media/camera vfat ro,noauto,user 0 0
Now every user can mount the storage of the camera by typing mount /media/camera. Be sure to type umount /media/camera before you disconnect your camera.