Contenu | Rechercher | Menus
Selon les tags présents sur cette page, celle-ci est ancienne et ne contient plus d'informations sur une des versions supportées d'Ubuntu.
Cette page est considée comme vétuste et ne contient plus d'informations utiles.
Cette page est en cours de rédaction.
Apportez votre aide…

Carte TV : Pinnacle PCTV Hybrid Pro Stick

Installation de l'Hybrid Pro Stick PCTV

A lire

Vous trouverez le tutoriel original ici (en anglais) :

http://mcentral.de/wiki/index.php/Em2880#Installation Ce lien ne fonctionne plus (cf. forum)

note: ce tutoriel français peut ne pas être à jour, si vous avez des problèmes avec l installation pensez à regarder le tutoriel

Introduction

Ce tutoriel va vous permettre de faire fonctionner l'Hybrid Pro Stick PCTV.

Les étapes par lesquelles l'installation s'effectue sont :

  • Vérifier la prise en charge du stick
  • Vérifier les pré-requis
  • Récupérer les sources des modules
  • Récupérer le firmware
  • Effacer les anciens modules éventuels et installer les nouveaux
  • Scanner les canaux

Vérifier la version de l'Hybrid Pro Stick PCTV

Sur USB, vous allez lister les périphériques usb avec lsusb

tapez dans une console lsusb vous aurez :

      benje@cereli-04:~$ lsusb
      Bus 004 Device 011: ID eb1a:2881 eMPIA Technology, Inc.
      Bus 004 Device 001: ID 0000:0000
      Bus 001 Device 001: ID 0000:0000
      Bus 003 Device 001: ID 0000:0000
      Bus 002 Device 001: ID 0000:0000

ici c'est :

      ''eb1a  ''
      ''2881  ''

Prérequis

  1. Fonction “sudo” activée (actif par défaut pour les utilisateur Administrateurs) (sinon voir sudo).
  2. Connexion Internet configurée et activée (sinon voir la section : accueil Modem RTC et ADSL).
  3. Paquets nécessaires à la compilation gcc3.4 et/ou gcc4.0(sinon voir compilateur gcc c/c++).
    sudo apt-get install build-essential
  4. Paquet nécessaire au noyau
    sudo apt-get install linux-headers-`uname -r`
  5. Paquets spécifiés dans la doc et nécessaire a la compilation
    sudo apt-get install mercurial
  6. Paquets nécessaires à dvb:
    sudo apt-get install dvb-utils libxine1-ffmpeg

    ou si dvb-utils est obsolete:

    sudo apt-get install dvb-apps libxine1-ffmpeg
  7. Utilisateur qui compile dans le groupe src:
    sudo adduser $USER src 

Attention: pour que l'ajout au groupe src soit effectif, il faut quitter la session actuelle et se reconnecter.

Récuperer les sources des modules

  • Récupérez les modules grâce à mercurial et les mettre dans le dossier des sources (/usr/src/).

Il y a deux versions, celle qui est stable (v4l-dvb-kernel) et celle qui est expérimentale (v4l-dvb-experimental).
Dans une console tapez :

  cd /usr/src

pour la stable :

  hg clone http://mcentral.de/hg/~mrec/v4l-dvb-kernel pinnacle-driver

pour l'experimentale :

  hg clone http://mcentral.de/hg/~mrec/v4l-dvb-experimental pinnacle-driver

Si les liens ci-dessus ne fonctionnent pas, essayez ceci :

  hg clone http://www.makomk.com/hg/v4l-dvb-makomk pinnacle-driver

Vous aurez alors :

  nicolas@spiralo-vertigo:~$ hg clone http://mcentral.de/hg/~mrec/v4l-dvb-experimental
  destination directory: v4l-dvb-experimental
  requesting all changes
  adding changesets
  adding manifests
  adding file changes
  added 5599 changesets with 15649 changes to 1195 files
  904 files updated, 0 files merged, 0 files removed, 0 files unresolved
  nicolas@spiralo-vertigo:~$

Vous voila avec les sources.

Récupérer le firmware

