Skip to content


Call for testers: PCTV 74e Support

I finally got a chance to do some testing with the PCTV 74e, using the GPL reference driver that Abilis provided. I’m happy to report that at least our initial testing shows that it works out of the box!

Testers are welcome to try the following hg tree:

http://kernellabs.com/hg/~dheitmueller/v4l-dvb-as102

To build:

hg clone http://kernellabs.com/hg/~dheitmueller/v4l-dvb-as102
cd v4l-dvb-as102
make
make install
reboot

Note, under Ubuntu if you receive errors about not being able to compile the firedtv driver, open “v4l/.config” and change the firedtv=m to be firedtv=n.

You will need to get the firmware from the following location and copy it to /lib/firmware

http://kernellabs.com/firmware/as102/

The code will still need some codingstyle fixes in order to be accepted upstream, but it appears from a functional perspective to work properly as-is.

Thanks go out to Rainer Miethling from PCTV Systems for working to get the driver released under the GPL and Pierrick Hascoet from Abilis for authoring the driver.

Feedback welcome (both positive or negative) by commenting below.

Posted in 74e, as102, pctv systems.


42 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. H. says

    Yes! Success!

    Thank you very much to Devin, Mr Miethling, and Mr Hascoet for making Linux support of the PCTV 74e a reality! I’m glad that I did not return the stick when I noticed my mistake that Linux support was not yet available but waited for it to finally arrive (which did not take long).

    My system: Kubuntu “Kaotic” Koala 9.10 with kernel 2.6.31-20. Driver works flawlessly out of the box. I use Kaffeine for watching DVB-T.

    Just a minor glitch: when I remove the stick and reattach it, then the first removal is noticed but reattaching it is not noticed any more. Trying to rmmod the dvb_as102 causes rmmod to hang.

    • Devin Heitmueller says

      Hello Harald,

      Thanks for the feedback. Could you tell me what scan file you used? I have only so far tested it with 8MHz, so it would be good to know what you tested with as it will give me some idea as to whether the other bandwidths are working properly.

      Regarding the disconnect issue, I will see if I can reproduce that here, and if so I will fix it.

      Devin

  2. H. says

    I’ve just run an automatic scan in Kaffeine. The channel data gathered only listed 8MHz channels.

    BTW — I’ve copied over the modules to an EeePC Netbook 901Go which now quite nicely works as a small TV set. :)

  3. Jörg Unglaub says

    Hello Devin

    I testet the driver with another as-102 device. It is the Elgato EyeTV DTT delyxe.
    It did not work out of the box but after adding the USB vendor ID and product ID to the Sources it worked like a charm.

    dvb-usb-as102.h:
    /* EyeTV DTT deluxe */
    #define EYETV_DTT_NAME “EyeTV DTT deluxe”
    #define EYETV_DTT_VID 0x0fd9
    #define EYETV_DTT_PID 0x002c

    dvb-usb-as102.c:
    static struct usb_device_id as102_usb_id_table[] = {
    { USB_DEVICE(AS102_USB_DEVICE_VENDOR_ID, AS102_USB_DEVICE_PID_0001) },
    { USB_DEVICE(PCTV_74E_USB_VID, PCTV_74E_USB_PID) },
    { USB_DEVICE(EYETV_DTT_VID, EYETV_DTT_PID) },
    { } /* Terminating entry */
    };

    Please add the device to the driver.

    • Devin Heitmueller says

      Hi Joerg,

      I figured it wouldn’t be long before someone pointed this out. Yeah, I’ll put this onto my todo list.

      Devin

  4. meta96 says

    … thanx to everyone who was/is involved (also joerg for the code my overpriced but goodlooking eyetv device) … hopefully we will see the drivers in ubuntu 10.04

  5. Bob H says

    Hi Devin,

    Worked great, out of the box (once I remembered yet again to disable the firefw module!)

    I have restarted MythTV several times and it seems happy still. I will try it in production from today.

    Bob

    • Devin Heitmueller says

      Hi Bob,

      Great to hear you had some success. I specifically mentioned the firedtv issue in the announcement after eight or ten people ran into it when I released the PCTV 340e driver.

      Please do report back once you’ve had a chance to do some more testing with other applications (such as MythTV). I am very interested in hearing how well it behaves from an application compatibility standpoint.

      Cheers,

      Devin

  6. Bob H says

    Hi Devin,

    Well, it was used intently last night. I didn’t get any EIT with the default settings, but I don’t blame it until I have done some more exploration because this is my first attempt with MythTV.

    Interestingly with the default settings in MythTV it didn’t find the muxes on a channel scan, the signal level was good as it passed the channels but it didn’t lock any of the muxes. It looked like the time-out was too quick to get a signal lock. But using “scan” to tzap and import the channels worked immediately.

    Sometimes when tuning it took a surprisingly long time to tune between muxes (more than a couple of seconds) and I don’t think it was because that channel was long-GOP, it was far too long to be an MPEG sync issue.

    Sensitivity looked OK because I am already a little marginal and it was stable. Just trying to get used to a non-Windows media centre now! I use linux often at work but my old media centre was a windows beast that has been replaced with an Acer Revo (Atom 330 + nVidia ION).

    Thanks for the good work.

    • Devin Heitmueller says

      Hi Bob,

      Given my experience with the MythTV channel scanner, it’s a bit premature to blame the card. Have you tried increasing the lock timeout in the card configuration page in mythtv-setup before running the scan? I think it’s 500ms by default, which might be a bit short.

      Regarding the tuning time, it might be worthwhile to run tzap a few times on the mux in question and see how long it takes to get a lock. MythTV tends to be a pretty poor choice for evaluating tuning time since it does a large amount of buffering when switching channels (several seconds worth). It would be good to know whether the problem occurs 100% of the time against a specific mux, or whether it is random across all muxes.

      Devin

      • GBG says

        Tested on ubuntu 9.10 64bit and card pctv nano 74e.
        Everything worked well following the instruction in the post.
        Installing the above package solved also another problem I had with another card:
        ID 1822:3202 Twinhan VisionDTV USB-Ter/HAMA USB DVB-T
        which was not working anymore after the update from ubuntu 9.04 to 9.10

        • Devin Heitmueller says

          Hello GBG,

          Glad it’s working well for you.

          Bear in mind that the tree you installed was not *just* the 74e driver, but also the rest of the current v4l-dvb tree. Hence it would not be surprising if you got some other fixes as well (which you would have gotten if you had just installed the current v4l-dvb tree from linuxtv.org).

          Cheers,

          Devin

          • PeterFromSK says

            Hi Devin,

            I want to make an RPM package for the driver. Is it enough to package dvb_as102.ko and firmware or you made changes in other modules as well?
            Currently I put there all modules not included in my kernel.

            Regards,
            Peter

  7. trlinde says

    Yes, finally some information I can use. Been going nutz attempting to get a PCTV 80e to work under Suse 11.2 with little success till now. Although the mini HDTV USB is not new to the market, found one on clearance, it does seem to be new enough to SuSe that it’s been a problem to get a close enough reference to put me in the ball park of getting it working.
    This is as close to the source as you can get.
    Thnx.

  8. LordByte says

    Hy Devin
    All work fine with Impressive tuning time with Fedora 12 x86_64

    Cam you implement a S/R meter like a Cynergy T2 (With kaffeine i can see correct Signal Meter buyt S/R meter remain always at 1%)

    Compliments

    Great Work

    • Devin Heitmueller says

      Hi LordByte,

      Could you clarify *when* you did the hg checkout? I’m asking because I pushed in a bunch of changes last night, and it would be good to know if your testing included those.

      Regarding the SNR, I will have to talk to the person at Abilis to see how it is represented. The big issue is that every driver represents the SNR field in a different unit of measure, so you should feel fortunate that what shows up with your Cynergy T2 actually looks reasonable under whatever app you are using. There is a complete lack of a standard, and as a result the individual applications implemented whatever happened to look “ok” under whatever card the developer happened to have owned.

      Devin

      • LordByte says

        File List:
        -rw-rw-r– 1 fld0249 fld0249 95500 17 feb 19:40 as102_data1_st.hex
        -rw-rw-r– 1 fld0249 fld0249 81820 17 feb 19:40 as102_data2_st.hex
        -rw-rw-r– 1 fld0249 fld0249 4148218 17 feb 19:41 v4l-dvb-as102-fd4a76510915.tar

        Hour is in Italian TZ (GMT+1)

        • Devin Heitmueller says

          Hi LordByte,

          Ah, ok. Yeah, that’s the code before I did all the cleanup work. If you were to try out the latest version of the tree, I would definitely be interested in feedback. In theory, it should work *exactly* the same, so I am looking for reports of regressions that may have resulted from my cleanup work.

          Cheers,

          Devin

  9. David says

    Thanks a lot!!!

    I have a PCTV PiroStick, and now I can use it in ubuntu 9.10.

    thans. ;)

  10. Bob H says

    Arrrh!

    Turned on my htpc this morning and now the device isn’t working. very strange because if I fit it to my laptop it seems to be recognised. lsmod shows the device including dvb_core and em28xx_dvb. It even shows up in gnome-device-manager but there is no /dev/dvb device structure.

    Devin, I have looked all over the web but I can’t see how you diagnose the lack of /dev/dvb, perhaps it is something to do with udev but don’t know what it means when a device no longer works that once did?

    Bob

    • Devin Heitmueller says

      Hi Bob,

      Did your Linux distro install a kernel update? If so, you will need to recompile the tree you downloaded from kernellabs (after doing a “make distclean”).

      Also, I don’t now why em28xx_dvb would get loaded, since the 74e is not an em28xx based device.

      If you email me the dmesg output after connecting the device, I will see if I can provide some better advice.

      Devin

  11. Bringfried Stecklum says

    Hi folks,

    thanks for the good work! My EyeTV Deluxe V2 is up and running now on Ubuntu 8.10 kernel 2.6.31-19-generic.

    Bringfried

  12. Bringfried Stecklum says

    One more remark. I noticed that dvb_as102 has to be unloaded/reloaded on suspend/resume. Otherwise the firmware will not be found when resuming. In order to take care of that, create a file in /etc/pm/config.d/ which contains SUSPEND_MODULES=”dvb_as102″.

    Bringfried

  13. Ingo says

    Hello,
    can you estimate, when the driver will be upstreamed?

    Thanks

  14. PeterFromSK says

    Hi Everybody,
    I have troubles using the driver with kaffeine. In many cases kaffeine does not detect the device if it is plugged in. It has to be unplugged and plugged in back several times to be detected. However, dmesg says that driver and firmware is successfully loaded each time the device is plugged in. Does anybody face the same problem? I use Fedora 12.

    Can you advise some other easy to use player for DVB-T in linux?

  15. Ralph Apel says

    I have been able to successfully build, install and run it with my PCTV 74e on Centos 5.4 (2.6.18-164.15.1.el5) after simply commenting out lines referencing dev.parent in linux/drivers/media/video/gspca/gspca.c (function gspca_input_connect – yes I know it’s an ugly hack). Thank you very much!

  16. thomas says

    Hello, where can i find the v4l/.config?
    I really can`t find it. I`ve Kubuntu 10.04.
    Thank you for help.
    Thomas

    • PeterFromSK says

      Hi thomas,

      you can create it

      #cd v4l-dvb-as102
      #make xconfig

      #ls -a v4l

  17. Andreas says

    Today I bought a HAMA USB-DVB-T dongle with Abilis AS102 Chip. Installation worked perfectly on Kanotix with Kernel 2.6.32-13. Absolutely no problems using Kaffeine. Many Thanks!

    • Devin Heitmueller says

      I’m actually impressed that worked. HAMA must be using the Abilis default USB ID (otherwise a code change would have been required to add the USB ID to the driver).

      Devin

      • Andreas says

        One thing I noticed today is, that reception with the Windows-Driver seems may be a bit more stable – using the tiny antenna. ;) . If you’d need some more feedback, just send me a mail.
        Andreas

  18. oli993 says

    Hello,

    just tested the driver and had success under openSUSE 11.1 (32 bit) and vanillas kernel 2.6.33.3 – automatic scan of tv worked (germany, Frankfurt am Main), nice picture and sound.

    BUT: compile errors under 2.6.34 (implicit function declaration). Is this a known error? And how are the chances to get this driver into the stable kernel tree?

    Greetings Oli

  19. cg says

    Dear Devin Heitmueller,

    thanx for your driver …
    … works very well with my elegato/ubuntu. Why does nobody (elegato/pctv/you/your team) push the driver into the stable kernel tree? I also want to try it soon on my openwrt router …

    • Devin Heitmueller says

      Hi Cg,

      I haven’t had a chance to get it upstream because of the amount of work required to meet the kernel “coding standards”. The coding standard is a bunch of rules which dictate things like whitespace, indentation, and variable naming.

      The code will not be accepted upstream without meeting the coding standard, regardless of whether it works.

      Elgato had nothing to do with the release (and could frankly care less about whether you can use their sticks under Linux). PCTV and Abilis did the work required to get the code released under the GPL in the first place.

      I just haven’t found the four or five hours to spend cleaning up the code. Since nobody paid to see this work done, it’s really not on the top of my priority list relative to customers who *are* paying to see code merged upstream.

      Devin

  20. cg says

    Dear Devin,

    thanks for your answer. Now i can see the position of the ball, hopefully THE other ones can see this too …

  21. EdwinvB says

    Dear Devin,

    I bought myself a 74e, because under WinXP it works like a charm. And I thought it would be relatively easy to make it work under Ubuntu 10.04. How I was wrong. I’ve tried everything, but still it does not work. Would it be to much for you to let me know all the steps I need to follow to make it work (as I am still very novice to Ubuntu and Linux from command-prompt)?
    Thank you very much in advance.

    • Devin Heitmueller says

      EdwinvB,

      hg clone http://www.kernellabs.com/hg/~dheitmueller/v4l-dvb-as102-2
      cd v4l-dvb-as102-2
      make
      <this command will fail with errors trying to compile the firedtv driver)
      edit v4l/.config to set the firedtv driver to be "=n"
      make
      make install
      reboot

      Oh, and don't forget to install the firmware into /lib/firmware.

      Devin

  22. Lappen says

    Hi Devin
    Great work. I am a linux newbie trying to get my Elgato EyeTV DTT deluxe working, and I had mixed success. On a lucid minimal install i’am trying to follow your script. I think I got it working after i installed gcc, but I do get some weird errors. I’ve managed to get my system to recognize the stick, and i also succeded in doing a channel scan. But after each reboot my stick isn’t recognized. I have to pull it out from one usb port and insert it again….why is that and how do I solve that? I will post the errors/warnings i’m getting when installing for troubleshooting.
    Again thanks for your work and thanks in advance.

  23. Laurence says

    Hi Devin,

    Thank you for your great work. I am a newbie trying to make the pctv 74e work on ubuntu. I’ve installed the v4l-dvb-as102. In my dmesg I could see that the adapter is registered correctly and that the firmware is uploaded,

    [ 2782.383193] DVB: registering new adapter (PCTV Systems picoStick (74e))
    [ 2782.383621] DVB: registering adapter 0 frontend 0 (PCTV Systems picoStick (74e))…
    [ 2782.383689] usb 2-4: firmware: requesting as102_data1_st.hex
    [ 2782.547740] as10x_usb: fimrware: as102_data1_st.hex loaded with success

    but I do not see the device when I execute lsusb. Also when I try do a scan with w_scan it says:

    main:2911: FATAL: ***** NO USEABLE DVB CARD FOUND. *****
    Please check wether dvb driver is loaded and
    verify that no dvb application (i.e. vdr) is running.

    the result of ls /dev/dvb/adapter0/ is
    demux0 dvr0 frontend0

    The result of lsmod is:

    Module Size Used by
    cryptd 8116 0
    aes_x86_64 7912 2
    aes_generic 27607 1 aes_x86_64
    binfmt_misc 7960 1
    ppdev 6375 0
    vboxnetadp 5171 0
    vboxnetflt 15064 0
    vboxdrv 1792439 2 vboxnetadp,vboxnetflt
    snd_hda_codec_nvhdmi 4760 1
    snd_hda_codec_realtek 278890 1
    dvb_as102 20758 0
    arc4 1473 2
    dvb_core 102058 1 dvb_as102
    snd_hda_intel 25645 2
    snd_hda_codec 85727 3 snd_hda_codec_nvhdmi,snd_hda_codec_realtek,snd_hda_intel
    snd_hwdep 6924 1 snd_hda_codec
    snd_pcm_oss 41394 0
    snd_mixer_oss 16299 1 snd_pcm_oss
    snd_pcm 87850 3 snd_hda_intel,snd_hda_codec,snd_pcm_oss
    snd_seq_dummy 1782 0
    snd_seq_oss 31219 0
    snd_seq_midi 5829 0
    snd_rawmidi 23388 1 snd_seq_midi
    snd_seq_midi_event 7267 2 snd_seq_oss,snd_seq_midi
    snd_seq 57417 6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
    rtl8187 53204 0
    snd_timer 23553 2 snd_pcm,snd_seq
    snd_seq_device 6824 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
    mac80211 238128 1 rtl8187
    fbcon 39270 71
    tileblit 2487 1 fbcon
    led_class 3732 1 rtl8187
    cfg80211 148386 2 rtl8187,mac80211
    eeprom_93cx6 1765 1 rtl8187
    video 20623 0
    font 8053 1 fbcon
    bitblit 5811 1 fbcon
    output 2503 1 video
    softcursor 1565 1 bitblit
    snd 70978 16 snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
    edac_core 45423 0
    edac_mce_amd 9214 0
    nvidia 10832442 39
    vga16fb 12757 1
    vgastate 9857 1 vga16fb
    i2c_nforce2 6099 0
    soundcore 8052 1 snd
    snd_page_alloc 8500 2 snd_hda_intel,snd_pcm
    lp 9336 0
    parport 37160 2 ppdev,lp
    usbhid 40988 0
    hid 83376 1 usbhid
    dm_raid45 75436 0
    xor 4685 1 dm_raid45
    ahci 37646 2
    forcedeth 55592 0
    pata_amd 11962 0

    All help is appreciated,

Continuing the Discussion

  1. Receptor TDT PCTV (picoStick) en ubuntu « El titulo te lo dejo a ti. ;) linked to this post on March 1, 2010

    [...] así que me puse a buscar mucho, y después de muchos intentos encontré la solución gracias a esta [...]

  2. Kylie Batt linked to this post on April 15, 2010

    Великолепная фраза и своевременно…

    I finally got a chance to do some testing with the PCTV 74e, using the GPL reference driver that Abilis provided…..



Some HTML is OK

or, reply to this post via trackback.