Configurer son Raspberry avec Raspbian + XBMC

@ // 25 septembre 2013, 22:16:45 // 21 commentaires » // G33k

Raspberry + XMBCA force de lire des articles sur le net, j’ai fini par craquer et adopter un Raspberry Pi.
Je l’ai tout d’abord « promu » pour une utilisation en serveur web avant de décider d’y ajouter XBMC pour créer un mediacenter.

Si vous connaissez déjà la bête, rendez-vous à la partie « Installation de XBMC » pour passer aux choses sérieuses 🙂

« Papa, c’est quoi cette framboise ? »

Mon RaspberryLe Raspberry Pi est un nano-ordinateur conçu sur une carte électronique de la taille d’une carte de crédit (45g). Il est fourni « nu » (carte mère seule) sans boitier, ni alimentation/clavier/souris/écran/carte SD… c’est à vous de le concevoir. L’intérêt est de pouvoir encourager l’apprentissage de la programmation informatique, faire découvrir linux, le tout à moindre coût.
L’avantage est de pouvoir choisir votre configuration matériel (dongle Wifi, hub USB, etc.) et votre système d’exploitation libre (voir la liste).

Il existe 2 modèles (A et B) avec des spécifications différentes. Dans cet article, nous allons nous intéresser au dernier modèle que j’ai pu acquérir : le modèle B 512 Mo.
Un beau joujou comprenant notamment un processeur ARM de 700 MHz (overclockable à 1000 MHz), un port Ethernet 10/100, 2 ports USB2… et 512 Mo de RAM (plus d’infos).

Qu’est ce qu’un mediacenter ?

Un mediacenter vous permet de lire des fichiers vidéo, audio, d’afficher des diaporamas de photos.
Bien qu’il existe des boîtiers multimédia dans le commerce qui remplissent ces fonctions, ils peuvent être limités par des incompatibilités avec certains formats de fichiers. Les fabricants n’ajoutent pas toujours de nouvelles fonctions à leurs produits d’une année sur l’autre, préférant ainsi favoriser l’arrivée de nouveaux modèles.
C’est pourquoi je me suis décidé à créer le mien avec le logiciel open-source XBMC !

Installation de XBMC

Dans cet article, nous partirons du principe que votre Raspberry est déjà configuré. Si ce n’est pas le cas, je vous invite à consulter l’excellent article d’IdleBlog. J‘ai choisi volontairement de faire une configuration Raspbian + XBMC pour pouvoir installer en parallèle un serveur Nginx + php-fpm, mais sachez qu’il existe des distributions particulières plus orientées « XBMC » (OpenELEC et RaspBMC).

Le matériel que j’ai utilisé (pour un total de 72€ sans l’écran, ni carte SD, ni disque dur externe) :

  • Ecran Samsung P2470HD (ou autre) : Compatible 1080p et technologie HDMI CEC (permettant de contrôler votre Raspberry avec la télécommande de votre télévision !).
  • Raspberry modèle B 512 Mo (38€) : Overclocké à 900 Mhz pour de meilleures performances.
  • Carte SD : Sous Raspbian pour mon cas avec au minimum 4 Go.
  • Alimentation 5V – 1500mA microUSB (7€) : Au minimum 1000mA pour être tranquille lorsque vous ajoutez des périphériques alimentés via USB.
  • Câble Ethernet (~6€) : Autant de longueur qu’il faudra jusqu’à la box 🙂 Je déconseille le Wifi si vous voulez être sûr d’avoir un débit constant.
  • Câble HDMI 1m (5€) : Le dispositif sera placé derrière la télévision, pas besoin de prendre plus. Ça évite que le câble se balade.
  • 3 dissipateurs thermiques (8€) : Pour faire descendre la température des composants de quelques degrés.
    Lorsque vous visionnez un film en HD ils s’avèrent très utiles pour faire descendre la température du Raspberry. (j’ai relevé 70° avec un film 1080p sans dissipateurs).
  • Coque de protection pour le Raspberry (8€) : Optionnelle mais conseillée pour ne pas abîmer la carte. Inconvénient: La carte chauffe plus vite.
  • Disque dur externe mis en réseau via ma box internet. A terme, un NAS Synology le remplacera.

