ATI HDTV Wonder

From MythTV

Jump to: navigation, search

With the release of the 2.6.15 kernel, this HDTV capture card is partly useable with MythTV. Although this card has no official Linux support, unlike other cards such as the DVICO Fusion, Air2PC and pcHDTV cards, there probably some that bought this card for Windows MCE, only to realize later that MCE is not stable with HDTV content. So you've moved on and up to MythTV and want to put this card to use.


The ATI HDTV Wonder
The ATI HDTV Wonder

Contents

Compatibility

The ATI HDTV Wonder can be used for digital or analog channels, and will coincide nicely with standard definition cards using the ivtv drivers, like the Hauppauge PVR-150 - 500 cards, as well as other HDTV cards using the cx88-dvb drivers, such as the pcHDTV. It's not officially supported by ATI under Linux. Although it has an analog tuner onboard, there is no hardware mpeg2 encoder so this task will cause a certain load on your processor. In a system with enough processor performance both the analog and digital tuner will work. The digital tuner IS capable of tuning clear (unencrypted) QAM 256 channels. Most cable providers have the local channels in HD in this QAM 256 format. The card will lock to encrypted and unencrypted QAM 256 channels, but only unencrypted ones will be viewable. The input used for QAM seems to depend on either the version of the card or version of the kernel.

Some have reported that the HDTV Wonder seems to stutter and glitch slightly more than a side-by-side comparison to a pcHDTV 5500, while others have seen it perform just as well compared to a pcHDTV 3000.

Auto detecting by the kernel starts with 2.6.18.1 and above, before that the latest Video4Linux drivers had to be installed.

Warning: Kernel's 2.6.20 to 2.6.20.3 (tested) are broken. Kernel 2.6.21.x and above are fixed.

openSUSE 10.2

The ATI HDTV card has been successfully implemented by users into their SuSE 10.1 and 10.2 mythTV boxes. With openSUSE 10.2, this card is almost ready to go. There are only a few steps to start receiving HDTV signals. The default kernel with openSUSE 10.2 is already configured correctly and the "Kernel Configuration" section can be skipped.

Ubuntu 7.04 (Feisty Fawn)

After installing Feisty Fawn, this card is almost ready to go. There are only a few steps to start receiving HDTV signals. The default kernel with Ubuntu 7.04 is already configured correctly and the "Kernel Configuration" section can be skipped.

Ubuntu 7.10 (Gusty Gibbon)

The DTV tuner is already preinstalled with this version of Ubuntu. With the default drivers, the DTV tuner can be used with either analog or digital channels.

Ubuntu 8.10 (Intrepid Ibex)

The digital portion of the card will appear to be working by default upon booting (without loading any drivers/firmware), however channel scanning will not work. Though the digital channels will lock you will receive "timeout errors" and "no tables" errors from within mythtv. You must download and install the firmware as stated below under the "Loading the Firmware" section for Ubuntu 7.04. After that you can either reboot or run the following commands:

sudo modprobe -r cx88-dvb   #This will unload the drivers module
sudo modprobe cx88-dvb      #This will reload the drivers module but this time using the new firmware

Kernel Configuration

Kernel >= 2.6.15

Device Drivers -->
  I2C support -->
    <*> I2C support
    <*> I2C device interface
        I2C Algorithms  --->
            <*> I2C bit-banging interfaces 
  Multimedia Devices -->
    <*> Video For Linux -->
        Video For Linux -->
           <M> Conexant 2388x (bt878 successor) support
           <M>  DVB/ATSC Support for cx2388x based TV cards
           [ ]   Build all supported frontends for cx2388x based TV cards
           [*]     NXT2002/NXT2004 ATSC Support
        Digital Video Broadcasting Devices  --->
           [*] DVB For Linux
               Customise DVB Frontends  ---> 
                 <M> Nextwave NXT2002/NXT2004 based


Loading the Software

openSUSE 10.2

On openSUSE 10.2, use YaST to install the "dvb" package

YaST -> Software -> Software Maintenance -> search -> dvb

Select the "dvb" package, and choose "Accept". It should now install.

Ubuntu 7.04

Create the location to download the firmware

mkdir /usr/share/doc/dvb
cd /usr/share/doc/dvb

Go to this site and copy the script and paste it into a file named "get_dvb_firmware": http://www.mjmwired.net/kernel/Documentation/dvb/get_dvb_firmware

NOTE: Be sure to remove the numbers and spaces at the beginning

  • You can do this easily by clicking the "Hide Line Numbers" button on the top of that page Prindle19 18:43, 19 August 2007 (UTC)

Other Flavors

If you are using another flavor, use your package manager and search for and install "dvb".

Once "dvb" has been installed, you are ready to continue loading the firmware and the drivers.

