Just after Christmas 2001 I decided it's finally time for me to get a digital camera to spice up some of my pages. Cheap as I am I decided to go for the absolutely lowest (and smallest) I could find and got a Dolphin FASTUSB-007 digital pencam from JDR.com for approx. $59. It supports two resolutions: either hi-res (352x288 pixels) or low-res (176x144 pixels) and holds either 20 hi-res or 80 low-res pictures. Not usable for CV but should be fine for Web stuff.
Other features: you can switch from 'Hr' to 'Lr' anytime without loosing pictures, which is nice; in 'Ct' (continuous) mode it records images in quick succession; it also has a built-in self-timer 'St' for those family photos.
The Linux-USB site didn't mention the camera but there were some hits on the Aiptek Pencam which looks strikingly similar to what I got. There was hope.
Just after hitting the 'Purchase' button I found out that I could have gotten the identical Aiptek Pencam at conrad electronics (a german electronics chain) for about half the price... *Sigh* - where would the US economy be without over-zealous online shoppers such as me? ;-)
Conclusion Having played with the camera for a few weeks now I can say that I wouldn't buy it again even at the fairly low price. The optics are lousy and have a fixed focus for landscape shots or something. It's definitively not what you want for close-up detail shots. The camera also requires a rather high amount of light or it simply refuses to work. Since the camera has no permanent storage it will loose all pictures if the battery is too low.
Jan 16 2006 The information on this page is obviously outdated WRT kernel config but the camera still works nicely as a V4L device using the stv680
module. I'm currently looking for a command line surveillance kit.
In order for USB to work you obviously need USB support. That's quite a load of options so here's what you need:
In Multimedia devices:
In USB support:
Add salt and pepper according to taste and
% make dep clean bzImage modules modules_install
Install the kernel and reboot.
Connect the pencam to the PC; if you don't have batteries inserted the display should remain blank. Now load the USB modules:
% modprobe uhci
This loads uhci and usbcore and if all goes well the camera emits a series of beeps. Congratulations for getting so far.
Make sure you have usbdevfs
mounted on /proc/bus/usb
, either by running devfsd
or by adding something like the following to your /etc/fstab
.
none /proc/bus/usb usbdevfs defaults 0 0
Mount the filesystem and verify:
% mount -a % ls /proc/bus/usb 001 002 devices drivers
The devices
file contains some interesting information (e.g. VendorID, ProductID) on all devices found on the bus.
gphoto2
is a command-line program for accessing cameras and apparently there are also graphics front ends available for it. It compiles easily:
% ./configure % make && make install
It requires write-access to /proc/bus/usb
so you have to run is as root
or via sudo
. As an alternative you can set set-uid-on-exec bit but that can be a security risk.
% gphoto2 -L There are 2 files in folder '/': #1 image001.pnm #2 image002.pnm % gphoto2 --get-all-files Downloading 'image001.pnm' from folder '/'... Saving file as image001.pnm Downloading 'image002.pnm' from folder '/'... Saving file as image002.pnm
If you are getting an error at this point check if stv680
is loaded. If it is then rmmod
it since it conflicts with gphoto2
.
Wow! 356x292 pixels, even more than promised. As you can see image quality is not suitable for close-up detail photos...
The camera:/
URL also gets you access to the camera in a nice GUI fashion. Because of permission problems I am currently only able to use it running as root
.
As with gphoto2
you need to make sure that the stv680
module is not loaded since it conflicts with the plugin.