Vous avez tout le matériel ? Vous voilà prêt pour l’installation !

 

Auparavant, j’ai pu tester le package xbmc-rdp-tomaz mais malheureusement, à l’écriture de ce billet, ce dernier contient des bugs pour la version 12 de XBMC (impossible de lire les vidéos et d’utiliser la télécommande de votre écran). C’est pourquoi, je me suis intéressé à la solution de Michael Gorven qui à l’avantage de pouvoir mettre à jour le package via les commandes aptitude.

L’installation se déroule en lignes de commande via SSH :

  1. D’abord, ajoutez le dépôt suivant à vos sources dans le fichier /etc/apt/sources.list.d/raspbian.list :
    deb http://archive.mene.za.net/raspbian wheezy contrib
  2. Importez la clef de signature :
    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 5243CDED
  3. Mettez à jour la package list :
    sudo apt-get update
  4. Téléchargez la package XBMC :
    sudo apt-get install xbmc

/!\ Attention /!\ : l’utilisateur qui lance XBMC doit être membre d’un des groupes système suivants : audio video input dialout plugdev tty. L’exécution à partir de l’utilisateur pi (ou root) ne posera normalement aucun problème. Si le groupe « input » n’existe pas, vous pouvez le créer via la commande : addgroup --system input.

Il ne reste plus que quelques paramètres à configurer pour que XBMC se lance correctement :

  1. Ajoutez les lignes suivantes dans le fichier /etc/udev/rules.d/99-input.rules :
    SUBSYSTEM=="input", GROUP="input", MODE="0660"
    KERNEL=="tty[0-9]*", GROUP="tty", MODE="0660"
  2. Enfin, lancez l’application avec la commande : xmbc-standalone

    Si vous souhaitez que XBMC se lance automatiquement au démarrage, éditez le fichier /etc/default/xbmc et changez la valeur de ENABLED à 1 : ENABLED=1. Vérifiez aussi que USER=pi.

Et voici le résultat :

XMBC

 

J’espère que ce tuto vous a bien aidé. N’hésitez pas à poster vous aussi une photo de votre installation !

