USB Sweex 100K Webcam on Linux


Sweex 100K USB box

Sweex 100K specs (+Sonix SN9C101)       Sweex 100K USB optical side

The idea was to 'write' a program to handle this (very) cheap webcam ( Sweex 100k < 10 € ; 16sep2004 MediaMarkt.lg) on Linux.  According to Luca Risolia's video4linux driver, USB (0c45:6009) is supported by his driver.  But it is for a Linux kernel 2.6 (with video4linux) and I am presently using a 2.4...  So, why not write a little program to handle the webcam in 'User Space'?.  To enhance the portability and ease development, I would use the libusb.  It is the occasion to fiddle a little bit with an USB device.  Luca Risiola's driver seems/is very good and (seems to) handle a lot of those 'cheap' webcams.  But it isn't that easy to translate into a 'User Space driver' using the libusb library (which is nice but not too well documented for someone discovering USB programming).  So after some cuts&pastes, interpretations, tries and errors, this is the very first image I got :-)

first image I got

Well, it shows some flaws : it is black and white (as I did not cut/paste the Bayer2RGB routine) and it is not sync'ed (as I let the start-of-frame header in the image data).  I was just so impatient to check the data I was reading were meaningful...  And it was!  :-).  Although I don't know yet where the 'little squares' come from (I suspect it has something to do with the colors in the Bayer's pattern; I just decided that each pixel gave me a luminance value (r=g=b)).  The program (sweex.tgz) is still very short at this point. (see further developments by Gert-Jan C. Prins (AKA Golf) on

after bayer2rgb() ... The colors are not perfect yet  ;-)

based on
According to this sensor list, the PAS106B, the 352x288 CMOS color sensor, has pixels of 7.25x7.25 um² and a imaging area of 2.6x2.1 mm².

Sweex MiniUSB webcam

After some adaptation, the program (sweex-0.2.tgz) also works with the MiniUSB webcam. It is a small cam! Very cheap too. Sold around 10 euros by MediaMarkt in dec2004. It seems to use a TAS5110C1B Cmos sensor connected to the Sonix SN9C101. See for inside pictures.

IR pictures

According to Geoff Johnson, it is possible to replace the IR-filter (the little 'glass' glued behind the lens on the 100K) by some 'black film square' to filter-out usual colors and let pass the IR. It seems to give interesting pictures (while not quite 'night vision'). I did not try yet.  See his page  ( slashdoted 13mar2005)

See Also

24sep2004 -- xof @ S k y n e t . b e   autres bricolages.