Hauppauge HVR-1600

From MythTV

Jump to: navigation, search
The Hauppauge HVR-1600 dual tuner capture card
Enlarge
The Hauppauge HVR-1600 dual tuner capture card

Contents

Hauppauge HVR-1600

Note: The Linux cx18 driver available for the WinTV-HVR-1600 is of BETA quality


WinTV-HVR-1600
Vendors Website http://www.hauppauge.com/pages/products/data_hvr1600.html
Support Status Works with MythTV 0.21, but not explicitly supported
Driver Linux cx18 driver, which is of BETA quality
Sound Driver Not needed, the hardware encoder will multiplex the audio with the video stream.
Chipset Conexant CX23418 MPEG-2 encoder, and CX24227 ATSC demodulator



The Hauppauge WinTV-HVR-1600 is a dual tuner ATSC/NTSC capture board by Hauppauge Computer Works. The card is PCI based, and is designed for use in North America where NTSC and ATSC signals are used for television broadcast.

Description

The HVR-1600 is the latest capture card from Hauppauge (pronounced /hɔphɔg/ like the Hamlet on Long Island, New York where the company just so happens to be from) Computer Works. The design is made entirely of Conexant chips. The Conexant CX23418 is the TV broadcast decoder, MPEG2 encoder, and host bus interface chip. The CX23418 is the next generation of the CX23416 that was used on the very well supported PVR-150 and PVR-500 series cards, it combines the hardware encoding engine of the CX23416 with a CX25843 broadcast decoder/digitizer core on one chip. The only other chip worth mentioning is the new Conexent CX24227 ATSC demodulator used for digital TV reception. The retail version of the card supports and comes with an IR Blaster and Receiver, as well as a Remote. The over-the-air tuner supports all ATSC formats, up to the high definition 1080i format. Some of the HVR-1600's (product code 74021 and 74041 found on the tuner label) also support Clear QAM, which is most likely the stuff your cable company uses for your local HD channels. Again the analog tuner supports encoding NTSC into MPEG-2 at 720x480 resolution with a data rate of up to 12Mbits/sec.

IVTV

There is a beta driver for CX23418 MPEG-2 encoder at this time. For more information see: http://ivtvdriver.org/index.php/Cx18

Options for Linux Drivers

Beta drivers are released. Concurrent NTSC and ATSC capture are working. The latest stable version can be found here: http://www.linuxtv.org/hg/v4l-dvb

Output Messages

Further information that may be useful for driver writing are the following lspci command outputs.

lspci returns

      02:02.0 Multimedia video controller: Conexant Unknown device 5b7a

lspci -vn

  02:02.0 0400: 14f1:5b7a
       Subsystem: 0070:7404
       Flags: bus master, medium devsel, latency 64, IRQ 5
       Memory at f8000000 (32-bit, non-prefetchable) [size=64M]
       Capabilities: <access denied>

lspci -v

   02:02.0 Multimedia video controller: Conexant Unknown device 5b7a
       Subsystem: Hauppauge computer works Inc. Unknown device 7404
       Flags: bus master, medium devsel, latency 64, IRQ 5
       Memory at f8000000 (32-bit, non-prefetchable) [size=64M]
       Capabilities: <access denied>

Issues and Problems

The cx18 driver has the following known, major issues as of 7 June 2008:

1. Some users experience I2C bus failures that essentially make the card unusable

2. VBI data is not implemented yet

3. Audio from the analog tuner is digitized as mono at a fairly soft level

4. The first analog capture after modprobe experiences dropped frames and/or no audio. All subsequent analog captures are fine.

Installation Guide

The following installation instructions worked for this author, please modify or append any information that you found useful.

1. Install the latest v4l-dvb drivers


1a. Download the latest

 sudo apt-get install mercurial linux-headers-$KERNEL_VERSION build-essential
 hg clone http://linuxtv.org/hg/v4l-dvb

To find your kernel version, run uname -r and you should get something like this:

 uname -r
 > 2.6.24-19-generic


1b. Compile and add the module to your kernel:

 cd v4l-dvb
 make
 sudo make install
 sudo make unload
 sudo modprobe cx18


