Getting webcams to work with GNU/Linux is generally a complete nightmare, as a result of different chipsets in the same model, and some working in a vastly different way to others.
However, I was elated a few days ago when I found that my 8 pound, generic, bottom of the range, unbranded webcam worked with GNU/Linux.
I intend to outline I have no idea whether the details of how I got it working. This is is intended to be helpful to someone trying to set their M6323 webcam up or a different Generic webcam, so I'll try and go into as much detail as possible. I apologise if I write this for those who will find it the hardest to understand, if you generally know what you are doing, apologies.
I bought the webcam, back when I was running Windows XP. It was very cheap, costing about 12 pounds including delivery, which at the time, was ground breaking.
The first problem I came to was that I had no idea about the webcam's model. The webcam has no writing anywhere on it, the packaging was also less than helpful and did not give any useful technical details like that.
I pulled out the CD with the Windows drivers on it (and other assorted rubbish) but it didn't not have anything useful in the generic manual or Windows driver installation dialogue when run under WINE.
Eventually I located what I believed to be a model number of some
sort, whilst looking at the directory structure of the stuff on the CD
near the driver files.
It was located somewhere like cdrom/DRIVER/MODEL_CODE/etc/
I put this possible model number into Google and got a few pictures of the webcam on the Taiwanese Manufacturers website and many other websites offering me the Windows drivers for download.
The Taiwanese Manufacturers also offered the drivers for download, but only for Windows XP.
Now I was certain of the model of the webcam I tried searching things things like "M6323 Linux Driver"and managed to find out information about other people who had managed to get it to work.
However, unfortunately it was not obvious that they had had any success, undeterred I pressed on.
I an found article on linux.com which helped me verify using
dmesg | more
several technical details about the cam.
You will *probably* find the information right at the very bottom - press
I eventually found a post on ubuntuforums which at first glance was not useful at all but after some consideration made a lightbulb shine in my head.
There are two drivers that "work" with my webcam.
gspca and SN9C1xx
One, gspca, is more modern and works better with my webcam than SN9C1xx and would allow it to work with Video4Linux2, something which is crucial for doing anything interesting with it.
I ran
tail -99999 /proc/modules | grep sn9
to find the name of the SN9C1xx driver module.
I got
sn9c102
among other things.
After consulting ubuntuforums, I then ran
sudo rmmod old-driver-name
to "unload that driver"
I then need to install and setup the new driver:
sudo aptitude install gspca-source
sudo m-a auto-install gspca
Whilst doing this step, I encountered an error. Not knowing what to do or how to do it, I decided to ignore it and see what happened all the same. Apparently, this did not do any harm.
After this I "loaded the driver into the kernel":
sudo modprobe gspca
My webcam now works with aMSN, Kopete, Cheese, webcam, xawtv, various webcam servery things, etc.
Throughout the whole process, I used Google and the the Ubuntu Forums. These are invaluable resources and I cannot stress enough the power of several searches in finding the answer to a problem. Searching model numbers, hardware IDs, "this that driver linux" are likely to be extremly helpful and should not be under-estimated.
One thing I failed to mention is that my webcam is rubbish! It's not a flaw with the GNU/Linux drivers either! My webcam needs daylight or for the subject to have a light as bright as the sun shone at them. Totally useless for video conferencing!
I guess I'll be just using it to watch what's going on outside or something...