How to compile the latest em28xx driver?
See the How to Obtain, Build and Install V4L-DVB Device Drivers article
How to identify my USB vendor/product id?
If you can't recognize the vendor/product id from your device contact linux-media mail-list
We use this term to advise that boards were tested by user or developer.
Table of validated boards
|Define||Name||Vendor/Product ID||Supported modes|
Not Validated boards
Not validated means: that your device was added to kernel but no developer has the hardware to test. If you would like to help and inform that your hardware works (or not) please see the section How to validate my vendor/product id at upstream kernel
Table of NOT validated boards
How to validate my vendor/product id at upstream kernel?
- Send your board name, lsusb output and tests made to linux-media mail-list
From: foobar To: linux-media@... 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].
- Analog [Worked] - DVB [this board doesn't support dvb mode]
Tested-by: foobar <email@example.com>
Otherwise, if you had any issue, please contact linux-media mail-list.
If some features doesn't work (i.e: audio, dvb, s-video)
Should I call whom?
Please contact linux-media mail-list.
If you were asked to sniff your device, use these instructions
About em28xx models
- 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
- ADS Tech Instant TV (USBAV-704)
- Gadmei utv 310
- Plextor ConvertX PX-AV100U
- USBGear USB2.0 Video Adapter With Audio (VD204)
- V-Gear PocketTV
EM2860 supports Video decoder Audio decoder and VBI
em2860 based devices
- Gadmei USB TVBox UTV380
- Honestech Vidbox NW03
- Ion Video 2 PC
- Kaiser Baas USB DVD Maker 2 (KBA0300300)
- TerraTec Grabby
- MyGica iGrabber
em2863 based devices
- supports DVB/ATSC (but with no analog support). This is targeted at digital only devices.
EM2870 devices include:
- next generation version of the em2870 design - they moved around a bunch of registers compared to em2870/2880 and the chip itself supports two transport streams (although most designs will probably only use one stream).
- KWorld UB435-Q USB ATSC TV Stick
- 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
- EVGA inDtube
- KWorld 350U DVB-T
- KWorld DVB-T 355U
- KWorld 310U
- KWorld USB2800
- Pinnacle PCTV unidentified DVB-T USB device
- Videology 20K14XUSB webcam
em2710/em2750 based devices
- used by on some Webcam Devices.
em276x/em277x/em278x based devices
- latest bridge generation for camera devices
- optional UVC (USB video class) support
- supports MPEG video format
- supports several advanced camera functionalities, such as autofocus, image statistics etc.
SpeedLink VAD Laplace webcam (em2765 + OV2640)
- seems to be the Chinese market versions of the em276x/7x/8x bridges
Some Misc stuff
The following needs to be cleaned up and/or integrated into the article:
Sample Kernel Output for Pinnacle PCTV nanoStick T2 on kernel 3.6r2 with latest drivers
[ 6.784732] media: Linux media interface: v0.10 [ 6.786876] Linux video capture interface: v2.00 ... You may see the following section IF you are using the latest drivers: [ 6.786879] WARNING: You are using an experimental version of the media stack. As the driver is backported to an older kernel, it doesn't offer enough quality for its usage in production. Use it with care. Latest git patches (needed if you report a bug to firstname.lastname@example.org): 8f7e91a31fb95c50880c76505b416630c0326d93 [media] smiapp-pll: Constify limits argument to smiapp_pll_calculate() 6ec84a28f5f40e3ebef5d8186c4b11b10aa295d7 [media] smiapp-pll: Create a structure for OP and VT limits f5984bbdf402b586581bc292a5449f17ce4b8209 [media] smiapp-pll: Parallel bus support [ 6.793364] em28xx: New device PCTV Systems PCTV 290e @ 480 Mbps (2013:024f, interface 0, class 0) [ 6.793366] em28xx: DVB interface 0 found [ 6.793479] em28xx #0: chip ID is em28174 ... [ 7.087134] em28xx #0: Identified as PCTV nanoStick T2 290e (card=78) [ 7.087137] em28xx #0: v4l2 driver version 0.1.3 [ 7.092015] em28xx #0: V4L2 video device registered as video0 [ 7.092408] usbcore: registered new interface driver em28xx [ 7.192689] cx88/2: cx2388x MPEG-TS Driver Manager version 0.0.9 loaded ... [ 7.219209] WARNING: You are using an experimental version of the media stack. As the driver is backported to an older kernel, it doesn't offer enough quality for its usage in production. Use it with care. Latest git patches (needed if you report a bug to email@example.com): 8f7e91a31fb95c50880c76505b416630c0326d93 [media] smiapp-pll: Constify limits argument to smiapp_pll_calculate() 6ec84a28f5f40e3ebef5d8186c4b11b10aa295d7 [media] smiapp-pll: Create a structure for OP and VT limits f5984bbdf402b586581bc292a5449f17ce4b8209 [media] smiapp-pll: Parallel bus support [ 7.281849] tda18271 3-0060: creating new instance [ 7.286351] TDA18271HD/C2 detected @ 3-0060 [ 7.415159] IR Sony protocol handler initialized [ 7.454729] DVB: registering new adapter (em28xx #0) [ 7.454737] usb 1-7: DVB: registering adapter 1 frontend 0 (Sony CXD2820R)... [ 7.455024] em28xx #0: Successfully loaded em28xx-dvb [ 7.455027] Em28xx: Initialized (Em28xx dvb Extension) extension ... [ 7.514020] Registered IR keymap rc-pinnacle-pctv-hd [ 7.514192] input: em28xx IR (em28xx #0) as /devices/pci0000:00/0000:00:04.1/usb1/1-7/rc/rc1/input8 [ 7.514312] rc1: em28xx IR (em28xx #0) as /devices/pci0000:00/0000:00:04.1/usb1/1-7/rc/rc1 [ 7.517100] Em28xx: Initialized (Em28xx Input Extension) extension [ 7.529406] lirc_dev: IR Remote Control driver registered, major 241
- 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).
- Development -- originally by four: Ludovico Cavedon, Markus Rechberger, Mauro Carvalho Chehab, Sascha Sommer.
- One of the authors, Markus Rechberger, is now developing only closed source binary drivers.
Contact developers at linux-media mail-list