Em28xx devices

From LinuxTVWiki
Jump to navigation Jump to search

This article discusses some USB interface chipset families produced by EMPIA, and, in addition, addresses the driver that support these chips.

How to compile latest em28xx driver?

Firmware

Information

How to obtain it?

Error: firmware xc3028-v27.fw not found

 firmware: requesting xc3028-v27.fw
 xc2028 1-0061: Error: firmware xc3028-v27.fw not found.

Supported (validated) boards

Define Name Vendor/Product ID Supported modes
EM2820_BOARD_KWORLD_PVRTV2800RF
Kworld PVR TV 2800 RF
-
Analog


Not validated boards

What's it?

Analog: Boards not validated

Define Name Vendor/Product ID Status
EM2750_BOARD_DLCW_130
Huaqi DLCW-130
-
Not validated (change it)
EM2820_BOARD_DLINK_USB_TV
D-Link DUB-T210 TV Tuner
0x2001:0xf112
Not validated (change it)
EM2820_BOARD_HERCULES_SMART_TV_USB2
Hercules Smart TV USB 2.0
-
Not validated (change it)
EM2820_BOARD_PINNACLE_USB_2_FM1216ME
Pinnacle PCTV USB 2 (Philips FM1216ME)
-
Not validated (change it)
EM2820_BOARD_GADMEI_UTV310
Gadmei UTV310
-
Not validated (change it)
EM2820_BOARD_LEADTEK_WINFAST_USBII_DELUXE
Leadtek Winfast USB II Deluxe
-
Not validated (change it)
EM2820_BOARD_PINNACLE_DVC_100
Pinnacle Dazzle DVC 100
-
Not validated (change it)
EM2820_BOARD_VIDEOLOGY_20K14XUSB
Videology 20K14XUSB USB2.0
-
Not validated (change it)
EM2821_BOARD_PROLINK_PLAYTV_USB2
SIIG AVTuner-PVR/Prolink PlayTV USB 2.0
-
Not validated (change it)
EM2821_BOARD_SUPERCOMP_USB_2
Supercomp USB 2.0 TV
-
Not validated (change it)
EM2821_BOARD_USBGEAR_VD204
Usbgear VD204v9
-
Not validated (change it)
EM2860_BOARD_NETGMBH_CAM
NetGMBH Cam
-
Not validated (change it)
EM2860_BOARD_TYPHOON_DVD_MAKER
Typhoon DVD Maker
-
Not validated (change it)
EM2860_BOARD_GADMEI_UTV330
Gadmei UTV330
-
Not validated (change it)
EM2860_BOARD_TERRATEC_HYBRID_XS
Terratec Cinergy A Hybrid XS
0x0ccd, 0x004f
Not validated (change it)
EM2861_BOARD_KWORLD_PVRTV_300U
KWorld PVRTV 300U
0xeb1a, 0xe300
Not validated (change it)
EM2861_BOARD_YAKUMO_MOVIE_MIXER
Yakumo MovieMixer
-
Not validated (change it)
EM2861_BOARD_PLEXTOR_PX_TV100U
Plextor ConvertX PX-TV100U
0x093b:0xa005
Not validated (change it)
EM2870_BOARD_TERRATEC_XS
Terratec Cinergy T XS
0x0ccd:0x0043
Not validated (change it)
EM2870_BOARD_TERRATEC_XS_MT2060
Terratec Cinergy T XS (MT2060)
-
Not validated (change it)
EM2870_BOARD_KWORLD_350U
Kworld 350 U DVB-T
0xeb1a:0xe350
Not validated (change it)
EM2870_BOARD_KWORLD_355U
Kworld 355 U DVB-T
0xeb1a:0xe355
Not validated (change it)
EM2870_BOARD_PINNACLE_PCTV_DVB
Pinnacle PCTV DVB-T
-
Not validated (change it)
EM2870_BOARD_COMPRO_VIDEOMATE
Compro, VideoMate U3
0x185b:0x2870
Not validated (change it)
EM2880_BOARD_TERRATEC_HYBRID_XS_FR
Terratec Hybrid XS Secam
0x0ccd:0x004c
Not validated (change it)
EM2880_BOARD_MSI_DIGIVOX_AD
MSI DigiVox A/D
0xeb1a:0xe310c
Not validated (change it)
EM2880_BOARD_MSI_DIGIVOX_AD_II
MSI DigiVox A/D II
0xeb1a:0xe320
Not validated (change it)
EM2880_BOARD_KWORLD_DVB_305U
KWorld DVB-T 305U
0xeb1a:0xe305
Not validated (change it)
EM2880_BOARD_KWORLD_DVB_310U
KWorld DVB-T 310U
-
Not validated (change it)
EM2881_BOARD_DNT_DA2_HYBRID
DNT DA2 Hybrid
-
Not validated (change it)
EM2881_BOARD_PINNACLE_HYBRID_PRO
Pinnacle Hybrid Pro
-
Not validated (change it)
EM2882_BOARD_PINNACLE_HYBRID_PRO
Pinnacle Hybrid Pro (2)
0x2304:0x0226
Not validated (change it)
EM2882_BOARD_KWORLD_VS_DVBT
Kworld VS-DVB-T 323UR
0xeb1a:0xe323
Not validated (change it)
EM2882_BOARD_TERRATEC_HYBRID_XS
Terratec Hybrid XS (em2882)
0x0ccd:0x005e
Not validated (change it)
EM2883_BOARD_KWORLD_HYBRID_A316
Kworld PlusTV HD Hybrid 330
0xeb1a:0xa316
Not validated (change it)

