I bought a Voltcraft BS-15 endoscope on the basis that it was supported by Linux, and should work out of the box, but it doesn’t, and I have found no clues in the web.
Device
Voltcraft defines the device as 640x480 30fps 24 bit RGB, AVI video, USB 1.1
Once plugged
~> lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
(...)
Bus 001 Device 006: ID 093a:2900 Pixart Imaging, Inc.
The device is listed in Linux UVC driver & tools as supported by UVC with a discrepancy as the name listed is Agama V-315.
~> dmesg | tail -n 7
[10186.704209] usb 1-1.3: new full speed USB device number 12 using ehci_hcd
[10186.908819] usb 1-1.3: New USB device found, idVendor=093a, idProduct=2900
[10186.908823] usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[10186.908827] usb 1-1.3: Product: Digital_Camera
[10186.908829] usb 1-1.3: Manufacturer: PixArt Imaging Inc.
[10186.914623] uvcvideo: Found UVC 1.00 device Digital_Camera (093a:2900)
[10186.929591] input: Digital_Camera as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/input/input21
Trying to get a picture
~> guvcview
guvcview 1.5.3
Could not open /home/pol/.guvcviewrc for read,
will try to create it
write /home/pol/.guvcviewrc OK
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards.ICE1712.pcm.surround71.0:CARD=0'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM surround71
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards.ICE1712.pcm.hdmi.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM hdmi
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards.ICE1712.pcm.hdmi.0:CARD=0,AES0=4,AES1=130,AES2=0,AES3=2'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM hdmi
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards.ICE1712.pcm.modem.0:CARD=0'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline:CARD=0,DEV=0
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards.ICE1712.pcm.modem.0:CARD=0'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline:CARD=0,DEV=0
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards.ICE1712.pcm.modem.0:CARD=0'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM phoneline
ALSA lib confmisc.c:1286:(snd_func_refer) Unable to find definition 'cards.ICE1712.pcm.modem.0:CARD=0'
ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM phoneline
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
Cannot connect to server socket err = No such file or directory
Cannot connect to server socket
jack server is not running or cannot be started
video device: /dev/video0
ERROR opening V4L interface: No such file or directory
Init video returned -1
VIDIOC_REQBUFS - Failed to delete buffers: Invalid argument (errno 22)
cleaned allocations - 100%
Closing portaudio ...OK
Terminated.
Tried also
- wxcam (fails to get proper format in AUTO, fails in all format options)
- kamoso (which works OK on my non-UVC webcam)
After an attempt in any of these,
~> dmesg | tail -n 2
[10186.929591] input: Digital_Camera as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/input/input21
[10229.007022] uvcvideo: Failed to submit URB 0 (-28).
Help wanted!
Is there anything that I missed, or a workaround for this situation?
Additional information
Host hardware: Asus P8P67 Pro Rev. 3.1 w. Intel i7, 8GB RAM, Nvidia GeForce GV-N550C-1G1
System : Linux linux-desk 3.1.10-1.9-desktop #1 SMP PREEMPT Thu Apr 5 18:48:38 UTC 2012 (4a97ec8) i686 i686 i386 GNU/Linux
(Suse Linux 12.1)
~> cat .guvcviewrc
# guvcview configuration file for /dev/video0
version='1.5.3'
# Thread stack size: default 128 pages of 64k = 8388608 bytes
stack_size=8388608
# video loop sleep time in ms: 0,1,2,3,...
# increased sleep time -> less cpu load, more droped frames
vid_sleep=0
# capture method: 1- mmap 2- read
cap_meth=1
# video resolution
resolution='160x120'
# control window size: default 480x700
windowsize='512x700'
#vertical pane size
vpane=578
#spin button behavior: 0-non editable 1-editable
spinbehave=0
#Default action. 0 for picture, 1 for video.
default_action=0
# mode video format 'yuvy' 'yvyu' 'uyvy' 'yyuv' 'yu12' 'yv12' 'nv12' 'nv21' 'nv16' 'nv61' 'y41p' 'grey' 'y16 ' 's501' 's505' 's508' 'gbrg' 'grbg' 'ba81' 'rggb' 'rgb3' 'bgr3' 'jpeg' 'mjpg'(default)
mode='rgb3'
# frames per sec. - hardware supported - default( 25 )
fps='1/1'
#Display Fps counter: 1- Yes 0- No
fps_display=0
#auto focus (continuous): 1- Yes 0- No
auto_focus=0
# bytes per pixel: default (0 - current)
bpp=32
# hardware accelaration: 0 1 (default - 1)
hwaccel=1
# video compression format: 0-MJPG 1-YUY2/UYVY 2-DIB (BMP 24) 3-MPEG1 4-FLV1 5-MPEG2 6-MS MPEG4 V3(DIV3) 7-MPEG4 (DIV5)
vid_codec=0
# avi file max size (MAX: 1992294400 bytes)
avi_max_len=1992294400
# Auto Video naming (ex: filename-n.avi)
vid_inc=0
# sound 0 - disable 1 - enable
sound=1
# sound API: 0- Portaudio 1- Pulseaudio
snd_api=0
# snd_device - sound device id as listed by portaudio (pulse uses default device)
snd_device=0
# snd_samprate - sound sample rate
snd_samprate=0
# snd_numchan - sound number of channels 0- dev def 1 - mono 2 -stereo
snd_numchan=0
#snd_numsec - video audio blocks size in sec: 1,2,3,..
# sound delay in nanosec - delays sound by the specified amount when capturing video
snd_delay=0
# Sound Format (PCM=1 (0x0001) MP2=80 (0x0050)
snd_format=80
# video filters: 0 -none 1- flip 2- upturn 4- negate 8- mono (add the ones you want)
frame_flags=0
#on screen display flags (VU meter)
osd_flags=0
# Auto Image naming (filename-n.ext)
image_inc=0
# Image capture Full Path
image_path='/home/pol/Image.jpg'
# Video capture Full Path
video_path='/home/pol/capture.avi'
# control profiles Full Path
profile_path='/home/pol/default.gpfl'
# audio codec properties (remove for default values
acodec_bit_rate=160000
# video codec (MJPG) properties (remove for default values
vcodec_bit_rate=0
vcodec_fps=0
vcodec_monotonic_pts=0
vcodec_qmax=0
vcodec_qmin=0
vcodec_max_qdiff=0
vcodec_dia=0
vcodec_pre_dia=0
vcodec_pre_me=0
vcodec_me_pre_cmp=0
vcodec_me_cmp=0
vcodec_me_sub_cmp=0
vcodec_last_pred=0
vcodec_gop_size=0
vcodec_qcompress=0.00
vcodec_qblur=0.00
vcodec_subq=0
vcodec_framerefs=0
vcodec_mb_decision=0
vcodec_trellis=0
vcodec_me_method=0
vcodec_mpeg_quant=0
vcodec_max_b_frames=0
vcodec_num_threads=0
vcodec_flags=0