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&oacute;n en Espa&ntilde;ol (por </span><strong style="font-weight: bold;"><a href="http://www.iespana.es/pacodebian/">Paco Aldarias Raya</a>):&nbsp; <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>