2. Download and install the Version 3.4D firmware from Hauppage (this step is based off instructions from Hauppauge's site)

 wget http://hauppauge.lightpath.net/software/install_cd/hauppauge_cd_3.4d1.zip
 unzip hauppauge_cd_3.4d1.zip
 cd hauppauge_cd_3.4D1
 sudo cp Drivers/Driver18/hcw18apu.rom /lib/firmware/$KERNEL_VERSION/v4l-cx23418-apu.fw
 sudo cp Drivers/Driver18/hcw18enc.rom /lib/firmware/$KERNEL_VERSION/v4l-cx23418-cpu.fw
 sudo cp Drivers/Driver18/hcw18mlC.rom /lib/firmware/$KERNEL_VERSION/v4l-cx23418-dig.fw

Reboot

 sudo shutdown -r now

Verify that everything was installed correctly by running dmesg. You should see something like the following:

 dmesg | grep cx18
 > [ 42.230394] cx18-0: Initialized card #0: Hauppauge HVR-1600


Note: Steps 1 & 2 must be repeated after each kernel update. When these drivers are out of beta, this will hopefully all be handled by the package manager.


3. Configure MythTV to use both "halves" of the card

  1. Enter mythsetup and go to Capture cards
  2. Select (New capture card)


3a. Configure the analog half of the card as you would a supported MPEG-2 Encoder PVR-150 card

Treating the analog half of the card as an ivtv based card in MythTV works as the cx18 driver is heavily based on (i.e. cut and pasted from) the ivtv driver.

  1. Under Card type, choose 'MPEG-2 encoder card (PVR-x50, PVR-500)'.
  2. Choose the correct video device (usually /dev/video0 unless you have more than one card).
  3. Probed info should populate with 'Hauppauge HVR-1600 [cx18]'.
  4. To use NTSC (cable), choose 'Tuner 1' under Default input.
  5. Select Finish.


3b. Configure the ATSC (digital) half of the card as you would any other DVB DTV capture card

  1. Add another tuner card
  2. Under Card type choose 'DVB DTV capture card (v3.x)'.
  3. Choose the correct value under DVB Device Number (usually 0, this should be the same number appended to /dev/video when configuring the analog portion of the card).
  4. Frontend ID should populate to something like "Samsung S5H1409 QAM/Subtype: ATSC'.
  5. Select Recording Options.
  6. Change Max recordings to 1, since this card can only record one thing at a time.
  7. Select Finish.
  8. Select Finish again.


To scan for channels:

  1. Go back to the main menu an select Input connections, then select the correct DVB input for the card you just configured.
  2. Select Scan for channels.
  3. You should have your DVB device selected under Input.
  4. Scan Type should be 'Full Scan'.
  5. For cable, change Frequency Table to 'Cable' (you'll probably want to use 'Cable High' since most QAM channels are in the high range).
  6. For cable, change Modulation to 'Cable (QAM-256)'. All U.S. cable companies either use QAM-256 or QAM-64, most including Comcast use QAM-256.
  7. Choose an ATSC Channel Separator (most television tuners use a period).
  8. Select Next and then wait for the scan to complete. This may take a while.
  9. When it's done scanning, select Finish

MythTV has been known to have some issues scanning for all ATSC channels, see Adding Digital Cable Channels (For ATSC/QAM Tuner Cards -- USA/Canada) for more information.

Resources

Here are some resources to take a look at. The data sheets for the Hauppauge HVR-1600 and the Conexant CX23418 MPEG-2 encoder chip.

The mailing lists at http://www.ivtvdriver.org where use and development of the cx18 driver is discussed for the HVR-1600 and other CX23418 based cards.

Hauppauge product page for the HVR-1600

Conexant product page for the CX23418-chip


This is a link to a thread claiming development has started on a driver

This is a link to the linuxtv.org page that lists currently supported cards, as well as the unsupported cards.

 From the Hauppauge product support page:
 "Linux support for the WinTV-HVR-1600 is in process. When the WinTV-HVR-1600 is added to the growing list of over 30
  supported Hauppauge products with Linux open source drivers, an entry will be made in the LinuxTV.ORG Wiki."
Personal tools