Realtek RTL2831U: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
(→‎Pending developments: link to git repo)
 
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The Realtek RTL2831U is a high-performance DVB-T COFDM demodulator + USB 2.0 that integrates a COFDM demodulator, FEC decoder, de-interleavers, and USB 2.0 interface.
== Introduction ==

The RTL2831U is a high-performance DVB-T COFDM demodulator + USB 2.0 that integrates a COFDM demodulator, FEC decoder, de-interleavers, and USB 2.0 interface.


This chip can be found in USB devices that are sold under a numer of names: Compro VideoMate U90, TwinHan/AzureWave AD-TU200 (7047) DVB-T, Freecom, Conceptronic, and Realtek.
This chip can be found in USB devices that are sold under a numer of names: Compro VideoMate U90, TwinHan/AzureWave AD-TU200 (7047) DVB-T, Freecom, Conceptronic, and Realtek.


== Supported devices ==
== Supported RTL2831U devices ==


The following devices are supported (numbers and names do NOT correspond):
The following devices are supported (numbers and names do NOT correspond):
output of grep rtl2831 /lib/modules/2.6.24-16-generic/modules.usbmap | sed -e 's/0x0000.*$//' -e 's/^.*0x0003//'
output of grep rtl2831 /lib/modules/`uname -r`/modules.usbmap | sed -e 's/0x0000.*$//' -e 's/^.*0x0003//'


0x0bda 0x2831
0x0bda 0x2831
Line 22: Line 20:
0x1a46 0x1601
0x1a46 0x1601
0x14aa 0x0160
0x14aa 0x0160
0x14ff 0x0225
0x14ff 0x0225
name = "RTL2831U DVB-T USB2.0 DEVICE"
name = "RTL2831U DVB-T USB2.0 DEVICE"
Line 28: Line 26:
name = "DVB-T TV-Tuner Card-R"
name = "DVB-T TV-Tuner Card-R"
name = "VideoMate TV U100"
name = "VideoMate TV U100"
name = "VideoMate U90"
name = "Vestel DVB-T TV Card"
name = "Vestel DVB-T TV Card"
name = "Freecom USB 2.0 DVB-T Device"
name = "Freecom USB 2.0 DVB-T Device"
Line 36: Line 35:
name = "DTV-DVB UDTT 7047Z-USB 2.0 DVB-T Driver"
name = "DTV-DVB UDTT 7047Z-USB 2.0 DVB-T Driver"


TwinHan/AzureWave AD-TU200 (7047) DVB-T
TwinHan/AzureWave AD-TU200 (7047) DVB-T


For the Compro U80, devices have been found with rtl2831 and a QT1010 tuner chip.
For Conceptronic the versions earlier than V3.0 of CTVDIGRCU used the Realtek RTL2831U.
Later versions use a different encoder. E.g. Conceptronic USB2.0 DVB-T CTVDIGRCU V3.0 has an Afatech AF9015 on board.

See the specific driver for those devices below.


== Get the drivers ==
== Get the drivers ==
Line 68: Line 74:
This function doe some sort of calibration, and there is both internal
This function doe some sort of calibration, and there is both internal
data from the tuner required, and input from the demodulator.
data from the tuner required, and input from the demodulator.

Lately, problems with stability of the
http://linuxtv.org/hg/~jhoogenraad/rtl2831-r2
code have been reported on Ubuntu Karmic (2.6.31-14-generic).

A new branch for the RTL2831 is set up for inclusion into the kernel. The code base is started from scratch.
This branch is at http://linuxtv.org/hg/~anttip/rtl2831u/.

Update: (2011-July) A revised version is now at http://git.linuxtv.org/anttip/media_tree.git?a=shortlog;h=refs/heads/realtek .

A first driver for devices with a QT1010 tuner can be found at:
http://linuxtv.org/hg/~anttip/qt1010/


However, NO IR code is included at this stage. It has been tested on a couple of systems, and few test results are available.


== Product links ==
== Product links ==
Line 74: Line 95:


* http://www.conceptronic.net/site/desktopdefault.aspx?tabindex=1&tabid=242&cid=40&gid=4050&pid=CTVDIGRCU
* http://www.conceptronic.net/site/desktopdefault.aspx?tabindex=1&tabid=242&cid=40&gid=4050&pid=CTVDIGRCU

