Lorin Olivier has created a kernel driver for his GL860 webcam. Lorin’s device is the 05e3:f191 variant, whereas mine is the more common 05e3:0503. There are differences between the devices that we don’t have much of a grasp on. The code we’ve written for each device is incompatible with the other, even though there are some protocol similarities.
Lorin reports that his driver works reasonably well with his device – it works with camorama, xawtv, ekiga, amsn, mplayer and xsane. He has also determined how to adjust various camera settings (luminosity, saturation, hue, sharpness, retrolighting, mirror effects, light source, AC power frequency).
Although Lorin doesn’t actually own an 0503 device, he’s attempted to implement support for it based on my earlier efforts. Given that I didn’t get very far, it probably doesn’t work that well. I haven’t had a chance to try it, but there’s no point me sitting on this any longer.
It’s in my git repository in the nvgl subdirectory:
git://projects.reactivated.net/~dsd/gl860.git (gitweb).
All credit goes to Lorin here – thanks! He’s done a great job, but do remember that its experimental code based on a reverse-engineered protocol, so don’t expect it to be flawless.
No, you have at least 640×480 and 1280×960. According to the gl860.inf, you can do 1600×1280. No 800×600 eventually.
that’s really weird, because the relog.c in version 0.2d’s tar.gz gives me only 640×480 and 1600×1080 pictures. i’ll try to capture some logs tomorrow, now it’s time for me to sleep. my neighbours finally calm down now after celebrating the victory of german soccer team over austria… :)
p.s.: yes, it’s really 1600×1080 and NOT 1600×1280 it’s not a typo.
Could you show me a picture in 1600×1080.
Of course, but you won’t see much. Most of the image is white and black, just the upper part looks like there is something captured:
http://michael-gerhaeuser.de/gl860/im003.png
(converted to png, original bmp has about 5MB)
And with sizes >= 640×480 there are only such pictures, nothing to see, mostly black, weird sizes (not only 1600×1080 but also 1600×1000, 1600×1002)
Don’t take these images into account.
Relog try to find the width and height of an image with the approximate number of bytes received and with Height=4/3*Width. Then it keeps as width the nearest of 320, 640, 800, 1024, 1280 or 1600 and infers a new height. When there is no prefered width near enough, it keeps the former width.
You have weird sizes because while making logs, there is too many data to log and USBSniff misses data, so you have smaller pictures than expected because image data were lost or bigger pictures because “end of image marker” were lost and the number of bytes received is that of 2 images or less depending on the data loss.
If you have clean images in 1280×960, that is the webcam send 1280×960 images.
@ Amighurt or Sur3
Hello, I need to be sure about the settings of parameter which are not asked to the webcam by the driver. So could you make a log while changing the brightness from the minimum to the maximum after the brightness of the picture is steady (not during the start of the webcam when the lumonisity chnages). If in the images created by relog there is no change in brightness, no problem, if there is a
change, i need the raw log (not processed with relog).
Thanks
Sorry, had no time before to make this log:
http://michael-gerhaeuser.de/gl860/brightness_min_max.log.c
no brightness changes in the captured images, so only the log.c file.
OK thanks. There is no data in the logs I didn’t use and that was important for the driver.
I tried compiling the GIT version, as the released version on sf.net, but i get (with 2.6.27-rc4) the following error:
~/compile/nvgl$ ./install
*****************************************************************************
1/8) [Kernel headers for current kernel installed]
2/8) [Make is present]
*****************************************************************************
3/8) [No old module…] Nothing to do
4/8) [Clean up from previous compilations]
$ make -f Makefile.standalone clean
make -C /lib/modules/2.6.27-rc4-wl/build SUBDIRS=/home/schmitz/compile/nvgl clean
make[1]: Entering directory `/root/compile/wireless-testing’
CLEAN /home/schmitz/compile/nvgl/.tmp_versions
make[1]: Leaving directory `/root/compile/wireless-testing’
*****************************************************************************
5/8) [Source code generation…]
6/8) [Compiling driver…]
$ make -f Makefile.standalone
make -C /lib/modules/2.6.27-rc4-wl/build SUBDIRS=/home/schmitz/compile/nvgl modules
make[1]: Entering directory `/root/compile/wireless-testing’
CC [M] /home/schmitz/compile/nvgl/gl860-usb.o
/home/schmitz/compile/nvgl/gl860-usb.c: In function ‘usb_gl860_probe’:
/home/schmitz/compile/nvgl/gl860-usb.c:755: error: implicit declaration of function ‘PAGE_ALIGN’
make[2]: *** [/home/schmitz/compile/nvgl/gl860-usb.o] Fehler 1
make[1]: *** [_module_/home/schmitz/compile/nvgl] Fehler 2
make[1]: Leaving directory `/root/compile/wireless-testing’
make: *** [driver] Fehler 2
What do you make of that?
Hi ! you have a lot of chance because I do not look at this page often. Please go to http://ubuntuforums.org/showthread.php?t=869263 next times.
After some google search, this error occured also with kernel 2.6.26something. Try what is in this post to solve the trouble : http://www.gossamer-threads.com/lists/linux/kernel/951452 and reports the result.
Just a precision : report here please as you post here.