1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head> 2 3 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 4 5 <meta name="Author" content="Mark McClelland"> 6 7 <meta name="GENERATOR" content="Mozilla/4.61 [en] (OS/2; U) [Netscape]"><title>Linux OV511/OV518 Driver: Installation Instructions</title></head><body> 8 9<center><b><font size="+2">OV511 Installation Instructions:</font></b></center> 10 11<hr width="100%"> 12<ul> 13 <li><span style="font-weight: bold;">Instrucciones para la instalación en Español (por </span><strong style="font-weight: bold;"><a href="http://www.iespana.es/pacodebian/">Paco Aldarias Raya</a>): <a href="http://www.iespana.es/pacodebian/webcam.html">html</a> | <a href="http://www.iespana.es/pacodebian/webcam.pdf">pdf</a> | <a href="http://www.iespana.es/pacodebian/webcam.tex">tex</a></strong></li> 14</ul> 15<b><i><a href="mailto:mark@alpha.dyndns.org"></a> </i></b> 16<p><b><big>Before you start:</big></b><br> 17 </p> 18 19<p><font color="#990000">Many kernels and Linux distributions already come 20with ov511 preinstalled. To check whether it is installed, run "modprobe 21ov511" as root. If you don't get any errors, then the driver is already 22installed. Skip to the "<b>Loading and Using the Driver</b>" section below.<br> 23</font></p> 24<p><font color="#990000"></font></p> 25 26 27<p>These built-in drivers usually work, but may not be the most recent version. 28 You may need to install a more recent driver if:<br> 29 </p> 30 31<ul> 32 <li>You want to use an OV518 camera (<b>Creative WebCam Mini</b>, model PD0040 or <b>Philips PCVC720K</b>). Note: These cameras <b>REQUIRE</b> 33 the ov518_decomp module to be loaded.<br> 34 </li> 35 <li>You want to use compression support for higher frame rates (requires 36 version 1.41)</li> 37 <li>You have a device that is not supported by older drivers 38(Lifeview CapView, camera with OV6620 sensor, etc...)</li> 39 <li>You enjoy having the latest version of everything :-)<br> 40 </li> 41 42</ul> 43 <b><font size="+1">Installing the driver:</font></b> 44<ol> 45 <li>Make sure you have a compiler and kernel source that matches your 46currently running kernel.<br> 47 </li> 48 <li>Be sure that your kernel supports USB. If it doesn't, see my <a href="kernel_install.html"> 49 kernel installation instructions</a>.</li> 50 <li><a href="download.html">Download the </a><a href="download.html">latest 51driver</a>.</li> 52 <li>Decompress it. For example, "<tt>tar xvzf ov511-1.58.tar.gz</tt>".</li> 53 <li>Change to the directory that got created, e.g. "<tt>cd ov511-1.58</tt> 54".</li> 55 <li>Run "<tt>make</tt>". If you get errors about include files, edit Makefile 56and set "<tt>INCLUDEDIR=/<i>path_to_kernel_source</i>/include</tt>".</li> 57 <li>If you have a 2.4 or 2.5 kernel, run "<tt>make install</tt>". That will list the available install options for your kernel. Run whichever one matches your kernel best.</li> 58 59</ol> 60 <b><font size="+1">Loading and using the driver:</font></b> 61 62<ol> 63 <li>Become root. Eg: "<tt>su -</tt>"<br> 64 </li> 65 <li>Load USB support:<br> 66 </li> 67 68 <ol> 69 <li>See which type of USB controller you have with "<tt>lspci</tt>".</li> 70 <li>For UHCI controllers, either "<tt>modprobe usb-uhci</tt>" <b>OR</b> 71 "<tt>modprobe uhci</tt>". They are equivalent, but one might work better 72for you than the other.</li> 73 <li>For OHCI controllers, "<tt>modprobe usb-ohci</tt>".</li> 74 <li>If these modules don't exist, it's possible that USB is built into 75your kernel. Also, on 2.5 kernels, the drivers are called uhci-hcd and ohci-hcd.<br> 76 </li> 77 78 </ol> 79 <li> Make sure that USB is working: Check that <tt> 80 /proc/bus/usb/devices</tt> exists and contains data. If it doesn't 81 exist, don't worry: "Preliminary USB device filesystem" is probably not 82enabled in your kernel config, or usbdevfs isn't mounted. This won't affect 83the ov511 driver, but it makes problems harder to diagnose.</li> 84 <li> Load <tt>ov511</tt>: "<tt>modprobe ov511</tt>". This should also automatically load the "videodev" (Video4Linux) module 85 if you have one.</li> 86 <li> Make sure the driver is working: When you run 87 the "<tt>dmesg</tt>" command, you should see some messages from ov511 88 telling you which kind of bridge and sensor chips your camera uses. If 89 you see errors from ov511, report them to me.</li> 90 <li> Check that <tt>/dev/video0</tt> exists. 91If it doesn't, you can create it with "<tt>mknod /dev/video0 c 81 0</tt> 92". If you have another video device, you camera might be on <tt>/dev/video1</tt> 93 (change the last argument to <tt>mknod</tt> to 1 in that case).</li> 94 <li>Some applications look for the device at <tt> /dev/video</tt> 95 . In some operating systems (e.g. RedHat 7.1), 96 <tt> /dev/video</tt> might be a directory and not a device node 97or a symbolic link. You will have to manually specify the device as <tt> 98 /dev/video0</tt> when you use your video application.<br> 99 </li> 100 <li> Give users (besides root) permission to use 101the camera. This requires read and write access to <tt>/dev/video0</tt> 102 . You can grant this permission with "<tt>chmod 666 /dev/video0</tt> 103". If you don't want everyone on your system to be able to use the camera, 104use the "chown" command <u>instead</u> to make /dev/video0 belong to you.</li> 105 <li> Download an application from <a href="http://alpha.dyndns.org/ov511/apps.html"> 106 http://alpha.dyndns.org/ov511/apps.html</a> and test it. I 107recommend Xawtv and Vidcat. (Note: vidcat might not work on cameras with OV6620 or OV6630 sensors).</li> 108 109 110</ol> 111 <b><font size="+1">Using Compression Support:<br> 112 <br> 113</font></b><font color="#990000"><span style="font-weight: bold;">This information is only valid for the stable 114driver series (1.xx). For 2.xx drivers, please see the README that 115comes with the driver.</span><br> 116</font><br> 117<font size="+1"><small>Compression support will give you better 118frame rates with OV511 cameras, and is <b>REQUIRED</b> with OV518 cameras. 119It requires lots of CPU power, and reduces the image quality somewhat, though. 120If you want/need it, do the following: <br> 121<br> 122(<b>NOTE</b>: for OV518 cameras, substitute </small></font><font size="+1"><small><tt> 123ov518_decomp</tt> for </small></font><font size="+1"><small><tt>ov511_decomp</tt> 124)</small></font> 125 126<ol> 127 <li>Make sure you installed 128the latest driver using the above instructions. The driver that comes with 129kernels and operating systems by default has no compression support.<br> 130 </li> 131 <li>Add the following line to your <tt>/etc/modules.conf</tt> . This 132will load the decompressor after ov511 is loaded, and unload the decompressor 133before ov511 is unloaded:</li> 134 135</ol> 136 137<blockquote> 138 139 <blockquote><tt>above ov511 ov511_decomp</tt></blockquote> 140 </blockquote> 141 142 143 <ol start="3"> 144 <li>If you want compression enabled by default all 145 of the time, add the following line to <tt>/etc/modules.conf</tt>:</li> 146 147 148 </ol> 149 150 151 <blockquote> 152 153 <blockquote> 154 155 <pre wrap="">options ov511 compress=1</pre> 156 </blockquote> 157 </blockquote> 158 159 160 <ol start="4"> 161 <li> Load <tt> 162ov511.</tt>If you didn't make compression the default in <tt>/etc/modules.conf</tt> 163, load it with the <tt>compress=1</tt> option (<tt>modprobe 164 ov511 compress=1</tt>). If it is already loaded, remove it first with "<tt> 165rmmod ov511</tt>"</li> 166 <li>When you unload ov511, you must do it 167with modprobe (<tt>modprobe -r ov511</tt>). With rmmod, you will get "ov511: 168Device or resource busy", since it doesn't remove <tt>ov511_decomp</tt> automatically.</li> 169 170 171 </ol> 172 173 174 175 <br> 176<b><i>Please send any corrections to this page to <a href="mailto:mark@alpha.dyndns.org"> 177 mark@alpha.dyndns.org</a><br> 178<br> 179<br> 180</i></b> 181<br> 182</body></html>