* http://www.comprousa.com/en/product/u90/u90.html

* http://www.comprousa.com/en/product/u100/u100.html

Latest revision as of 09:46, 16 July 2011

The Realtek RTL2831U is a high-performance DVB-T COFDM demodulator + USB 2.0 that integrates a COFDM demodulator, FEC decoder, de-interleavers, and USB 2.0 interface.

This chip can be found in USB devices that are sold under a numer of names: Compro VideoMate U90, TwinHan/AzureWave AD-TU200 (7047) DVB-T, Freecom, Conceptronic, and Realtek.

Supported RTL2831U devices

The following devices are supported (numbers and names do NOT correspond): output of grep rtl2831 /lib/modules/`uname -r`/modules.usbmap | sed -e 's/0x0000.*$//' -e 's/^.*0x0003//'

     0x0bda   0x2831    
     0x2304   0x022b    
     0x13d3   0x3216    
     0x13d3   0x3220    
     0x13d3   0x3236    
     0x13d3   0x3238    
     0x13d3   0x3244    
     0x08dd   0x2103    
     0x185b   0x0100    
     0x185b   0x0150    
     0x1a46   0x1601    
     0x14aa   0x0160    
     0x14ff   0x0225   

name = "RTL2831U DVB-T USB2.0 DEVICE"
name = "RTL2831U DVB-T USB2.0 DEVICE"
name = "DVB-T TV-Tuner Card-R"
name = "VideoMate TV U100"
name = "VideoMate U90"
name = "Vestel DVB-T TV Card"
name = "Freecom USB 2.0 DVB-T Device"
name = "DTV-DVB UDTT 7047-USB 2.0 DVB-T Driver"
name = "DTV-DVB UDTT 7047M-USB 2.0 DVB-T Driver"
name = "DTV-DVB UDTT 7047A-USB 2.0 DVB-T Driver"
name = "DTV-DVB UDTT 704L-USB 2.0 DVB-T Driver"
name = "DTV-DVB UDTT 7047Z-USB 2.0 DVB-T Driver"

TwinHan/AzureWave AD-TU200 (7047) DVB-T


For the Compro U80, devices have been found with rtl2831 and a QT1010 tuner chip. For Conceptronic the versions earlier than V3.0 of CTVDIGRCU used the Realtek RTL2831U. Later versions use a different encoder. E.g. Conceptronic USB2.0 DVB-T CTVDIGRCU V3.0 has an Afatech AF9015 on board.

See the specific driver for those devices below.

Get the drivers

To download and build the driver, issue

hg clone http://linuxtv.org/hg/~jhoogenraad/rtl2831-r2
make
make install

This code was recently synchronised with the main v4l line.

Infrared configuration

A switch for the IR type is included. It can be selected using modprobe. For example if you need type 2: unload the automatically loaded driver, and reload the good codes.

sudo modprobe -r dvb_usb_rtl2831u
sudo modprobe  dvb_usb_rtl2831u ir_protocol=2

Pending developments

The code cannot be included in the mainline, as the front-end and abck-end are not split (as is required)

I have started a second archive for splitting off the tuner code. For the mxl5005s tuner, this should be straightforward, as the code found its way into the mainstream v4l already.

However, I ran into problems with the mt2060 (which is the tuner I own). In the function MT2060_LocateIF1 is making this hard. This function doe some sort of calibration, and there is both internal data from the tuner required, and input from the demodulator.

Lately, problems with stability of the http://linuxtv.org/hg/~jhoogenraad/rtl2831-r2 code have been reported on Ubuntu Karmic (2.6.31-14-generic).

A new branch for the RTL2831 is set up for inclusion into the kernel. The code base is started from scratch. This branch is at http://linuxtv.org/hg/~anttip/rtl2831u/.

Update: (2011-July) A revised version is now at http://git.linuxtv.org/anttip/media_tree.git?a=shortlog;h=refs/heads/realtek .

A first driver for devices with a QT1010 tuner can be found at: http://linuxtv.org/hg/~anttip/qt1010/


However, NO IR code is included at this stage. It has been tested on a couple of systems, and few test results are available.

Product links