Loading the Firmware

You also need to download the appropriate firmware files for this card. Fortunately, a script is provided with the kernel to automate this process.

Note: As of 06/03/09, the get_dvb_firmware script as provided in the kernel source trees through 2.6.29.4 does not work for nxt2004. To get it to work you must edit the get_dvb_firmware script and change the line that reads "my $url = "http://www.aver.com/support/Drivers/$sourcefile";" to "my $url = "http://www.avermedia-usa.com/support/Drivers/$sourcefile";"

openSUSE 10.2

In openSUSE 10.2, the default "kernel source directory" is /usr/src/linux-2.6.18.2-34. Here are the openSUSE specific commands. First use the "get_dvb_firmware" script to download the firmware:

# cd /usr/src/linux-2.6.18.2-34
# chmod +x Documentation/dvb/get_dvb_firmware
# ./Documentation/dvb/get_dvb_firmware nxt2004

Copy dvb-fe-nxt2004.fw to the firmware directory:

# cp dvb-fe-nxt2004.fw /lib/firmware

Ubuntu 7.04

Add execute permissions to the file and execute it:

# cd /usr/share/doc/dvb
# chmod +x ./get_dvb_firmware
# ./get_dvb_firmware nxt2004

The following files should be downloaded automatically:

AVerTVHD_MCE_A180_Drv_v1.2.2.16.zip
dvb-fe-nxt2004.fwAVerTVHD_MCE_A180_Drv_v1.2.2.16.zip  dvb-fe-nxt2004.fw

Copy the firmware file to the location Ubuntu expects it to be:

# cp ./dvb-fe-nxt2004.fw /lib/firmware

Other Flavors

The following commands need to be run from the kernel source directory.

# chmod +x Documentation/dvb/get_dvb_firmware
# ./Documentation/dvb/get_dvb_firmware nxt2004

Then copy dvb-fe-nxt2004.fw to your firmware directory (varies depending on your hotplug version) using one of the command below:

# cp dvb-fe-nxt2004.fw /usr/lib/hotplug/firmware

Loading the Drivers (all flavors)

To load the drivers, load cx88-dvb with:

# modprobe cx88-dvb

If you are using a kernel 2.6.23 or later[1] or are having trouble changing channels (or, in fact, scanning for them), enable the following:

Kernel Configuration:
   Device Drivers -->
       Multimedia devices -->
           DVB/ATSC adapters -->
               Customize DVB frontends -->
 <M> Generic I2C PLL based tuners

Before you load cx88-dvb or nxt200x you must:

# modprobe dvb-pll

To verify it loaded properly, look for something similar to this near the end of the 'dmesg' output:

# dmesg
cx2388x dvb driver version 0.0.5 loaded
CORE cx88[0]: subsystem: 1002:a101, board: ATI HDTV Wonder [card=34,autodetected       ]
TV tuner 68 at 0x1fe, Radio tuner -1 at 0x1fe
tuner 1-0061: chip found @ 0xc2 (cx88[0])
tuner 1-0061: type set to 68 (Philips TUV1236D ATSC/NTSC dual in)
PCI: Found IRQ 9 for device 0000:02:0b.2
cx88[0]/2: found at 0000:02:0b.2, rev: 5, irq: 9, latency: 32, mmio: 0xe1000000
cx88[0]/2: cx2388x based dvb card
nxt200x: NXT2004 Detected
DVB: registering new adapter (cx88[0]).
DVB: registering frontend 0 (Nextwave NXT200X VSB/QAM frontend)...

Once you have verified the operation of your card, you should add the modules to the list of modules loaded at boot. See your operating system documentation for more details.

Testing the card

The card should be found in /dev/dvb/adapter0. Assuming you have the dvb-tools package installed and a .azap/channels.conf file, you can run azap:

# azap -r KUTV-HD
using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
tuning to 593000000 Hz
video pid 0x0031, audio pid 0x0034
status 00 | signal f603 | snr fbf7 | ber 00000000 | unc 00000000 |
status 1f | signal ef9c | snr fbb5 | ber 00000000 | unc 00000000 | FE_HAS_LOCK

If you are unable to use the "azap", don't lose hope. Continue configuring mythTV and once it is configured correctly, HDTV channels should lock in.

Once the tuner is accessed for the first time (i.e. when you try and watch live TV in the mythfrontend), you can verify the firmware was uploaded properly by searching for this output in dmesg:

# dmesg | grep nxt2004
nxt2004: Waiting for firmware upload (dvb-fe-nxt2004.fw)...
nxt2004: Waiting for firmware upload(2)...
nxt2004: Firmware upload complete

Configuring mythTV

