Em28xx devices
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 the latest em28xx driver?
See the How to Obtain, Build and Install V4L-DVB Device Drivers article
Boards
How to identify my USB vendor/product id?
shell> lsusb
If you can't recognize the vendor/product id from your device contact linux-media mail-list
Validated boards
What's it?
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
What's it?
Not validate means: that your device was added to kernel but the developer(es) doesn't have the hardware for tests. If you would like to help and inform that you hardware work (or not) please see section How to validate my vendor/product id at upstream kernel
Table of NOT validated boards
Define | Name | Vendor/Product ID | Status |
---|---|---|---|
How to validate my vendor/product id at upstream kernel?
- Send your board name, lsusb output and tests made to linux-media mail-list
- Example:
From: foobar To: linux-media@... Subject: em28xx: new board id [0b1a:2821]
Hi,
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]
Tested-by: foobar <foobar@foobar.com>
~foobar
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.
Usbsnoop
If you were asked to sniff your device, use these instructions
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
- ADS Tech Instant TV (USBAV-704)
- Gadmei utv 310
- Pinnacle_PCTV_USB2
- USBGear USB2.0 Video Adapter With Audio (VD204)
- V-Gear PocketTV
em2860
EM2860 supports Video decoder Audio decoder and VBI
em2860 based devices
em2863 based devices
em2870/2871/2872/2873
- supports DVB/ATSC (but with no analog support). This is targeted at digital only devices.
EM2870 devices include:
em2874
- 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).
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
- 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.
Known devices:
SpeedLink VAD Laplace webcam (em2765 + OV2640)
em25xx
- 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 linux-media@vger.kernel.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 linux-media@vger.kernel.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 [ 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
Feature Support
- 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, is now developing only closed source binary drivers.
External Links
Additional Help
Contact developers at linux-media mail-list