Petit test du TV Hat pour Raspberry Pi

Récemment, la fondation qui gère la carte Raspberry Pi a lancé un nouveau « Hat », doté d’un tuner TV. Je suis un peu étonné de ce choix, qui de mon point de vue ne répond pas à une demande ni à un but éducatif, mais comme il n’est pas très cher, j’en ai acheté un pour tester.

Le tuner se présente sous la forme d’une petite carte qui fait la taille d’un Raspberry Pi Zero et qui se branche sur les GPIO. Elle propose un connecteur MCX et un adaptateur MCX vers coaxial classique est dans la boîte. Ce choix permet de brancher directement une antenne portable si vous en avez besoin. La puce utilisée sur la carte est un contrôleur Sony CXD2880, qui prend en charge le DVB-T (la TNT en France) mais aussi le DVB-T2 (utilisé notamment au Royaume-Uni). Certains s’étonnaient de ce choix, mais il me semble pourtant logique. D’une part il permet de recevoir les chaînes diffusées au Royaume-Uni (le pays d’origine du Raspberry Pi) et d’autre part il ne nécessite qu’une puce. Installer les deux puces classiques (R820T2 et RTL2832U) aurait permis de faire du SDR, certes, mais pour un tuner, le choix de la puce Sony est plus logique. Et je soupçonne que le but était aussi de ne pas proposer du SDR, justement. Je ne serais pas étonné de voir un jour un adaptateur SDR bien conçu et pas trop cher, sans se baser sur du hack de récepteur TNT.

La carte installée



Les vis en plastique

Premier truc énervant, les spacer en plastique. Pour fixer correctement la carte sur les GPIO, la fondation fournit des vis et des supports, mais ils sont en plastique. En dehors du fait que ce n’est pas très solide, les vis ont une tête qui n’est pas cruciforme (je suppose que le plastique n’est pas assez solide) et donc on a nettement plus de chances de ripper sur le PCB en vissant. Franchement, j’aurais préféré payer 1 € de plus pour des vis et des supports en métal. Je ne sais pas si c’est une erreur ou si c’est délibéré, mais il y avait d’ailleurs une vis de trop dans le sachet.

L’installation s’effectue sur une partie des Raspberry Pi : il faut un modèle avec les GPIO de seconde génération (40 broches), donc le premier modèle est exclus. Sur un Zero, il faut soit la version avec le header (Zero WH), soit le souder directement (ce que j’avais fait il y a un moment). Pour tester, j’ai pris un Zero classique (sans Wi-Fi- sur lequel j’avais soudé un header. Il est connecté avec l’adaptateur Ethernet de Chromecast qui l’alimente et le connecte en même temps.

Je vais juste montrer ici qu’il est possible de recevoir la télévision et de partager le tout sur un réseau. La solution la plus simple passe par l’installation de TVHeadend.

sudo apt-get install tvheadend

Attention, à l’installation il demande un nom d’utilisateur et un mot de passe, ils sont importants.

Ensuite, il faut se rendre sur la page de gestion de TVHeadend. L’adresse est h​ttp://raspberrypi.local:9981/extjs.html (ou http://IP_RASP:9981/extjs.html). Perso, j’ai juste réglé le Pi pour qu’il annonce direct la page, comme à la fin de ce vieux tuto.

Sur la page de connexion, il suffit de suivre les indications et de bien entrer les informations liées à la France avant de lancer la recherche. Maintenant, le programme fonctionne. Je vous le dis tout de suite, je trouve l’ergonomie de TVHeadend absolument horrible. C’est un programme libre typique, pensé par et pour des gens qui veulent des informations techniques et qui pensent que s’il y a beaucoup d’options, c’est mieux. Pour moi, c’est juste affreux à utiliser et pas très ergonomique. Il existe bien quelques clients (on trouve une liste là) mais ça reste assez moyen. Avec Kodi, ça passe ar contre sans soucis, ou – sous iOS – avec TvhClient. Mais sérieusement, oubliez TVHeadend dans le navigateur…

Quelques réglages




Le résultat

France 3


La liste des chaînes

Techniquement, streamer un flux vidéo ne va pas poser de soucis, même avec un petit Raspberry Pi. La TNT en France se limite à des débits assez faibles (quelques Mb/s en HD, environ 20 Mb/s en Ultra HD) et même les contrôleurs Wi-Fi tiennent ça si la carte n’est pas trop loin du point d’accès. On peut aussi se servir d’un Raspberry Pi comme adaptateur TNT pour un téléviseur, mais soyons honnête : ça a quand même peu d’intérêt. On trouve des décodeurs pour pas trop cher dans n’importe quel grande surface avec une ergonomie bien meilleure. Pour la lecture, même les cartes en ARM11 devraient pouvoir décoder toutes les chaînes en France, vu que le H.264 est décodé en hardware. Si vous vivez dans un des rares pays à encore diffuser en MPEG2, la licence pour le décodage sera peut-être nécessaire. Evidemment, si vous captez des émissions en HEVC et en Ultra HD (notamment à Paris), il faudra un PC pour décoder.

Je trouve l’idée du tuner TNT pas si mauvaise au final, même si en pratique ça vise quand même des gens qui n’ont pas peur de mettre la main dans le cambouis et de jouer avec des interfaces horribles. Pour un usage grand public, les produits EyeTV ou le HDHomeRun que j’ai acheté récemment offre un résultat quand même nettement plus ergonomique. L’avantage du Raspberry Pi, c’est que c’est assez bon marché : le tuner TV vaut un peu moins de 25 € et avec un Raspberry Pi Zero, on peut s’en tirer pour moins de 40 € au final. Disons que pour enregistrer ce qui passe à la TV au lieu de le pirater, ça peut se défendre (mais il vaut lieux installer Kodi pour ça).