From Brown University Robotics
Who Needs This
As of the more recent (9-ish) Ubuntus, the Playstation 3 Eye (i.e. the Eye of Judgement) is supported as a standard 640x480 30fps webcam. However, with a patch the camera's more exotic (i.e. 60,100,125) framerates and resolutions are supported. These are especially helpful in banishing motion blur from computer vision applications, hence the motivation to use a patched driver. If you've built your own kernel before, patching should not be too difficult.
The following is a summary of the information and ancillary discussions from bear24rw's blog and blog.10100111001. The actual patched file is the work of bear24rw, M. Ebrahimi, Kaswy, Antonio Ospite, Jim Paris, Jean-Francois Moine, and—I am sure—many others.
You will need
- Install necessary packages
- sudo apt-get install kernel-package libncurses5-dev wget bzip2 build-essential linux-source
- Extract kernel source code
- sudo su -
- cd /usr/src
- tar --bzip2 -xvf linux-source-2.6.(your version).tar.bz2
- ln -s linux-source-2.6.(your version) linux
- Replace driver
- get the modified ovc534.c from File:Ov534.c (rename it so there is no capital 'O'): wget http://brown-robotics.org/images/8/86/Ov534.c & mv Ov534.c ov534.c
- cd linux
- rm drivers/media/video/gspca/ov534.c
- mv (wherever you downloaded the modified ov534.c) drivers/media/video/gspca/
- Add driver if not already present
- make menuconfig (or another kernel configuration utility)
- Include the PS3 driver module by selecting Device Drivers -> Multimedia support -> Video capture adapters -> V4L USB devices -> GSPCA based webcams -> OV534 USB Camera Driver ('M')
- make & make modules & make install & make modules_install (takes a _long_ time)
- Reboot. You ought to be able to skip the recompilation and installation steps.
- It is probably possible to compile and install the module without redoing the entire kernel. http://www.cyberciti.biz/tips/compiling-linux-kernel-module.html has pointers; testing will have to wait for another installation opportunity.
- Recompile driver
- cp /usr/src/linux-headers-$(uname -r)/Module.symvers /usr/src/linux
- make oldconfig
- make modules_prepare
- make SUBDIRS=drivers/media/video/gspca modules
- Install new driver
- cp drivers/media/video/gspca/gspca_main.ko /lib/modules/$(uname -r)/kernel/drivers/media/video/gspca
- cp drivers/media/video/gspca/gspca_ov534.ko /lib/modules/$(uname -r)/kernel/drivers/media/video/gspca
To Use The Modified Driver
- Before you plugin
- modprobe -r gspca-ov534
- modprobe gspca-ov534 videomode=XX autogain=1 awb=1
XX is the video mode. Available modes are:
- To load the driver with your desired videomode on startup
Add "gspca_ov534 videomode=XX" as a line in your /etc/modules file
Autogain and auto white balancing are off by default, but can be turned on when the module is loaded, as shown above. Otherwise, guvcview is a good utility to use to control this.