OV511 Installation Instructions:
Before you start:
Many kernels and Linux distributions already come
with ov511 preinstalled. To check whether it is installed, run "modprobe
ov511" as root. If you don't get any errors, then the driver is already
installed. Skip to the "Loading and Using the Driver" section below.
These built-in drivers usually work, but may not be the most recent version.
You may need to install a more recent driver if:
- You want to use an OV518/OV518+ camera (such as Creative WebCam Mini, model PD0040 or Philips PCVC720K).
- You want to use compression support for higher frame rates (requires
version 1.41)
- You have a device that is not supported by older drivers
(Lifeview CapView, camera with OV6620 sensor, etc...)
- You enjoy having the latest version of everything :-)
Installing the driver:
- Make sure you have a compiler and kernel source that matches your
currently running kernel.
- Be sure that your kernel supports USB. If it doesn't, see my
kernel installation instructions.
- Download the latest
driver.
- Decompress it. For example, "tar xvzf ov511-1.58.tar.gz".
- Change to the directory that got created, e.g. "cd ov511-1.58
".
- Run "make". If you get errors about include files, edit Makefile
and set "INCLUDEDIR=/path_to_kernel_source/include".
- If you have a 2.4 or 2.6 kernel, run "make install". That will list the available install options for your kernel. Run whichever one matches your kernel best.
Loading and using the driver:
- Become root. Eg: "su -"
- Load USB support:
- See which type of USB controller you have with "lspci".
- For UHCI controllers, either "modprobe usb-uhci" OR
"modprobe uhci". They are equivalent, but one might work better
for you than the other.
- For OHCI controllers, "modprobe usb-ohci".
- If these modules don't exist, it's possible that USB is built into
your kernel. Also, on 2.6 kernels, the drivers are called uhci-hcd and ohci-hcd.
- Make sure that USB is working: Check that
/proc/bus/usb/devices exists and contains data. If it doesn't
exist, don't worry: "Preliminary USB device filesystem" is probably not
enabled in your kernel config, or usbdevfs isn't mounted. This won't affect
the ov511 driver, but it makes problems harder to diagnose.
- Load ov511: "modprobe ov511". This should also automatically load the "videodev" (Video4Linux) module
if you have one.
- Make sure the driver is working: When you run
the "dmesg" command, you should see some messages from ov511
telling you which kind of bridge and sensor chips your camera uses. If
you see errors from ov511, report them to me.
- Check that /dev/video0 exists.
If it doesn't, you can create it with "mknod /dev/video0 c 81 0
". If you have another video device, you camera might be on /dev/video1
(change the last argument to mknod to 1 in that case).
- Some applications look for the device at /dev/video
. In some operating systems (e.g. RedHat 7.1 or later),
/dev/video might be a directory and not a device node
or a symbolic link. You will have to manually specify the device as
/dev/video0 when you use your video application.
- Give users (besides root) permission to use
the camera. This requires read and write access to /dev/video0
. You can grant this permission with "chmod 666 /dev/video0
". If you don't want everyone on your system to be able to use the camera,
use the "chown" command instead to make /dev/video0 belong to you.
- Download an application from
http://alpha.dyndns.org/ov511/apps.html and test it. I
recommend Xawtv and Vidcat. (Note: vidcat might not work on cameras with OV6620 or OV6630 sensors).
Using Compression Support:
This
information is only valid for the stable
driver series (1.xx). With 2.xx drivers, compression is already built
into ov511.o. For more information, please see the README that
comes with the driver.
Compression support will give you better
frame rates with OV511 cameras, and is REQUIRED with OV518 cameras.
It requires lots of CPU power, and reduces the image quality somewhat, though.
If you want/need it, do the following:
(NOTE: for OV518 cameras, substitute
ov518_decomp for ov511_decomp
)
- Make sure you installed
the latest driver using the above instructions. The driver that comes with
kernels and operating systems by default has no compression support.
- Add the following line to your /etc/modules.conf . This
will load the decompressor after ov511 is loaded, and unload the decompressor
before ov511 is unloaded:
above ov511 ov511_decomp
- If you want compression enabled by default all
of the time, add the following line to /etc/modules.conf:
options ov511 compress=1
- Load
ov511.If you didn't make compression the default in /etc/modules.conf
, load it with the compress=1 option (modprobe
ov511 compress=1). If it is already loaded, remove it first with "
rmmod ov511"
- When you unload ov511, you must do it
with modprobe (modprobe -r ov511). With rmmod, you will get "ov511:
Device or resource busy", since it doesn't remove ov511_decomp automatically.
Please send any corrections to this page to
mark@alpha.dyndns.org