Using mythtvsetup, configure the card as you would any other dvb frontend card.

I specifically bought this card to tune in Terrestrial channels coming over my Cox Cable connection. Here is how I configured it and actually got it to work!

# mythtvsetup

First, setup the capture card:

2. Capture Cards
New Capture Card
  DVB DTV Capture Card (v3.x)
  DVB Card Number:  0
  DiSEqC
    Description:  LNB
    LNB Preset:   Linear (N. America)
    LNB Type:     Standard (Voltage)
    Finish
  Recorder Options
    Wait for SEQ start Header - checked!
    Open DVB card on demand - unchecked
    DVB Tuning Delay: 0
    Finish
Finish

Setup the Video Source. This doesn't get you any TV listings, but it works. Perhaps someone else can update this further.

3. Video Sources
New Video Source
    Video Source Name:        CABLE-HDTV
    XMLTV Listings:           North America (DataDirect)
    Channel Frequency Table:  default
Finish

Setup the Input Connections to match the card with the video source.

4. Input Connections
New Input
Select "DVB : 0"
    Display Name:   ATI-HDTV
    Video Source:   CABLE-HDTV
    DVB Options:
      Free to air channels only - checked!
      Radio Channels - checked!
      Use Dish Long-term EIT Data - unchecked
   Scan for Channels
      Scan Type:                  Full Scan
      Frequencey Table:           Broadcast
      ATSC Modulation:            Terrestrial (8-VSB)
      Channel Separator:          (5_1) Underscore
      Existing Channel Treatment:  Minimal Updates
      Next  <--- The scanning process will take a long time!
      Verify the output, checking for "Locked" channels.
Exit mythtvsetup with the Esc key

You should have received some locked-in channels. If you did, start up your front end and check for Live HDTV! If not, check your settings again and rescan. You may have to change some of them based on who your cable provider is and/or where you live. Again, I was able to use these settings to pick up unencrypted channels from Cox.


Here are other pages that may help with the mythtvsetup HDTV setup process, but one was writen for a previous version of mythTV, the other was written for LinuxTV

http://www.digitalregime.com/mythdvb/setup/

http://www.linuxtv.org/wiki/index.php/ATI/AMD_HDTV_Wonder

VE Varient

There is a second kind of HDTV Wonder which has only the digital input called the "VE Varient." The main physical difference is that it only has one coax connector in the PCI card and no s-video or analog input at all. In order to set it up the only difference is to make sure that mythtv recognizes the card for the DVB driver. After using the information above to get it installed you may have an error which wants you to select the card number when you run dmesg. The card can be permanently selected in your modules.conf file or mine was in /etc/modprobe.d/options for mythbuntu 8.04. I simply did the following

>>sudo nano /etc/modprobe.d/options

added a last line to the existing file which reads

options cx88xx card=34

After adding this line a reboot was necessary to reload the drivers.

In order to add a second card you will need to add one more number so it looks like this

options cx88xx card=34,34

which you should be in place of the code for one card. I have tested this on two cards, but have not tried it on three.

Analog Setup

Setting up the Analog side of the original ATI HDTV Wonder is very simple once the card is recognized and installed. Open "Mythtv Backend Setup"

>> Capture Cards
 >>New Capture Card
  >>Card Type: Analog V4L Capture Card

The probed Info should now read ATI HDTV Wonder [cx8800] This now enables both the analog Antenna signals and the analog composite and s-video inputs.

  1. Composite Setup

Setup a new Video Source

>>Video Sources
 >>New video source
  >>Video Source Name: <you can name it whatever you want.  I called it Composite>
  Listings Gragger:  No Grabber
  Channel Frequency Table:  Default
>>Channel Editor
 >>(New Channel) <look at the very top of you list>

You can choose whatever channel name you want. The important thing is to set the channel number to nothing that is not being used by any other source. Also change the source to "Composite" or whatever you called the new video source you just set up


>>Input Connections
 >>V4L:/dev/video0(composite1)->
  >>Video source: Composite (or whatever you called it)
  >>Starting Channel:  (input the value you used for the composite channel)

The only problem I had at this point was the audio which I simply fed into the audio input of my existing audio card rather than through the audio input of the HDTV Wonder. You can change the audio card if you want to. This also allows for easy adjustment of recording volume simply using your OS's audio controls.

  1. Analog TV Setup

Now you can setup analog TV setup, but I can't think of a good reason to do this. Open the Mythtv Backend Setup

>>Video Sources
 >>New video source
  >>Video Source Name: <you can name it what you want, NTSC is a good choice>
>>Input Connections
 >>V4L:/dev/video0(composite1)->
  >>Video source: NTSC(or whatever you called it)
Now just scan for channels and it should work great.

External Links

Personal tools