1 ) Trouvez le nom exact de l'archive du firmware correspondant à votre matériel dans la liste ci-dessous :
—————————————-
firmware.tgz Pour:
* Terratec Cinergy Hybrid T XS (french edition)
* Terratec Cinergy T XS
* DNT DA2 Hybrid
* Kworld 350U
—————————————-
firmware_v2.tgz Pour:
* MSI DigiVox A/D
* Kworld 310U
—————————————-
firmware_v3.tgz Pour:
* HVR 900 B2C0(sticker on the dev.)
* HVR 900 A1C0
* Terratec Cinergy Hybrid T XS
* Pinnacle PCTV Hybrid Pro
* Dazzle TV Hybrid Stick
—————————————-
firmware_v4.tgz Pour:
* Pinnacle HD Pro Stick (North American version, NTSC/ATSC)
========================================

!! Attention, après, on suppose que le fichier correct est firmware_v3.tgz !! Remplacez par celui qui est correct pour votre carte

2 ) Télécharger le fichier de firmware vers /lib/firmware .

cd /lib/firmware/`uname -r` 
sudo wget http://konstantin.filtschew.de/v4l-firmware/firmware_v3.tgz

3) et le décompresser :

sudo tar xvzf firmware_v3.tgz

(NOTA :
Voici les md5 des différentes archives:
sha1sum, nom fichier
0bddf428ef4e8b532002d5a7ba7bddfdeb99085b firmware.tgz
caa44ded1e1d6cf3a9a9e530caca840a92d6920f firmware_v2.tgz
792193b3e073c27d1d2eccebc72ec9ad1b6950a6 firmware_v3.tgz
134d3b77b40d1b1298a91bb32c44544cebf77e64 firmware_v4.tgz
)

Compiler les modules

Ubuntu 8.10 Intrepid Uniquement: Pour intrepid il faut ajouter les headers dvb qui ne sont plus présents dans le paquet headers (va savoir pourquoi).

Ouvrez un terminal et faites:

sudo apt-get install linux-source
cd /usr/src/
sudo tar -jxvf linux-source-$(uname -r | sed 's/-.*//').tar.bz2
sudo cp linux-source-$(uname -r | sed 's/-.*//')/drivers/media/dvb/dvb-core/*.h linux-headers-$(uname -r)/drivers/media/dvb/dvb-core/
sudo cp linux-source-$(uname -r | sed 's/-.*//')/drivers/media/dvb/frontends/lgdt330x.h linux-headers-$(uname -r)/drivers/media/dvb/frontends/
sudo cp linux-source-$(uname -r | sed 's/-.*//')/drivers/media/video/msp3400-driver.h linux-headers-$(uname -r)/drivers/media/dvb/frontends

Fin uniquement intrepid

Pour compiler vous devez vous placer dans le dossier pinnacle-driver créé par la commande où vous l'avez copié.
on utilise la commande cd

cd /usr/src/pinnacle-driver/

Faites un make pour compiler le programme.

make

Une fois la compilation effectuée il reste à installer le pilote par un make install:

sudo make install

Pour ceux qui n'arrivent pas à compiler les sources, vous pouvez télécharger un paquet .deb: http://jiemeb.free.fr/pinnacle/
Attention à prendre la version qui correspond à votre noyau.

Si une mise à jour actualise votre noyau (paquet linux-image … dans la liste des mises à jour) le pilote devra être réinstallé, l'opération ci-dessus est donc à refaire à chaque mise à jour du noyau. La bidouille pour Intrepid comprise !!

!!! ATTENTION IL FAUT REDÉMARRER LA MACHINE la clef usb enlevée!!!

Charger les modules; essayer avant sans faire quoi que ce soit (il se peut que ça marche directement) (Après Redémarrage machine sans la clé!)

Le modules doivent être chargés par les commandes:

sudo modprobe em28xx
sudo modprobe em28xx-audio
sudo modprobe em2880-dvb

Maintenant branchez votre carte dvb
Vous devriez voir en faisant un dmesg:

