I don't have any bug to report, rather a feature request ;-) : brightness/contrast/whiteness are badly configured by default. When some applications start the webcam (Ekiga, Kopete, XawTV but not Camorama) image is to dark. Would it be possible to set them to acceptable *default* values (let's say 7F00)? And/or remember these settings between usages? I don't know whether it can be done at kernel level.
Congratulations.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I want to quote this. I totally agree with this user in the feature request.
Unfortunately, the basic settings are bad.
I could notice that basically, just after installing the module, the brightness, contrast, etc values are set to 0.
If I open, let's say Ekiga, which handles this values in a quick way, I can see live changing the values in the files.
Unfortunately, sometimes the changes aren't immediately taken for the image: let's say I increase contrast...the contrast file in /sys/... is correctly updated, but the option doesn't seem to apply to the image...it is still dark until some other changes are made (I didn't actually understand the way to do that).
Thank you for your time!
Maurizio
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Congratulations Nicklas! :-)
You've done a really nice work! Every revision was going better and better... ;-)
I'm using my STK-1125 with Mercury Messenger (based on Java) and it works fine since some weeks!
Complimenti davvero! Ciao ciao!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Do you plan developing it further? It still doesn't meet the V4L spec.
Also, do you intend to submit it to the video4linux mailing list (or lkml) for review? They for sure could help making the driver better (and included in the kernel)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
- Add support for the resolutions 800x600 and 1024x768
- Correct the V4Lv2 integration (now you can't change the video settings...)
- Add full support for the video sensor of the STK-1125 webcam (it seems that ASUS uses an OmniVision's sensor)
- Search the video sensor for the STK-1135 webcam
- Solve the default video settings (use module option : insmod stk-11xx.ko contrast=80.... ?)
- Maybe add support for new webcam ?
- Post my syntek driver on the V4L website, then integrate my syntek driver to the kernel source.
- Add the video format : YUV
Have you got others ideas ?
Nicklas
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
in dmesg I see the following:
stk11xx: usb_stk11xx_init: Syntek USB2.0 webcam driver startup
stk11xx: Syntek USB2.0 - STK-1125 based webcam found.
stk11xx: Release: 0001
stk11xx: Number of interfaces : 3
stk11xx: Initialize USB2.0 Syntek Camera
stk11xx: Syntek USB2.0 Camera is ready
stk11xx: Syntek USB2.0 Camera is now controlling video device /dev/video0
usbcore: registered new interface driver usb_stk11xx_driver
stk11xx: v1.0.0 : Syntek USB Video Camera
and when I run camorama
stk11xx: Check device return error (0x0201 = 0C) !
stk11xx: Load microcode fail !
stk11xx: Frame buffer overflow !
stk11xx: Frame buffer overflow !
my cam is a 174f:a311, on an Asus A6K.
Thanks
maxxer
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This is what i get suddenly, previous revision 41 worked for me:
Bus 004 Device 002: ID 05e1:0501 Syntek Semiconductor Co., Ltd
[10032.272164] stk11xx: Number of interfaces : 1
[10032.272201] drivers/usb/core/message.c: selecting invalid altsetting 5
[10032.272239] stk11xx: usb_set_interface failed !
[10032.274110] Device driver usbdev4.2_ep81 lacks bus and class support for being resumed.
[10032.274323] Device driver usbdev4.2_ep82 lacks bus and class support for being resumed.
[10032.274376] stk11xx: Initialize USB2.0 Syntek Camera
[10033.872593] stk11xx: Syntek USB2.0 Camera is ready
[10033.872874] stk11xx: Syntek USB2.0 Camera is now controlling video device /dev/video0
[10033.872954] usbcore: registered new interface driver usb_stk11xx_driver
[10033.872996] stk11xx: v1.0.0 : Syntek USB Video Camera
[ 9972.696897] stk11xx: isoc_init() submit_urb 12 failed with error -90
[ 9972.696934] stk11xx: EMSGSIZE
[ 9972.696966] stk11xx: isoc_init() submit_urb 13 failed with error -90
[ 9972.697034] stk11xx: EMSGSIZE
[ 9972.697068] stk11xx: isoc_init() submit_urb 14 failed with error -90
[ 9972.697105] stk11xx: EMSGSIZE
[ 9972.697138] stk11xx: isoc_init() submit_urb 15 failed with error -90
[ 9972.697174] stk11xx: EMSGSIZE
[ 9986.103031] Device driver usbdev4.2_ep81 lacks bus and class support for being resumed.
[ 9986.103184] Device driver usbdev4.2_ep82 lacks bus and class support for being resumed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thank You very much. My Asus G1 integrated Webcam is working!
It seems, that the 640x512 mode is working at best.
The only thing is a missing automatic whitebalancing with camorama.
Or is there already a solution for that?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I get a yellowish image too, as my sensor (asus a6km) has a different bayer mask. I did a patch to make it work some time ago but I lost it :(
If I find the sheet where I wrote the mapping of the subpixels I'll post it here...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In camorama the image is blue or yellow (depends if "color correction" is on or off) and I can't get it right. Even when I tweak the color/hue controls, no luck.
Hovever, I noticed that when I run VLC, use capture device /dev/video0, sound device /dev/zero, the color is OK... maybe increasing brightness wouldn't hurt. But color balance is OK. I believe that VLC uses -1 for hue, color etc. settings.
I thought this might be a little helpful.
Also, running camorama -D -R ... causes the image to flicker.
I have A6Km, lsusb gives
Bus 004 Device 002: ID 174f:a311
Keep up the good work :-)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I am sorry to write this, but I have tried the driver on the present x86-64 kernel from Debian unstable on ASUS A6-Tc with Mobile Sempron 64, etc... ...[the exact kernel version: 2.6.21-1-amd64]. The result was:
msempron:/home/me/stk11xx-1.0.0# make
make -C /lib/modules/2.6.21-1-amd64/build SUBDIRS=/home/me/stk11xx-1.0.0 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.21-1-amd64'
CC [M] /home/me/stk11xx-1.0.0/stk11xx-usb.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-v4l.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-sysfs.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-dev.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-buf.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-bayer.o
LD [M] /home/me/stk11xx-1.0.0/stk11xx.o
Building modules, stage 2.
MODPOST 1 modules
CC /home/me/stk11xx-1.0.0/stk11xx.mod.o
LD [M] /home/me/stk11xx-1.0.0/stk11xx.ko
make[1]: Leaving directory `/usr/src/linux-headers-2.6.21-1-amd64'
msempron:/home/me/stk11xx-1.0.0# modprobe videodev
msempron:/home/me/stk11xx-1.0.0# insmod stk11xx.ko
Segmentation fault <<--- this is what I didn't want to see, actually :-(
Is it some kind of a known bug or did I do something wrong?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
STK-1125, Bus 005 Device 004: ID 05e1:0501 Syntek Semiconductor Co., Ltd:
Very small lag (better than what I ever managed to get on Windows) and it looks awesome and stable. The only problem is that the image has got a strongish red hue on it.
Keep up the good work!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hi!
any update since 1.0 release?
it seems that the project has slowed down a little bit, isn't it?
i just want to thank you for the great work...but could you try to make brightness/contrast settings work with v4l2 driver? :P
can you suggest a way to work on it? is there a "webcam driver programming guide"?
thank you sooooooooo much!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hey,
I correct the kernel segfault !
So I can make the first release.
- Support V4Lv1
- Support V4Lv2
- STK-1125 support : fps, brightness, contrast, whiteness, hue
- STK-1135 support : contrast, whiteness
- Video format : RGB24, RGB32, BGR24, BGR32
- SYSFS informations : /sys/class/video4linux/video0/....
- Kernel segfault correction
- Resolution : 80x60 to 1280x1024
You can post your bugs on the bug tracker...
Nicklas
Bravo! Really good job!
I don't have any bug to report, rather a feature request ;-) : brightness/contrast/whiteness are badly configured by default. When some applications start the webcam (Ekiga, Kopete, XawTV but not Camorama) image is to dark. Would it be possible to set them to acceptable *default* values (let's say 7F00)? And/or remember these settings between usages? I don't know whether it can be done at kernel level.
Congratulations.
Is it working well in kopete for you? I get a flickering image in kopete
I want to quote this. I totally agree with this user in the feature request.
Unfortunately, the basic settings are bad.
I could notice that basically, just after installing the module, the brightness, contrast, etc values are set to 0.
If I open, let's say Ekiga, which handles this values in a quick way, I can see live changing the values in the files.
Unfortunately, sometimes the changes aren't immediately taken for the image: let's say I increase contrast...the contrast file in /sys/... is correctly updated, but the option doesn't seem to apply to the image...it is still dark until some other changes are made (I didn't actually understand the way to do that).
Thank you for your time!
Maurizio
very big congratulations Niklas! You've done an excellent work!
(I'm trying to have this in Gentoo: http://bugs.gentoo.org/show_bug.cgi?id=178946\)
Congratulations Nicklas! :-)
You've done a really nice work! Every revision was going better and better... ;-)
I'm using my STK-1125 with Mercury Messenger (based on Java) and it works fine since some weeks!
Complimenti davvero! Ciao ciao!
Good work Nicklas
Do you plan developing it further? It still doesn't meet the V4L spec.
Also, do you intend to submit it to the video4linux mailing list (or lkml) for review? They for sure could help making the driver better (and included in the kernel)
I have to agree with the rest, really superb work Nicklas!
I too find the driver a bit too dark by default but besides that it's working great!
// L
TODO and next release :
- Add support for the resolutions 800x600 and 1024x768
- Correct the V4Lv2 integration (now you can't change the video settings...)
- Add full support for the video sensor of the STK-1125 webcam (it seems that ASUS uses an OmniVision's sensor)
- Search the video sensor for the STK-1135 webcam
- Solve the default video settings (use module option : insmod stk-11xx.ko contrast=80.... ?)
- Maybe add support for new webcam ?
- Post my syntek driver on the V4L website, then integrate my syntek driver to the kernel source.
- Add the video format : YUV
Have you got others ideas ?
Nicklas
Very nicely done, but a bit dark. I propose you fix this for the next release. Otherwise - great job, and thanks for doing this!
thank you very much for your work..many many many thanks!
I have tested it a bit further... Did I miss something? I get a YELLOW image!
see it at http://www.maxxer.it/Webcam.png
in dmesg I see the following:
stk11xx: usb_stk11xx_init: Syntek USB2.0 webcam driver startup
stk11xx: Syntek USB2.0 - STK-1125 based webcam found.
stk11xx: Release: 0001
stk11xx: Number of interfaces : 3
stk11xx: Initialize USB2.0 Syntek Camera
stk11xx: Syntek USB2.0 Camera is ready
stk11xx: Syntek USB2.0 Camera is now controlling video device /dev/video0
usbcore: registered new interface driver usb_stk11xx_driver
stk11xx: v1.0.0 : Syntek USB Video Camera
and when I run camorama
stk11xx: Check device return error (0x0201 = 0C) !
stk11xx: Load microcode fail !
stk11xx: Frame buffer overflow !
stk11xx: Frame buffer overflow !
my cam is a 174f:a311, on an Asus A6K.
Thanks
maxxer
This is what i get suddenly, previous revision 41 worked for me:
Bus 004 Device 002: ID 05e1:0501 Syntek Semiconductor Co., Ltd
[10032.272164] stk11xx: Number of interfaces : 1
[10032.272201] drivers/usb/core/message.c: selecting invalid altsetting 5
[10032.272239] stk11xx: usb_set_interface failed !
[10032.274110] Device driver usbdev4.2_ep81 lacks bus and class support for being resumed.
[10032.274323] Device driver usbdev4.2_ep82 lacks bus and class support for being resumed.
[10032.274376] stk11xx: Initialize USB2.0 Syntek Camera
[10033.872593] stk11xx: Syntek USB2.0 Camera is ready
[10033.872874] stk11xx: Syntek USB2.0 Camera is now controlling video device /dev/video0
[10033.872954] usbcore: registered new interface driver usb_stk11xx_driver
[10033.872996] stk11xx: v1.0.0 : Syntek USB Video Camera
[ 9972.696897] stk11xx: isoc_init() submit_urb 12 failed with error -90
[ 9972.696934] stk11xx: EMSGSIZE
[ 9972.696966] stk11xx: isoc_init() submit_urb 13 failed with error -90
[ 9972.697034] stk11xx: EMSGSIZE
[ 9972.697068] stk11xx: isoc_init() submit_urb 14 failed with error -90
[ 9972.697105] stk11xx: EMSGSIZE
[ 9972.697138] stk11xx: isoc_init() submit_urb 15 failed with error -90
[ 9972.697174] stk11xx: EMSGSIZE
[ 9986.103031] Device driver usbdev4.2_ep81 lacks bus and class support for being resumed.
[ 9986.103184] Device driver usbdev4.2_ep82 lacks bus and class support for being resumed.
is it any help to install v4l-conf? can it be helpful to configure anything?
thanks
maurizio
Thank You very much. My Asus G1 integrated Webcam is working!
It seems, that the 640x512 mode is working at best.
The only thing is a missing automatic whitebalancing with camorama.
Or is there already a solution for that?
I get a yellowish image too, as my sensor (asus a6km) has a different bayer mask. I did a patch to make it work some time ago but I lost it :(
If I find the sheet where I wrote the mapping of the subpixels I'll post it here...
And I have yelow image too at my Asus A6RP... Last version (41) was better... pity...
There is no some changements between the rev 41 and 46 about the image...
In camorama the image is blue or yellow (depends if "color correction" is on or off) and I can't get it right. Even when I tweak the color/hue controls, no luck.
Hovever, I noticed that when I run VLC, use capture device /dev/video0, sound device /dev/zero, the color is OK... maybe increasing brightness wouldn't hurt. But color balance is OK. I believe that VLC uses -1 for hue, color etc. settings.
I thought this might be a little helpful.
Also, running camorama -D -R ... causes the image to flicker.
I have A6Km, lsusb gives
Bus 004 Device 002: ID 174f:a311
Keep up the good work :-)
Got yellow image in camorama too, and reddish in flash (ustream).
I'm using Linux dzibutti 2.6.21.1-0.5 #1 SMP Wed May 9 14:30:47 CEST 2007 i686 Genuine_Intel(R)_CPU___________T2300__@_1.66GHz PLD Linux
Test images:
http://chimera.one.pl/camorama-stk11xx-vip.png
http://chimera.one.pl/ustream-stk11xx-vip.png
I was using snapshot from 2007-03-31 with color correction, and everything was OK.
Piotr Budny
Forget to mention:
Bus 005 Device 004: ID 05e1:0501 Syntek Semiconductor Co., Ltd
Piotr Budny
I am sorry to write this, but I have tried the driver on the present x86-64 kernel from Debian unstable on ASUS A6-Tc with Mobile Sempron 64, etc... ...[the exact kernel version: 2.6.21-1-amd64]. The result was:
msempron:/home/me/stk11xx-1.0.0# make
make -C /lib/modules/2.6.21-1-amd64/build SUBDIRS=/home/me/stk11xx-1.0.0 modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.21-1-amd64'
CC [M] /home/me/stk11xx-1.0.0/stk11xx-usb.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-v4l.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-sysfs.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-dev.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-buf.o
CC [M] /home/me/stk11xx-1.0.0/stk11xx-bayer.o
LD [M] /home/me/stk11xx-1.0.0/stk11xx.o
Building modules, stage 2.
MODPOST 1 modules
CC /home/me/stk11xx-1.0.0/stk11xx.mod.o
LD [M] /home/me/stk11xx-1.0.0/stk11xx.ko
make[1]: Leaving directory `/usr/src/linux-headers-2.6.21-1-amd64'
msempron:/home/me/stk11xx-1.0.0# modprobe videodev
msempron:/home/me/stk11xx-1.0.0# insmod stk11xx.ko
Segmentation fault <<--- this is what I didn't want to see, actually :-(
Is it some kind of a known bug or did I do something wrong?
STK-1125, Bus 005 Device 004: ID 05e1:0501 Syntek Semiconductor Co., Ltd:
Very small lag (better than what I ever managed to get on Windows) and it looks awesome and stable. The only problem is that the image has got a strongish red hue on it.
Keep up the good work!
hi!
any update since 1.0 release?
it seems that the project has slowed down a little bit, isn't it?
i just want to thank you for the great work...but could you try to make brightness/contrast settings work with v4l2 driver? :P
can you suggest a way to work on it? is there a "webcam driver programming guide"?
thank you sooooooooo much!
Thank you for your driver, it's working very well on my laptop ASUS A7T
I make a snapshoot of usb device
Bus 002 Device 004: ID 174f:a311
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x174f
idProduct 0xa311
bcdDevice 0.05
iManufacturer 1
iProduct 2
iSerial 0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 147
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 500mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0000 1x 0 bytes
bInterval 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0000 1x 0 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 1
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 1x 2 bytes
bInterval 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0300 1x 768 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 2
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 1x 2 bytes
bInterval 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x03fc 1x 1020 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 3
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 1x 2 bytes
bInterval 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 0 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 4
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 1x 2 bytes
bInterval 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x0c00 2x 0 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 5
bNumEndpoints 2
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0002 1x 2 bytes
bInterval 5
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 1
Transfer Type Isochronous
Synch Type None
Usage Type Data
wMaxPacketSize 0x1400 3x 0 bytes
bInterval 1
Device Qualifier (for other device speed):
bLength 10
bDescriptorType 6
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
bNumConfigurations 1
Device Status: 0x0002
(Bus Powered)
Remote Wakeup Enabled