Difference between revisions of "Hauppauge WinTV-CI"

From LinuxTVWiki
Jump to: navigation, search
(Driver)
(Driver)
Line 36: Line 36:
  
 
This is the log with the driver initialisation and communication with vdr/ddci2:
 
This is the log with the driver initialisation and communication with vdr/ddci2:
Mar  4 23:04:55 gentoo2 kernel: usb 1-1: new high-speed USB device number 26 using ehci-pci
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: Found USB-CI device 2040:1100 (Ver.2) in cold state
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: located firmware wintvci_cb.fw, size 6424 bytes
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: *** FW *** block-size 16, block-cnt 292, adr-low 0x0000, adr-top 0x0E06
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * 291 firmware blocks written to internal RAM
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * EEPROM: Boot-Mode: C0, V:P:D: 2040:1100-2.00 cfg: 04
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * EEPROM: Size 16 kB ( 16384 [0x4000] bytes )
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * REVID [0xE60A]: Silicon Revision 0x01
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * IFCONFIG [0xE601]=0x80 : FIFO/GPIF Clock 30 Mhz (internal)
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * USBCS [0xE680]=0x80
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * CPUCS [0xE600]=0x02 : CPU clock-speed 12 Mhz (12|24|48)
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: CI-firmware wintvci_r2.fw selected
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: located firmware wintvci_r2.fw, size 13684 bytes
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: *** FW *** block-size 16, block-cnt 622, adr-low 0x0000, adr-top 0x26C9
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci:  * 621 firmware blocks written to internal RAM
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: probe succesfull
 
Mar  4 23:04:55 gentoo2 kernel: usbcore: registered new interface driver wintv_usb2ci
 
Mar  4 23:04:55 gentoo2 kernel: Error: Driver 'wintv_usb2ci' is already registered, aborting...
 
Mar  4 23:04:55 gentoo2 kernel: usb 1-1: USB disconnect, device number 26
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: wintv_usb_ci_disconnect
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: wintv_usb_ci_delete
 
Mar  4 23:04:55 gentoo2 kernel: wintv_usb2ci: USB wintv-ci #-1 now disconnected
 
Mar  4 23:04:57 gentoo2 kernel: usb 1-1: new high-speed USB device number 27 using ehci-pci
 
Mar  4 23:04:57 gentoo2 kernel: wintv_usb2ci: Found USB-CI device 2040:1100 (Ver.0) in warm state
 
Mar  4 23:04:57 gentoo2 kernel: wintv_usb2ci:              Product : WinTV-CI-USB2
 
Mar  4 23:04:57 gentoo2 kernel: wintv_usb2ci:        Manufacturer : HAUPPAUGE
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci:  EP 1 IN  (INTR) Addr : 0x81, Maxp  64 Ival 9
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci:  EP 1 OUT (BULK) Addr : 0x01, Maxp  512 Ival 8
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci:  EP 2 IN  (ISOC) Addr : 0x82, Maxp  752 Ival 1
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci:  EP 6 OUT (ISOC) Addr : 0x06, Maxp  752 Ival 1
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: Registering DVB Adapter
 
Mar  4 23:04:59 gentoo2 kernel: dvbdev: DVB: registering new adapter (WinTV-CI)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: Attaching DVB CA Device
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ca_bulk_allocate : EP(01) init packet buffer: 512 bytes
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ca_intr_allocate : EP(81) init packet/message buffers: 64/255 bytes
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: Attaching DVB CI Device
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ts_rb_alloc : EP(06) ringbuffer size 721920 bytes (8 x 480 / 3840 TS-packets)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ci_isoc_allocate : EP(06) init 8 urbs (120 uframes / 480 TS-packets each urb)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ci_isoc_setup : EP(06) initialize 8 urbs (DIR_OUT)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ts_rb_alloc : EP(82) ringbuffer size 721920 bytes (8 x 480 / 3840 TS-packets)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ci_isoc_allocate : EP(82) init 8 urbs (120 uframes / 480 TS-packets each urb)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ci_isoc_setup : EP(82) initialize 8 urbs (DIR_IN)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: Reset CI Device
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: ts_stop_streaming : stop streaming
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: CI_send_CMD        : [90] 0
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: CI_read_CMD_REPLY  : [08] 20/20/0
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci:  * FW_Version(2.01) FPGA_Version(1.d)
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: cam_state_set      : 00 -> 01
 
