SilverCrest USB 2.0 Video Grabber SVG 2.0 A2

From LinuxTVWiki
Revision as of 18:07, 21 December 2013 by Milincev (talk | contribs) (Verifing full funcionality - important devices created by the driver)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

A small USB Video signal analog to digital converter distributed from the German discounter chain "Lidl". Vendor: TARGA GmbH, Lange Wende 41, D-59494 Soest. Artikel Nr.: 73763. SVG 2.0 A2. TARGA-Nr.1743993. GTIN (former EAN) is 4250133706645. This device has no TV nor Radio receivers.

It is also sold as "LogiLink USB2.0 Video Grabber with Snap Shot" - Model VG0005B v.1.0 - GTIN(EAN) is 4052792002102.

Whether it works under Linux, is still part of analysis. see below for a patch

Take note: this is a new batch being sold by Lidl late 2012 called SilverCrest USB 2.0 Video Grabber SVG 2.0 A2 and looks exactly similar as the SilverCrest USB 2.0 Video Grabber VG 2000 and has the same packaging, but uses a different chipset (Conexant CX23103-11Z), identified as ID 1d19:6109 by Dexatek Technology Ltd.

TARGA / Lidl USB-Video-Grabber SVG 2.0 A2 top view (the square area is the snapshot push-bottom

Overview/Features

Features of the SilverCrest USB-Video-Grabber SVG 2.0 A2:

  • Digitalization of analogue video signals as VHS, Video8, Hi8 etc.
  • Connects devices e.g. Camcorder, Video-Recorder and other analogue Video sources with Notebook or Personal Computer.
  • Fast and easy to use for simple transmission to digital storage units.
  • Interface: USB 2.0
  • Input rating: 5 V DC, 300 mA
  • Video inputs: Composite and S-Video
  • Audio inputs: 2 x Cinch (Stereo)
  • Video resolution: PAL / SECAM: 720 x 576 @ 25 FPS; NTSC: 720 x 480 @ 30 FPS
  • Snapshot push-buttom

Components Used

Other Images

Backside of the device and the audio-/video- connectors plugged in to the mini USB socket.

Identification

# lsusb -v  -d 1d19:6109
Bus 001 Device 002: ID 1d19:6109 Dexatek Technology Ltd.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x1d19 Dexatek Technology Ltd.
  idProduct          0x6109
  bcdDevice           40.01
  iManufacturer           1
  iProduct                2
  iSerial                 3
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          248
    bNumInterfaces          6
    bConfigurationValue     1
    iConfiguration          4
    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             32
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x8e  EP 14 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               4
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x0e  EP 14 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0020  1x 32 bytes
        bInterval               4
    Interface Association:
      bLength                 8
      bDescriptorType        11
      bFirstInterface         1
      bInterfaceCount         5
      bFunctionClass        255 Vendor Specific Class
      bFunctionSubClass     255 Vendor Specific Subclass
      bFunctionProtocol     255 Vendor Specific Protocol
      iFunction               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface              7
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x8f  EP 15 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               7
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             20
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             21
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x001c  1x 28 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        2
      bAlternateSetting       2
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             22
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0034  1x 52 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             23
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             24
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x00b8  1x 184 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       2
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             25
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x02d8  1x 728 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       3
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             26
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x13c4  3x 964 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        3
      bAlternateSetting       4
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             27
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0b84  2x 900 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             28
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        4
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             31
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x05  EP 5 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             29
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        5
      bAlternateSetting       1
      bNumEndpoints           1
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass    255 Vendor Specific Subclass
      bInterfaceProtocol    255 Vendor Specific Protocol
      iInterface             30
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x86  EP 6 IN
        bmAttributes            5
          Transfer Type            Isochronous
          Synch Type               Asynchronous
          Usage Type               Data
        wMaxPacketSize     0x0240  1x 576 bytes
       bInterval               1

Making it Work

Expecting Conexant CX2310x to work, but this is still under investigation.

Firmware

The unit does not use an loadable firmware.

Drivers

See Conexant CX2310x.

Patch to get the cx231xx driver working

In the file, depending on the kernel version, drivers/media/video/cx231xx/cx231xx-cards.c or drivers/media/usb/cx231xx/cx231xx-cards.c go to struct usb_device_id cx231xx_id_table[] and add these two lines e.g. at the beginning of the definition:

    {USB_DEVICE(0x1D19, 0x6109),
    .driver_info = CX231XX_BOARD_PV_XCAPTURE_USB},

Here is a proof that it is working.

Test System

The device is connected to a multicore AMD A6-3500 system.

> uname -a
Linux media-center 3.5.0-27-generic #46-Ubuntu SMP Mon Mar 25 19:58:17 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Kernel Output

The Kernel loads the newly provided drivers

> dmesg
[11196.213937] usb 1-4: new high-speed USB device number 2 using ehci_hcd
[11196.349182] usb 1-4: New USB device found, idVendor=1d19, idProduct=6109
[11196.349195] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[11196.349202] usb 1-4: Product: Video Grabber
[11196.349208] usb 1-4: Manufacturer: DK
[11196.349213] usb 1-4: SerialNumber: 0000000000

However, seeing this does not mean that the device is fully initialised.
Such lines must also be present:

> dmesg
[  368.813889] cx231xx #0: New device DK Video Grabber @ 480 Mbps (1d19:6109) with 5 interfaces
[  368.813895] cx231xx #0: registering interface 1
[  368.814069] cx231xx #0: Identified as Pixelview Xcapture USB (card=11)
[  368.900034] cx231xx #0: cx231xx_dif_set_standard: setStandard to ffffffff
[  368.911152] cx25840 7-0044: cx23102 A/V decoder found @ 0x88 (cx231xx #0)
[  368.929235] cx25840 7-0044:  Firmware download size changed to 16 bytes max length

Only then is the device fully functional.

Kernel Modules

To get the difference the lsmod was logged before and after plugging in the device, then the "diff" command creates the output.

> cx231xx_alsa           17905  0 
> cx25840               102646  1 
> cx231xx               168502  1 cx231xx_alsa
> videobuf_vmalloc       13560  1 cx231xx
> cx2341x                28283  1 cx231xx
> rc_core                26426  1 cx231xx
> v4l2_common            21295  3 cx2341x,cx231xx,cx25840
> videobuf_core          25993  2 cx231xx,videobuf_vmalloc
19c27
< snd_pcm                97451  2 snd_hda_codec,snd_hda_intel
---
> snd_pcm                97451  3 cx231xx_alsa,snd_hda_codec,snd_hda_intel
38c46
< snd                    68876  11 snd_hda_codec_realtek,snd_hwdep,snd_timer,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device
---
> snd                    68876  12 snd_hda_codec_realtek,cx231xx_alsa,snd_hwdep,snd_timer,snd_pcm,snd_seq,snd_rawmidi,snd_hda_codec,snd_hda_intel,snd_seq_device
42c50
< videodev              129260  2 uvcvideo,videobuf2_core
---
> videodev              129260  6 cx2341x,cx231xx,cx25840,uvcvideo,v4l2_common,videobuf2_core

Remote Control Support

There is no remote control.

Snapshot Control Support

The housing is equipped with an push bottom to initiate a video snapshot. Operating of this shows no effect in VLC application nor /var/log/messages.

Verifying full functionality

These devices must be created by the driver in order for this device to work successfully:

  • Cx231xx Audio Analog Stereo - used for audio input
  • cx231xx #0 vbi - used by v4l
  • cx231xx #0 video - used by v4l

The cx231xx driver, when properly patched and compiled, works obviously also with this hardware.

The absence of this devices means that the full functionality is not available.

Capturing video and audio works on linux (at least tested with Ubuntu 12.04. and with kernel 3.5.0.45 with applied above patch. Skype video and Audacity audio capture worked, when tested. Hence, it would safely work with later kernels, if the patch would be preconfigured. The cx231xx driver states in the source comments, that itself is copyright 2008, so some older kernels work probably as well, if the module is patched and compiled properly).

External Links


  • [1] Manufacturer of CX23103 chip
  • [2] Vendor
  • [3] Distributor