21 réponses pour “Configurer son Raspberry avec Raspbian + XBMC”

  1. Pyrrah dit :

    Vous pouvez vérifier la compatibilité de votre carte SD avec le Raspi via le wiki : http://elinux.org/RPi_SD_cards 🙂

    RépondreRépondre
  2. gaara dit :

    Super tuto, merci, ça fonctionne a merveille.
    J’ai juste modifié le fichier /etc/apt/sources.list , car l’autre n’existait pas.
    Cependant, quand je quitte XBMC, je suis obligé de faire Ctrl+Alt+F6 pour revenir au bureau.
    N’y a-t-il pas quelque chose à modifier pour y revenir automatiquement?

    RépondreRépondre
  3. Pyrrah dit :

    Merci pour le retour 🙂

    Pour ma part, je n’utilise pas le bureau sur mon Raspberry, je préfère tout faire avec le terminal.
    Pour pouvoir retourner sur le bureau automatiquement, ça suppose que l’interface graphique tourne déjà en tâche de fond (pas terrible sachant que XBMC prend 90-100% de ton CPU) ou que tu relances le bureau – en ligne de commande – une fois XBMC éteint.

    La meilleure solution serait de faire un petit script procédural pour quitter l’interface graphique si elle est ouverte, lancer XBMC et relancer l’interface graphique.

    RépondreRépondre
  4. hopenux dit :

    Go sur archbox, j’ai fai un script qui permet de faire cela.

    RépondreRépondre
  5. Pyrrah dit :

    J’ai jeté un coup d’œil c’est vraiment pas mal 🙂

    RépondreRépondre
  6. hopenux dit :

    Je pense que tu as juste à lancer le script archbox_6boot.sh pour ensuite adapter le lancement à ton cas. Sinon n’hésite pas à en parler 🙂

    RépondreRépondre
  7. Ove dit :

    Bonjour, ne fonctionne pas chez moi, Segmentation Fault (core dumped) lors de l’envoi de la commande xbmc-standalone.

    RépondreRépondre
  8. Ove dit :

    @Ove: C’est bon j’ai trouve, j’ai juste remonté la mémoire allouée au GPU.

    RépondreRépondre
  9. Pyrrah dit :

    Merci pour le retour 🙂

    RépondreRépondre
  10. jml dit :

    comment résoudre le problème de mise en veille sur le raspbian (raspberry)

    RépondreRépondre
  11. Pyrrah dit :

    Par rapport à la non utilisation de XBMC pendant plusieurs minutes ?

    RépondreRépondre
  12. jeremy dit :

    Je n’ai pas mis l’interface graphique au demarrage.
    xbmc ne démarre jamais seul. Je suis obligé de le démarrer à chaque fois avec la commande xbmc-standalone ENABLED à 1 dans /etc/default/xbmc

    RépondreRépondre
  13. jeremy dit :

    Et aussi, il n’y a pas de problème avec les touches avances et retour rapide (x2 x4 x8 x16…)? Je le vois bien s’afficher en haut a droite mais le temps n’avance/recule pas.

    RépondreRépondre
  14. Pyrrah dit :

    @jeremy:
    * Normalement pour permettre le démarrage automatique, il suffit juste d’éditer le fichier /etc/default/xbmc en passant la valeur de ENABLED à 1. Et c’est tout !

    * Pour les retours et avances rapides, ça ne fonctionne pas correctement et c’est un problème connu. Si tu as un smartphone Android, il y a l’application Yatse pour faire office de télécommande. La version gratuite est suffisante : https://play.google.com/store/apps/details?id=org.leetzone.android.yatsewidgetfree&hl=fr

    J’espère avoir répondu à tes questions 🙂

    RépondreRépondre
  15. Pyrrah dit :

    [MàJ] Le dépôt mis à jour avec la version 12.3 de XBMC. Voici la liste des éléments mis à jour dans cette version : http://xbmc.org/xbmc-12-3-frodo-fixes/.

    Pour faire la mise à jour, n’oubliez pas de fermer correctement XBMC puis de faire la commande suivante :
    sudo apt-get update && sudo apt-get upgrade

    RépondreRépondre
  16. jeremy dit :

    J’ai aussi tester Yatse et j’ai eu le même problème.
    Je vais faire la maj xbmc et je viendrais faire un retour

    RépondreRépondre
  17. Pyrrah dit :

    @jeremy: Pour Yatse, tu peux positionner le curseur de lecture, ce qui n’est pas possible avec ta TV 😉

    RépondreRépondre
  18. jeremy dit :

    tu as mis à jour le depot mene?
    Si c’est le cas je detecte que ces modifications :
    The following packages will be upgraded:
    dpkg dpkg-dev libdpkg-perl

    RépondreRépondre
  19. Matthieu dit :

    Bonjour à tous, je ne comprends pas trop pour le démarrage automatique. ENABLE est bien sur 1 mais je suis obligé de le lancer manuellement pour autant

    RépondreRépondre
  20. Pyrrah dit :

    @jeremy: Il ne s’agit pas d’un dépôt m’appartenant. Vérifie ta version XBMC, si c’est la 12.3 tu es à jour.

    @Matthieu: Hello, as-tu les bons droits sur le /etc/default/xbmc (root et droits 0644) ? Ta valeur USER=pi ?

    RépondreRépondre
  21. jeremy dit :

    OuI j’ai bien la 12.3 mais sur le forum anglais de xbmc ou j’ai fourni les logs on a dit que c’etait un problème connu qui a été corrigé sur le dernier « fixes » donc j’essaye dectrouver un dépôt plus a jour

    RépondreRépondre

Laisser un commentaire