Mar  4 23:04:59 gentoo2 kernel: wintv_usb2ci: probe succesfull
 
Mar  4 23:04:59 gentoo2 kernel: Error: Driver 'wintv_usb2ci' is already registered, aborting...
 
Mar  4 23:05:00 gentoo2 kernel: wintv_usb2ci: CI_send_CMD        : [10] 1
 
Mar  4 23:05:02 gentoo2 kernel: wintv_usb2ci: CI_read_CMD_REPLY  : [02] 0/0/0
 
Mar  4 23:05:02 gentoo2 kernel: wintv_usb2ci: CI_WriteExchange    : [10/02] response after 2343 ms
 
Mar  4 23:05:02 gentoo2 kernel: wintv_usb2ci: cam_state_set      : 01 -> 03
 
Mar  4 23:05:02 gentoo2 kernel: wintv_usb2ci: Reset CI Device
 
Mar  4 23:05:02 gentoo2 kernel: wintv_usb2ci: ts_stop_streaming : stop streaming
 
Mar  4 23:05:02 gentoo2 kernel: wintv_usb2ci: CI_send_CMD        : [40] 0
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_read_CMD_REPLY  : [03] 158/60/98
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_read_CMD_REPLY  : [03] 98/60/38
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_read_CMD_REPLY  : [03] 38/38/0
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_WriteExchange    : [40/03] response after 320 ms
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: cam_state_set      : 03 -> 04
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis_vstrings : CFG_V1_STR 0: SMIT
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis_vstrings : CFG_V1_STR 1: DVB CA Module
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis_vstrings : CFG_V1_STR 2: $compatible[ciplus=1 ciprof=1]$
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis : CFG_BASE: 0x220 (Cfg.Reg[0] in Attrib.Memory)
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis : CFG_REGS present [0-7] = 0x01
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis : IF-CODE[0] 0x0241 'DVB_CI_V1.00' matched
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis : skip Interface description for IF-index 1
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: parse_cis : CFG-OPTIONS: 0xF
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: DVB-CI-Module detected
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_send_CMD        : [70] 5
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_read_CMD_REPLY  : [07] 0/0/0
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_WriteExchange    : [70/07] response after 290 ms
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: cam_state_set      : 04 -> 05
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_send_CMD        : [60] 2
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_read_CMD_REPLY  : [04] 2/2/0
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: CI_WriteExchange    : [60/04] response after 160 ms
 
Mar  4 23:05:03 gentoo2 kernel: wintv_usb2ci: cam_state_set      : 05 -> 06
 
  
 
===External links===
 
===External links===

Revision as of 22:14, 11 March 2018

A Hauppauge WinTV-CI

The Hauppauge WinTV-CI is a standalone CI-interface from Hauppauge.

Overview/features

The WinTV-CI is a bus-powered USB 2.0 device that provides a CI interface for PayTV.

According to Hauppauge, the Windows driver supports following CAMs:

  • AlphaCrypt
  • Conax
  • Irdeto
  • Mediaguard
  • AstonCrypt
  • CryptoWorks
  • Viacess

Components used

The box contains a single PCB with two active components : an FX2 from Cypress (CY7C68013A) and a FPGA (Actel Proasic-plus, APA075-F)

Identification

dmesg output:

  usb 1-7: new high speed USB device using ehci_hcd and address 2
  usb 1-7: new device found, idVendor=2040, idProduct=1100
  usb 1-7: new device strings: Mfr=0, Product=0, SerialNumber=0
  usb 1-7: configuration #1 chosen from 1 choice

Making it work

Driver

There is a working driver which was successfully tested with VDR in conjunction with the ddci2-plugin. Sources and instruction can be found on GitHub: [1]

See also the discussion in the german vdr-portalforum: [2]

This is the log with the driver initialisation and communication with vdr/ddci2:

External links