Pinnacle PCTV 200e: Difference between revisions

From LinuxTVWiki
Jump to navigation Jump to search
m (Added Microtune MT2060 link)
 
(28 intermediate revisions by 5 users not shown)
Line 1: Line 1:
A [[DVB-T]] [[DVB-T USB Devices|USB 2.0 device]] from [[Pinnacle]].
The Pinnacle PCTV 200e is a DVB-T highspeed USB 2.0 adapter with an active antenna. It was first presented on the CeBIT 2005, and still available for about EUR 40,-.


It is currently not supported in the LinuxTV tree, however, drivers do exist (see below).
Under Windows it can be used with alternative DVB software thanks to existing BDA drivers, while under GNU\Linux support is still missing, although both the frontend MT352 and the tuner MT2060 are already supported by LinuxTV.


==Overview/Features==
The PCTV 200e is identical to the PCTV 260e, the PCTV 60e and the "PCTV DVB-T Pro USB".
The PCTV 200e was first presented at CeBIT 2005, and is still available for about EUR 40. It is identical to some other Pinnacle models; the PCTV 260e, the PCTV 60e and the "PCTV DVB-T Pro USB". It comes with a detachable active antenna.


===Components Used===
* [[Microtune MT2060]] tuner (i2c addr: 0xC0)
* [[Zarlink MT352]] [[demodulator]] (i2c addr: 0x3e)
* Cypress CY7C68013A (FX2LP) USB bridge