How to identify my USB vendor/product id?

 shell> lsusb
 Bus 001 Device 004: ID eb1a:2821 eMPIA Technology, Inc. 
 Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
 Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
 Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Device are identified by two hexadecimal:
* The 4 first hexadecimal digits are the Vendor ID (0b1a = eMPIA). * The 4 last hexadecimal digits are the Device ID (2821 = Pixelview Prolink PlayTV USB 2.0) For Pixelview Prolink PlayTV USB 2.0 the numbers are: 0b1a:2821

How to validate?

  • Do tests with all supported features by your card (Analog, dvb, radio, etc.)


How to add my NOT supported vendor/product id at upstream kernel?

  • Example:
 From: foobar
 To: video4linux-list
 Subject: em28xx: new board id [0b1a:2821]
I've made tests with my Pixelview board:
Model: Prolink PlayTV USB 2.0 Vendor/Product id: [0b1a:2821].
Tests made:
- Analog [Worked] - DVB [this board doesn't support dvb mode]
~foobar
Otherwise, if you had any issue, please contact video4linux mail-list.

Some features doesn't work (i.e: audio, dvb, s-video)

About em28xx models

em2800/em2820/em2821/em2840

  • used on older analog only device designs. These chips have support for USB Audio Class; so, audio module is snd-usb-audio

em2820/em2840 based devices

em2880/2881/2883

  • supports DVB/ATSC. Doesn't provide USB Audio Class. Instead, digital audio is provided via an USB Vendor Class; so, these chips require the em28xx-alsa module for digital audio to work.

em2880 based devices

em2750

Some Misc stuff

The following needs to be cleaned up and/or integrated into the article:

Feature Support

  • in-kernel em28xx driver: radio and analog TV (including broadcast audio) are working fine. Support for DVB/ATSC is not present yet.
  • no firmware is required for em28xx ICs ... note: though em28xx based devices paired with some tuners will need firmware for the tuner (i.e. there are em28xx based devices paired with a XCeive XC3028 or XC2028 tuner, which require a generic firmware from Xceive).

About Driver

  • Development -- originally by 4 Ludovico Cavedon, Markus Rechberger, Mauro Carvalho Chehab, Sascha Sommer.
  • One of the authors, Markus Rechberger, forked the upstream project.

External Links

Additional Help

Contact video4linux developers at vide4linux-maillist