[  201.712000] usb 3-1: new high speed USB device using ehci_hcd and address 2
[  201.844000] usb 3-1: configuration #1 chosen from 1 choice
[  201.844000] em28xx new video device (eb1a:2881): interface 0, class 255
[  201.844000] em28xx: device is attached to a USB 2.0 bus
[  201.844000] em28xx: you're using the experimental/unstable tree from mcentral.de
[  201.844000] em28xx: there's also a stable tree available but which is limited to
[  201.844000] em28xx: linux <=2.6.19.2
[  201.844000] em28xx: it's fine to use this driver but keep in mind that it will move
[  201.844000] em28xx: to http://mcentral.de/hg/~mrec/v4l-dvb-kernel as soon as it's
[  201.844000] em28xx: proved to be stable
[  201.844000] em28xx #0: Alternate settings: 8
[  201.844000] em28xx #0: Alternate setting 0, max size= 0
[  201.844000] em28xx #0: Alternate setting 1, max size= 0
[  201.844000] em28xx #0: Alternate setting 2, max size= 1448
[  201.844000] em28xx #0: Alternate setting 3, max size= 2048
[  201.844000] em28xx #0: Alternate setting 4, max size= 2304
[  201.844000] em28xx #0: Alternate setting 5, max size= 2580
[  201.844000] em28xx #0: Alternate setting 6, max size= 2892
[  201.844000] em28xx #0: Alternate setting 7, max size= 3072
[  202.160000] input: em2880/em2870 remote control as /class/input/input7
[  202.160000] em28xx-input.c: remote control handler attached
[  202.160000] attach_inform: eeprom detected.
[  202.184000] em28xx #0: i2c eeprom 00: 1a eb 67 95 1a eb 81 28 58 12 5c 00 6a 20 6a 00
[  202.184000] em28xx #0: i2c eeprom 10: 00 00 04 57 64 57 00 00 60 f4 00 00 02 02 00 00
[  202.184000] em28xx #0: i2c eeprom 20: 56 00 01 00 00 00 02 00 b8 00 00 00 5b 1e 00 00
[  202.184000] em28xx #0: i2c eeprom 30: 00 00 20 40 20 80 02 20 10 02 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom 40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom 50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom 60: 00 00 00 00 00 00 00 00 00 00 20 03 55 00 53 00
[  202.184000] em28xx #0: i2c eeprom 70: 42 00 20 00 32 00 38 00 38 00 31 00 20 00 56 00
[  202.184000] em28xx #0: i2c eeprom 80: 69 00 64 00 65 00 6f 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom 90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom e0: 5a 00 55 aa 79 55 54 03 00 17 98 01 00 00 00 00
[  202.184000] em28xx #0: i2c eeprom f0: 0c 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00
[  202.184000] EEPROM ID= 0x9567eb1a
[  202.184000] Vendor/Product ID= eb1a:2881
[  202.184000] AC97 audio (5 sample rates)
[  202.184000] USB Remote wakeup capable
[  202.184000] 500mA max power
[  202.184000] Table at 0x04, strings=0x206a, 0x006a, 0x0000
[  202.188000] tuner 0-0061: chip found @ 0xc2 (em28xx #0)
[  202.188000] attach inform (default): detected I2C address c2
[  202.188000] tuner 0x61: Configuration acknowledged
[  202.188000] requesting Xceive 3028 tuner
[  202.188000] tuner-core: loading xc3028!
[  202.188000] /media/hda3/home/nicolas/v4l-dvb-experimental/v4l/xc3028-tuner.c: attach request!
[  202.188000] tuner-core.c: loaded external driver!
[  202.192000] attach_inform: tvp5150 detected.
[  202.260000] tvp5150 0-005c: tvp5150am1 detected.
[  202.348000] Loading base firmware: xc3028_init0.i2c.fw
[  203.440000] Loading default analogue TV settings: xc3028_BG_PAL_A2_A.i2c.fw
[  203.492000] ANALOG TV REQUEST
[  203.500000] em28xx #0: V4L2 VBI device registered as /dev/vbi0
[  203.500000] em28xx #0: V4L2 device registered as /dev/video0
[  203.500000] em2880-dvb.c: DVB Init
[  203.500000] Loading base firmware: xc3028_8MHz_init0.i2c.fw
[  204.752000] Loading default dtv settings: xc3028_DTV8_2633.i2c.fw
[  204.896000] Sending extra call for Digital TV!
[  205.000000] /media/hda3/home/nicolas/v4l-dvb-experimental/v4l/xc3028-tuner.c: attach request!
[  205.008000] DVB: registering new adapter (em2880 DVB-T).
[  205.008000] DVB: registering frontend 0 (Zarlink ZL10353 DVB-T)...
[  205.008000] em28xx #0: Found Pinnacle Hybrid Pro
[  205.008000] em28xx audio device (eb1a:2881): interface 1, class 1
[  205.008000] em28xx audio device (eb1a:2881): interface 2, class 1
[  205.584000] usbcore: registered new interface driver snd-usb-audio
nicolas@spiralo-vertigo:~$ 

À présent, pour charger les modules automatiquement au démarrage, éditez le fichier /etc/modules en droit root :

$ sudo gedit /etc/modules

Et ajoutez à la fin du fichier, les modules précédemment installés :

(...)
em28xx
em28xx-audio
em2880-dvb

Ces modules seront maintenant chargés automatiquement à chaque démarrage.

Avec certaines cartes vous pouvez avoir des problèmes de détection, par exemple du tuner. Les paramètres à passer aux modules sont décrits dans :

v4l-dvb-experimental/linux/Documentation/video4linux/CARDLIST.em28xx et v4l-dvb-experimental/linux/Documentation/video4linuxCARDLIST.tuner

Dans ces cas vous pouvez préciser dans /etc/modules le numéro de la carte ou le numéro du tuner à utiliser.

(...)
em28xx card=23
em28xx-audio
em2880-dvb

Scanner les chaines

Si le mode auto de kaffeine ne fonctionne pas (sous edgy et feisty) ou que vous utilisez un autre logiciel, il est nécessaire d'y ajouter un fichier contenant les specifications techniques de votre émetteur.
Or de nombreux fichiers ne sont pas encore intégrés aux logiciels.
Si la ville de votre émetteur n"est pas inclus, tapez dans un terminal:

gksudo gedit /usr/share/doc/dvb-utils/examples/scan/dvb-t/fr-Nom_de_la_ville

ou

kdesu kate /usr/share/doc/dvb-utils/examples/scan/dvb-t/fr-Nom_de_la_ville

et faites un copier/coller du contenu de codes_des_villes_pour_la_tnt correspondant à la ville de votre émetteur dedans enregistrer le fichier.
Pour scanner les chaines, utiliser la commande scan:
Pour xine:

scan -n -o zap -p /usr/share/doc/dvb-utils/examples/scan/dvb-t/fr-Nice > ~/.xine/channels.conf 

Pour kaffeine:
copier le fichier /usr/share/doc/dvb-utils/examples/scan/dvb-t/fr-Nom_de_la_ville dans le rep de kaffeine:

cp /usr/share/doc/dvb-utils/examples/scan/dvb-t/fr-Nom_de_la_ville ~/.kde/share/apps/kaffeine/dvb-t/fr-Nom_de_la_ville

Liens utiles

Paramétrage de la télécommande: pctv_usb_stick_remote

Concernant les erreurs

  • Il semble que les pilotes de certaines webcams (spca5xx) ne supportent pas le nouveau v4l. Le module correspondant n'est plus chargé et vous vous trouvez avec la TNT mais sans webcam ! Bug ?
Effectivement la branche (mrec) de cette carte est encore en dehors de la branche stable (hg).
  • Si vous avez des problèmes dans votre dmesg concernant le fichier tuner_core (register ou unregister), il est possible que vous ayez omis d'effacer les anciens modules au préalable (voir plus haut pour les effacer).
  • Personnellement sous Edgy quand ma carte tnt était branchée au démarrage je ne pouvais plus utiliser mon scanner usb, après un reboot sans clé tnt le scanner remarche sans problème, et dès l'insertion de la clé tnt il est à nouveau plus détecté.

Contributeurs : benje et loup_74

D'apres tnt, le forum, le site Linuxtv.org em2880 et une discussion via IRC sur #linuxtv avec mrec, un des contributeurs des modules dvb.



Le contenu de ce wiki est sous licence : CC BY-SA v3.0