===Identification===
== Current Status ==
The output of ''lsusb -v'' provides that that it has a subsystem ID of: 2304:020e
As of June 2007 the driver is currently being written/debugged. Everyone who wants to help, can do so. Just contact the [http://www.linuxtv.org/lists.php LinuxTV mailing list], or contact the developer on the LinuxTV IRC (his nick: freez).


==Making it Work ==


===Current Tasks===
===Firmware===
None required.
* find out why the device is not giving the expected answers (maybe torture will help?)
* kill a "NULL pointer dereference" -- (currently using a workaround)


===Drivers===
Juan Garcia (juanantonio_garcia_01@yahoo.es):
Currently there is no in kernel drivers for this device.


However, experimental support does exist. The following drivers are needed for these devices:
I would like to contact someone developing also the driver to share information, and to give a kick to the driver forward. I am heavily torturing the device...
- dvb-usb.ko
- pctv200e.ko


Drivers aren't in the official tree yet. So you will have to add them manually. Files and instructions are included in the following file:
* I have submitted a patch to the linux-dvd distribution list I think solving the "NULL pointer dereference"
* [http://www.student.tugraz.at/jsteidl/stuff/pctv200e-20080525.tar.bz2 updated files]


====Current Status====
* I am getting initial answers from the device. I am able to attach the mt352 (demod).
The drivers work, but the code itself needs some cleanup and further testing before it can be backported into the offical developement tree. Everyone who wants to help can do so. Just contact the [http://www.linuxtv.org/lists.php LinuxTV mailing list], or contact the developer [http://members.liwest.at/freez/contact/ directly].
It seems that the first byte to send on the USB for reading is "0x02".
For example with these sequence:
0x10 0x00
0x15 0x00
0x16 0x01
0x02 0x3e 0x01 0x01 0x7f


Since the developers of this driver have virtually no time (and aren't using this adapter anymore), no further development is being planned for now. So if you want the driver to be integrated into the official v4l-dvb tree, you are welcome to do it yourself.
I can read the mt352 CHIP_ID and register the mt352.
The:
0x10 0x00
0x15 0x00
0x16 0x01


====Development ToDo List====
Seems to be needed, otherwise I don't get the right answer if I don't send those first.
* handle debug output
* integrate into official v4l tree
* do intensive testing
* support the remote control


===Sample kernel output===
The answer is:
dvb-usb: found a 'Pinnacle PCTV 200e DVB-T' in warm state.
0x02 0x00 0x13
pctv200e: pctv200e_i2c_func: entering, done nothing
i2c-adapter i2c-6: SMBus Quick command not supported, can't probe for chips
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (Pinnacle PCTV 200e DVB-T)
pctv200e: attaching and initializing mt352frontend attached.
pctv200e: PCTV200e initialized mt352
pctv200e: frontend attached.
DVB: registering frontend 2 (Zarlink MT352 DVB-T)...
Juan 02: entered mt2060_attach, going for kzalloc.
Juan 07: mt2060_attach, going for mt2060_readreg.
mt2060 calling I2C transfer
Juan 08: mt2060_attach, PART_REV = 99.
MT2060: successfully identified (IF1 = 1220)
Juan 02: just before fe->tuner_priv = priv.
Juan 02: mt2060_attach, going for calibrate.
Juan 09: mt2060_calibrate: just entered.
Juan 09: mt2060_calibrate: written 1st reg.
Juan 09: mt2060_calibrate: written 2nd reg.
Juan 09: mt2060_calibrate: clock output initialized.
mt2060 calling I2C transfer
saa7146_i2c_writeout: timed out waiting for end of xfer
mt2060 calling I2C transfer
MT2060: calibration was successful: 137
Juan 02: mt2060_attach, calibrate done.
pctv200e: tuner mt2060 attached.
dvb-usb: Pinnacle PCTV 200e DVB-T successfully initialized and connected.
pctv200e: usb_device_init sucessfull.
usbcore: registered new interface driver dvb_usb_pctv200e
pctv200e: usb_register successfull.


So the 3rd byte is the value of the register, 0x13 is the right CHIP_ID.


===Source Code===
===Remote Controll Support===
IR sensor included on the adapter, but not supported by the driver.
The source code is available at mrec's site:


== External Links ==
[http://mcentral.de/hg/~mrec/v4l-dvb-pinnacle200e http://mcentral.de/hg/~mrec/v4l-dvb-pinnacle200e]
* [http://www.pinnaclesys.com/PublicSite/uk/Products/Consumer+Products/PCTV+Tuners/PCTV+Digital+PVR+%28DVB-S_DVB-T%29/PCTV+200e.htm Pinnacle product page]

[[Category:DVB-T USB Devices]]
===Stuff that might be useful===
* [http://freeznet.ath.cx:81/files/usbsnoop_pctv200e.log.bz2 usbsnoop_pctv200e.log.bz2] (compressed ~94MB)
* [http://freeznet.ath.cx:81/files/lsusb.log lsusb.log]

== Further Information ==
* [[DVB_USB#Pinnacle PCTV 200e USB - DVB-T PCTV 200e | PCTV 200e on the DVB_USB page]]
* [http://www.pinnaclesys.com/PublicSite/uk/Products/Consumer+Products/PCTV+Tuners/PCTV+Digital+PVR+%28DVB-S_DVB-T%29/PCTV+200e.htm Product Page]

[[Category:DVB-T]]
[[Category:Hardware]]

Latest revision as of 01:41, 24 May 2009

A DVB-T USB 2.0 device from Pinnacle.

It is currently not supported in the LinuxTV tree, however, drivers do exist (see below).

Overview/Features

The PCTV 200e was first presented at CeBIT 2005, and is still available for about EUR 40. It is identical to some other Pinnacle models; the PCTV 260e, the PCTV 60e and the "PCTV DVB-T Pro USB". It comes with a detachable active antenna.

Components Used

Identification

The output of lsusb -v provides that that it has a subsystem ID of: 2304:020e

Making it Work

Firmware

None required.

Drivers

Currently there is no in kernel drivers for this device.

However, experimental support does exist. The following drivers are needed for these devices:

 - dvb-usb.ko
 - pctv200e.ko

Drivers aren't in the official tree yet. So you will have to add them manually. Files and instructions are included in the following file:

Current Status

The drivers work, but the code itself needs some cleanup and further testing before it can be backported into the offical developement tree. Everyone who wants to help can do so. Just contact the LinuxTV mailing list, or contact the developer directly.

Since the developers of this driver have virtually no time (and aren't using this adapter anymore), no further development is being planned for now. So if you want the driver to be integrated into the official v4l-dvb tree, you are welcome to do it yourself.

Development ToDo List

  • handle debug output
  • integrate into official v4l tree
  • do intensive testing
  • support the remote control

Sample kernel output

dvb-usb: found a 'Pinnacle PCTV 200e DVB-T' in warm state.
pctv200e: pctv200e_i2c_func: entering, done nothing
i2c-adapter i2c-6: SMBus Quick command not supported, can't probe for chips
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (Pinnacle PCTV 200e DVB-T)
pctv200e:  attaching and initializing mt352frontend attached.
pctv200e: PCTV200e initialized mt352
pctv200e:  frontend attached.
DVB: registering frontend 2 (Zarlink MT352 DVB-T)...
Juan 02: entered mt2060_attach, going for kzalloc.
Juan 07: mt2060_attach, going for mt2060_readreg.
mt2060 calling I2C transfer
Juan 08: mt2060_attach, PART_REV = 99.
MT2060: successfully identified (IF1 = 1220)
Juan 02: just before fe->tuner_priv = priv.
Juan 02: mt2060_attach, going for calibrate.
Juan 09: mt2060_calibrate: just entered.
Juan 09: mt2060_calibrate: written 1st reg.
Juan 09: mt2060_calibrate: written 2nd reg.
Juan 09: mt2060_calibrate: clock output initialized.
mt2060 calling I2C transfer
saa7146_i2c_writeout: timed out waiting for end of xfer
mt2060 calling I2C transfer
MT2060: calibration was successful: 137
Juan 02: mt2060_attach, calibrate done.
pctv200e: tuner mt2060 attached.
dvb-usb: Pinnacle PCTV 200e DVB-T successfully initialized and connected.
pctv200e: usb_device_init sucessfull.
usbcore: registered new interface driver dvb_usb_pctv200e
pctv200e: usb_register successfull. 


Remote Controll Support

IR sensor included on the adapter, but not supported by the driver.

External Links