Hobbynet gt89xx (GT9811 grandtech usb bridge webcam chip) SANE 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 gt8911 usb bridge and to give
information about the SANE gt8911 Vidcam backend.
Some parts of the pdc640 camlib libgphoto2 are used for this backend.

Info, links, documents
1. Chip info: No info on the GT8911 chip
2. Webcam manufactuers: Meade-Bresser (Binocular),
	                Celestron Vistapix 72201, 
With the program sane-find-scanner -v -v (used as root, SANE-Backends cvs 11-07-2004 or later),
some GT-8911 chip webcams can be detected,
Return/Terug Top
GT8911 info
Binocular 8x30 GT8911 vid 0x0797, pid 0x801c
Picture binocular
Interface usb 1.1, 
Optical Resolution still camera 640 x 480 pixels, fileformat .ppm
                   webcam 640 x 480, 320 x 160 (default), 160 x 120.
		   (hardware version c0 / firmware version 10)
pixel depth and compression: 320x240 RGB 24 (230400 bytes) and GTC2 (230400 bytes)
Printed circuit board top
Printed circuit board bottom
Printed circuit board front sensor
Printed circuit board back sensor

GrandTech SmartCam vid 0x797, pid 0x8001 chipset GT-8911 MFA0456.1 0206 
Clevercam Sensor type: 1/T'Color CIF (352x288 pixels) CMOS image sensor.
Auto-exposure and Auto White-balance control.
Image Performance for Video Stream: 8 fps for CIF, HI-resolution (352x288 pixels),
approx. 12 seconds Video taking. 8 fps for QCIF, LO-resolution (176x144 pixels),
approx. 45 seconds min. Video taking.
Memory for Images: 64Mbit SDRAM Memory Storage. 100 +/-20 Pictures for CIF,
HI Resolution. 400 +/-40 Pictures for QCIF, LO Resolution.
Effective Lens Viewing Angle : 46.5cleg ; Aperture : Maximum F2.5 Automatic 
(Focal Length 3.6mm, Fixed Iris).
Focusing Distance: 0.5m min. to Infinity (Maximum Distortion : less than 4%)
Minimum Luminosity: 10 Lux or above.

UMAX DC AstraPix 320S  vid 0d64,  pid 1001

For using this (not working yet) SANE gt89xx backend the following files need
to be patched/placed:

sane backends (use SANE version 1.0.18 or higher):
placed in backend directory (1.0.18): gt89xx.c, gt89xx.h, gt89xx.conf.in,
placed in doc/descriptions directory: gt89xx.desc file.
patched in backend directory:         dll.conf.in (add: gt89xx)
patched                               configure.in (Backends variable: gt89xx)

Run:                                  autoconf

patched Makefile.in:                  backend/Makefile.in 
                                      add lines after "# We must not build SANE
				      backend libraries ..":
                                      libsane-gt89xx.la: ../sanei/sanei_constrain_value.lo
                                      libsane-gt89xx.la: ../sanei/sanei_usb.lo
				      Check/add by DISTFILES:
				      gt89xx.c gt89xx.h gt89xx.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_GT89XX=255" to enable debugging and or
"export SANE_DEBUG_XCAM=255"

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.

see also download link

sane-frontend (use SANE version 1.0.14 or higher):

At this moment there are two frontends which can be used with the gt89xx backend for some tests,
image downloading not possible yet:
1. xcam: 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 gt89xx:libusb:001:002 --batch=out.ppm --batch-count 5 --mode "Color RGB"
   for different files use =out%d.ppm
3. saned: not tested yet.
4. scanadf: not tested yet.
5. 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
02-09-2006 .. 02-09-2006 .. File updates, working on bulk read mode routine.
12-09-2005 .. 12-09-2005 .. Working on bulk read mode routine.
20-12-2004 .. 04-02-2005 .. Working on usb commands and isochronous mode routines.
10-07-2004 .. 23-10-2004    Working on skeleton files gt89xx.c, gt89xx.h and gt89xx.conf (ready).
10-07-2004                  Added check for GT-8911 in check-usb-chip.c 
                            (CVS SANE-backends)
03-07-2004 .. 03-07-2004 .. Check usb traffic, info file, gt8911.txt
02-07-2004 .. 10-12-2004 .. Check usb traffic (gt6811.txt and usbsnoop-image-gt8911.log.gz).
                            gt8911 supports both bulk and isochronous mode IN endpoints
02-07-2004 Start of webpage, some test done (lsusb -v, sane-find-scanner -v -v,
           xcam, xawtv, camorama, spacagui, gtkam, gphoto2).
	   Status gphoto2 (GrandTek ScopeCam, testing, camlib pdc640, see also gt98x-1.html and pdc640.c file),
	   For webcam function no linux driver found yet.
Return/Terug Top
27-09-2004 See Downloads page
Return/Terug Top
TO DO list
1. In webcam mode make some usb trafffic logs (with sniff-usb 1.8), 
   Format output (with skipe4.pl) and check usb traffic.
2. In webcam mode make some usb log files with a USB protocoll analyser (Beagle).
3. Update gt8911.txt file with more USB commands info.
4. Work on bulk read mode routine
5. Work on isochronous mode routine.
Return/Terug Top

Copyright © 2004 - 2006. Alle rechten voorbehouden, Revisie: 13 November 2006.