Epson PhotoPC 3100z and Linux
This page details getting an Epson PhotoPC 3100Z working with Linux. For software to sync the camera, checkout my Gtk Perl based USB Camera Sync for Linux.
I tried running the latest version of GPhoto, but was not successful in getting the camera to be recognized. After reading over the GPhoto page, I came to realize that the camera was in fact a USB Mass Storage camera, which Gphoto does not support.
Requirements
- Kernel version 2.4 or greater
- USB Mass Storage Driver (http://www2.one-eyed-alien.net/~mdharm/linux-usb/)
- HotPlug (http://linux-hotplug.sourceforge.net/)
- Sg3_utils helps for finding the camera and the right SCSI device (http://www.torque.net/sg/index.html)
Notes
- As root, check to make sure the usb-storage is loaded with the command
/sbin/lsmod
- If not, you'll need to load it via
modprobe usb-storage
- If that doesn't work, its possible that its already built into the kernel, which I here is faster in some of the newer kernels.
- Newer version of Red Hat, Debian and SuSE use Hotplug (http://linux-hotplug.sourceforge.net/) to manage USB devices. See the website for details.
Creating a Mount Point for the camera
As long as your kernel has USB mass storage support, you can pretty much hook up the camera, and you'll see it load. After pluging in the camera and turning it on, run the command
cat /proc/bus/usb/devices
and you should see some output of what is connected to your usb ports, but more specifically this:
As you can see in the photo, it's using the usb mass storage driver.
The steps are as follows:
- As root, created a directory called /mnt/film with the command
mkdir /mnt/film
- Now, I have a IDE RAID setup that looks like a SCSI disk, I used the command
mount /dev/sdb1 /mnt/film
The drive might actually be something different depending on your setup (such as /dev/sda1 is pretty common without existing SCSI devices.), and there's an easy way to find it. - To find the right device, download sg3_utils and install.
- With the camera plugged in and running, run the command
sg_scan -i
In the output, you'll see something like this:
- Notice I have the Epson camera at the raw device /dev/sg3. Now run the command
sg_map
The ouput will look something like this: - Notice that it points my raw device /dev/sg3 to the real scsi device /dev/sdb. But why do I have it as /dev/sdb1 in the mount command? Because the 1 is for the first logical partition on the card. Hence, whatever you're real device, tack on a 1.
- With the camera mounted, simply go to the photo directory and check out your photos:
/mnt/film/dcim/100epson
- Now, add the following line to /etc/fstab:
/dev/sdb1 /mnt/film vfat rw,noauto,user 0 0
Testing
- Tested on Red Hat 9 kernel version 2.4.20-18.9
- Tested on Red Hat 7.2 kernel version 2.4.7-10