Xceive XC5000/XC4000
This article discusses a family of silicon ICs, produced by Xceive, that combine RF tuner and analog IF demodulator functions within one chip. In addition, this page addresses the drivers that support these chips, as well as their firmware requirements.
IC Family Members
XC5000
The XC5000 has robust support for both analog and digital signals; it supports the analog TV broadcast standards (NTSC, PAL, & SECAM), CVBS, SIF and most digital TV standards (ATSC, DVB-C, DVB-T, DMB-T, & ISDB-T).
XC5000, intended for high-end TV applications that need noise performance exceeding that of can tuners. DSP blocks allow additional baseband programming functions for adding channel optimization features in the future.
Features a noise figure of 5dB. The XC5000 has an SNR greater than 53dB and a noise figure of -95dBc/Hz at 10kHz
XC4000
XC4000 family for midrange "value TV" markets, leaving out the QAM256 functions for handling ATSC/NTSC signals.
Features a noise figure of 5dB. The XC4000 has a 50dB SNR and noise figure of -85.
Source: http://www.eetasia.com/ART_8800467625_499488_NP_660bf24d.HTM
The XC4000 is not currently supported under Linux, although a project started in June of 2009 to add such support. See http://www.kernellabs.com/blog/ for more details.
XC5000 Drivers
There are two drivers versions:
- An in kernel driver - kernels 2.6.24+ will have built in support for the XC5000
- An out-of-tree 3rd party driver - from mrec.
Feature Support
Firmware Information
The information in this section is directed only towards support for the in-kernel driver. For 3rd party driver requirements and/or information, please consult those sources directly.
How to Obtain the Firmware
There are two versions of firmware that you might need, depending on what version of the xc5000 driver you currently have installed.
If the dmesg says you need dvb-fe-xc5000-1.1.fw:
A script to extract the xc5000 firmware from a specific windows driver is available:
1) Download the compressed Windows driver file & the XC5000 firmware extraction script, "extract.sh", from http://www.steventoth.net/linux/xc5000. You can do this from the commandline by simply running:
wget http://www.steventoth.net/linux/xc5000/HVR-12x0-14x0-17x0_1_25_25271_WHQL.zip http://www.steventoth.net/linux/xc5000/extract.sh
2) Run the perl extraction script
sh ./extract.sh
- From the output you will observe that the script first recovers the Windows driver file "hcw85bda.sys" from the zip archive, and then extracts the firmware contained within it into the current directory.
3) As per the instructions found at the end of the script's output, manually copy the generated firmware file to your firmware directory
cp dvb-fe-xc5000-1.1.fw /lib/firmware
If the dmesg says you need dvb-fe-xc5000-1.6.114.fw (Linux 2.6.31 and current v4l-dvb trunk):
Xceive has granted permission to redistribute the latest version of their firmware (which includes various fixes and performance improvements).
1) Download the firmware from http://www.kernellabs.com/firmware/xc5000/dvb-fe-xc5000-1.6.114.fw
wget http://www.kernellabs.com/firmware/xc5000/dvb-fe-xc5000-1.6.114.fw
2) Copy the firmware to your firmware directory
cp dvb-fe-xc5000-1.6.114.fw /lib/firmware
Licensing information is available here: http://www.kernellabs.com/firmware/xc5000/README.xc5000