SANE sn9c10x vidcam backend, under development |
Main Index, webcam info, Info, links, documents, Camera info, Progress, Download, To Do list
Goal for this page is to collect data about the sn9c10x pc camera controller and to give information about the SANE sn9c10x Vidcam backend. Some parts of the sn9c10x and spca5xx kernel module and some userspace programs are expected to be used for this backend zie links below. Intention is also to use first the usb bulk read mode before trying to use the usb isochronous read mode.
Info, links, documents 1. Camera info: sn9c101 + tas5110c1b Sweex Mini Webcam sn9c102 + pas202b Sitecom VP-001 Easycam BTC PC380 VCOM PD-612 2. USB bridge manufactuers: Sonix 3. Sensor: TASCOPR TAS5110C1B Pixart PAS202 4. Programs: spca50x kernel driver Michel Xhaard (vl41) sn9c10x Luca Risolia (v4l2) sn9c101 Bertrik Sikken (v4l1) sonix.sourceforge.net (v4l1) homepage sonix.sourceforge (v4l1) sn9c101 userspace xof sn9c101 NetBSD Takafumo Mizuno sn9c102 Carlos Eduardo Medaglia Dyonisio Return/Terug Top
Sweex Mini Webcam vid 0x0c45, pid 0x6005 Interface usb 1.1, Optical Resolution: CIF (352x288), QCIF (176*144) , QVGA(320x240), QSIF(160x120). fileformat: Program tested with: Sweex Mini Webcam JA000030: Chip SN9C101 Sensor TAS5110C1B (32 pins chip) Lens ? sweex-miniwebcam-front.jpg sweex-miniwebcam-back.jpg Sitecom VP-001 Easycam webcam vid 0x0c45, pid 0x6028 Interface usb 1.1, Optical Resolution: VGA (640x480), CIF (352x288), QCIF (176*144)?, QVGA(320x240)?, QSIF(160x120)?. fileformat: Program tested with:(not yet) Sitecom VP-001: Chip SN9C102 Sensor PAS202 (28 pins chip) Lens ? sitecom-vp-001-usb-bridge.jpg sitecom-vp-001-sensor.jpg usb bridge-sensorlist, from info files USB\VID_0c45 and PID_6005 ; SN9C101 + TAS5110 USB\VID_0c45 and PID_6009 ; SN9C101 + PAS106 USB\VID_0c45 and PID_6024 ; SN9C102 + TAS5130 USB\VID_0c45 and PID_6025 ; SN9C102 + TAS5130 USB\VID_0c45 and PID_6025 Mi_00; sn9c103 + TAS5130 ???? see sn9c102 ??? USB\VID_0c45 and PID_6027 ; sn9c101 + OV7630 USB\VID_0c45 and PID_6028 ; SN9C102 + PAS202 USB\VID_0c45 and PID_6029 ; SN9C102 + PAS106 USB\VID_0c45 and PID_602a ; SN9C101 + HV7131 D/E USB\VID_0c45 and PID_602c ; SN9C102 + OV7630 USB\VID_0c45 and PID_602d ; SN9C101 + HV7131 R USB\VID_0c45 and PID_6030 ; SN9C102 + MI0343 MI0360 USB\VID_0c45 and PID_603f ; SN9C101 + CISVF10 USB\VID_0c45 and PID_6040 ; SN9C102P + MI0360 USB\VID_0c45 and PID_607a ; SN9C102P + OV7648 USB\VID_0c45 amd PID_607c ; SN9C102P + HV7131R USB\VID_0c45 and PID_607e ; SN9C102P + OV7630 USB\VID_0c45 and PID_6082 Mi_00; sn9c103 + MI0343,MI0360 USB\VID_0c45 and PID_6083 Mi_00; sn9c103 + HY7131D/E USB\VID_0c45 and PID_608c Mi_00; sn9c103 + HY7131/R USB\VID_0c45 and PID_608e Mi_00; sn9c103 + CISVF10 USB\VID_0c45 and PID_608f Mi_00; sn9c103 + OV7630 USB\VID_0c45 and PID_60a8 Mi_00; sn9c103 + PAS106 USB\VID_0c45 and PID_60aa Mi_00; sn9c103 + TAS5130 USB\VID_0c45 and PID_60ab Mi_00; sn9c103 + TAS5110 USB\VID_0c45 and PID_60af Mi_00; sn9c103 + PAS202 USB\VID_0c45 and PID_60c0 MI_00; SN9C105 + MI0360 USB\VID_0c45 and PID_60fa MI_00; SN9C105 + OV7648 USB\VID_0c45 and PID_60fc MI_00; SN9C105 + HV7131R USB\VID_0c45 and PID_60fe MI_00; SN9C105 + OV7630 USB\VID_0c45 and PID_6100 ; SN9C128 + MI0360 / MT9V111 / MI0360B USB\VID_0c45 and PID_610a ; SN9C128 + OV7648 USB\VID_0c45 and PID_610c ; SN9C128 + HV7131R USB\VID_0c45 and PID_610e ; SN9C128 + OV7630 USB\VID_0c45 and PID_610b ; SN9C128 + OV7660 USB\VID_0c45 and PID_6130 ; SN9C120 + MI0360 USB\VID_0c45 and PID_613a ; SN9C120 + OV7648 USB\VID_0c45 and PID_613c ; SN9C120 + HV7131R USB\VID_0c45 and PID_613e ; SN9C120 + OV7630 1.3M USB\VID_0c45 and PID_6240 ; SN9C201 + MI1300 USB\VID_0c45 and PID_6242 ; SN9C201 + MI1310 USB\VID_0c45 and PID_624e ; SN9C201 + SOI968 USB\VID_0c45 and PID_624f ; SN9C201 + OV9650 USB\VID_0c45 and PID_627f ; EEPROM VGA Sensor USB\VID_0c45 and PID_6270 ; SN9C201 + MI0360 USB\VID_0c45 and PID_627c ; SN9C201 + HV7131R USB\VID_0c45 and PID_627b ; SN9C201 + OV7660 USB\VID_0c45 and PID_627f ; EEPROM ; ; Usb2.0 PC Camera with Audio Function ; USB\VID_0c45 and PID_6280 and MI_00 ; SN9C202 + MI1300 USB\VID_0c45 and PID_6282 and MI_00 ; SN9C202 + MI1310 USB\VID_0c45 and PID_628e and MI_00 ; SN9C202 + SOI968 USB\VID_0c45 and PID_628f and MI_00 ; SN9C202 + OV9650 USB\VID_0c45 and PID_628a and MI_00 ; SN9C202 + ICM107 USB\VID_0c45 and PID_62b0 and MI_00 ; SN9C202 + MI0360 USB\VID_0c45 and PID_62bc and MI_00 ; SN9C202 + HV7131R USB\VID_0c45 and PID_62bb and MI_00 ; SN9C202 + Ov7660 For using these pre alpha files SANE sn9c10x backend the following files need to be patched/placed: sane backends (use version 1.0.18 or higher): placed in backend directory: sn9c10x.c, sn9c10x.h, sn9c10x.conf.in, placed in doc/descriptions directory: sn9c10x.desc file. patched in backend directory: Makefile.in, dll.conf.in (added sn9c10x) patched configure.in (add to list BACKENDS: sn9c10x) patched in tools/udev libsane.rules (add line with vid and pid webcam) Run: autoconf patched Makefile.in: backend/Makefile.in add lines after "# We must not build SANE backend libraries ..": libsane-sn9c10x.la: ../sanei/sanei_constrain_value.lo libsane-sn9c10x.la: ../sanei/sanei_usb.lo Check/add by DISTFILES: sn9c10x.c sn9c10x.h sn9c10x.conf.in Run "./configure --sysconfdir=/etc --prefix=/usr --mandir=/usr/share", "make", and "make install" (as root) as usual. sane-frontend (use SANE version 1.0.14 or higher): Use "export SANE_DEBUG_SN9C10X=255" to enable debugging. Check file permisions from (for example 0666): (hotplug) /proc/bus/usb/0xx/0yy or (udev) /dev/bus/usb/0xx/0yy If you want to add your device, just add code until the backend works. sane-frontend (use version 1.0.14 or higher): system patched /etc/hotplug/ blacklist (add line with: sn9c102, gspca or spca5xx) see also download link At this moment there are two frontends which can be used with the sn9c10x backend: 1. xcam: xcam -B for display (no streaming video (SANE bugreport 300832) only snapshots in display and save to file is possible). If a modified version is used, only streaming frames is possible remove first "stop_camera ();" line in routine "input_available". 2. scanimage: for writing in batch mode to files (files can be one file each time overwritten or each time a frame is written to a new file). scanimage -B -d sn9c10x:libusb:001:002 --batch=out.pnm --batch-count 5 --mode "Color RGB" for different files use =out%d.pnm 3. saned: not tested yet. 4. USB network? see usbip Using other frontends will be a problem, no idea if for example writing a gstreamer-sane plugin will be a lot of work and/or difficult. Another solution could be to use a frontend which can read the file from scanimage which is refreshed at a rate of .. fps. Return/Terug Top
Progress 20-05-2007 .. 22-05-2007 Gray image reading possible, working on RGB decompression. and sn9c101 + TAS5110C1B sensor init mode 02-03-2005 .. 04-03-2005 Added sn9c102 + PAS202B sensor init (done). Debuging image size, see first screenshot; sn9c102-pas202b.jpg size ~50k] 22-01-2005 .. 22-01-2005 Added sensor selection, debuging sn9c101 + TAS5110C1B sensor init (done). Debuging image size, see first screenshot; sn9c10x-screenshot-text-0c45-6005.jpg size ~50k] 20-01-2005 .. 21-01-2005 Working on skeleton files sn9c10x.c, sn9c10x.h and sn9c10x.conf.(ready) Added commands for sn9c101 + PAS106B sensor (ready, but not tested) 30-03-2005 sn9c102.txt lsusb -vv output 16-01-2005 sn9c101.txt lsusb -vv output 15-01-2005 Start of webpage, some test done (lsusb -v, sane-find-scanner -v -v, xcam, xawtv, camorama, spacagui, gtkam, gphoto2). sn9c102 kernel module for webcam function, images 352x288 (2.6.10 kernel and videolive frontend) Return/Terug Top
Download 15-01-2005 See Downloads page Return/Terug Top
TO DO list 1. Working on RGB decompression 2. Work on sn9c101 + TAS5110C1B sensor debuging image size. 3. Correct setup sn9c101 + PAS106B sensor if its tested by ?. 4. Work on sn9c102 + PAS202B setup Return/Terug Top
Copyright © 2005 - 2007. Alle rechten voorbehouden, Revisie: 18 Juni 2007.