まこと の ブログ

MaKoTo no burogu — Journal de bord…

Aller au contenu | Aller au menu | Aller à la recherche

Recycler un vieil ordi en MediaCenter -6-

Suite du cinquième épisode :

Télécommande infrarouge, le retour !

Je vais donc vous reparler du pilotage de l'interface graphique par une télécommande.

En effet, j'ai dégotté une petite télécommande facile à prendre en main, qui allait avec une chaine hifi.
Mais aucun fichier de config n'existe pour celle-ci, il fallu donc le créer à la main.

  • Pour cela, commencer par couper lirc :
sudo /etc/init.d/lirc stop
  • Puis on peut lancer cette commande :
sudo irrecord -H audio_alsa -d plughw:0,3 makotonoremote

Les paramètres font directement références à /etc/lirc/hardware.conf, vu dans le billet précédent. (attention, si pour une raison ou une autre on avorte le processus, il faudra effacer le fichier makotonoremote avant de relancer la commande).

irrecord demande de valider, après avoir lu les instructions, puis une seconde fois;
Là, appuyer à la suite les uns des autres tous les boutons de la télécommande, en rafale, histoire d'effectuer des lignes de point, au moins 2…
Jusqu'à ce qu'apparaisse un paragraphe de texte commençant par : «remote control found…»
C'est qu'on accède enfin à l'affectation des boutons !
On entre un texte d'identifiant et on valide, (j'ai choisi key_? et btn_? de la liste des noms prédéfini, donnée par la commande irrecord --list-namespace) puis on appuie le bouton qui correspondra.
et ainsi de suite…

Quand on a fini toutes les touches on valide pour arrêter.
Et pour terminer il faut valider à nouveau et mitrailler un bouton aussi vite que possible… irrecord s'arrête enfin !

Le résultat de toute l'opération se retrouve dans le fichier qu'on vient de créer et qu'on va alors copier et re-nommer ici :

  • /etc/lirc/lircd.conf
begin remote

  name  makotonoremote
  bits           16
  flags SPACE_ENC|CONST_LENGTH
  eps            30
  aeps          100

  header       9000  4483
  one           617  1619
  zero          617   502
  ptrail        626
  pre_data_bits   16
  pre_data       0x807F
  gap          107936
  toggle_bit_mask 0x0

      begin codes
          key_1                    0x20DF
          key_2                    0x10EF
          key_x                    0x00FF
          key_4                    0x30CF
          key_5                    0x08F7
          key_6                    0x807F
          key_7                    0xA05F
          key_8                    0xB04F
          btn_1                    0x8877
          btn_2                    0x50AF
          btn_3                    0x708F
          btn_4                    0x48B7
      end codes

end remote

Ensuite, après avoir relancé le démon lirc, avec la commande irw on peut vérifier qu'à chaque boutons appuyés, le code matériel et l'identifiant s'affichent.

 Affectons donc les boutons qui seront utiles au pilotage :

  • Après pas mal de tests pour voir de cause à effet ce qui se passe pour chaque action, j'ai pu synthétiser le contenu du fichier /usr/share/xbmc/system/Lircmap.xml :
<lircmap>
	<remote device="makotonoremote">
		<play>btn_2</play>	# Lecture et Pause
		<stop>btn_1</stop>	# Stop
		<forward>btn_4</forward>	# Avance Rapide
		<reverse>btn_3</reverse>	# Retour Rapide
		<left>key_4</left>	# Déplacement à Gauche
		<right>key_6</right>	# Déplacement à Droite
		<up>key_2</up>		# Déplacement en Haut
		<down>key_5</down>	# Déplacement en Bas
		<select>key_x</select>	# Validation
		<pageplus>key_8</pageplus>	# Remonter la Page
		<menu>key_1</menu>	# Menu Principal
		<title>key_7</title> # Clic Droit
	</remote>
</lircmap>

dsc07253.png

On retrouve donc bien entendu le nom de la télécommande, sinon ça ne marcherais pas, et les fonctions de bases essentielles au pilotage d'XBMC…

Pour une raison que j'ignore, le bouton «Valider» ne voulait plus fonctionner après la mise à jour d'XBMC en version 10 : Dharma.
J'ai donc simplement édité et changé le nom du bouton dans /etc/lirc/lircd.conf, le passant de key_3 à key_x pour qu'il fonctionne à nouveau… cherche pas à comprendre va ^^"










Hum, bon, un petit mot sur cette nouvelle version «Dharma» d'XBMC sortie récemment;
Pour sa mise à jour, il suffit de faire :

sudo apt-get update && sudo apt-get upgrade

Si malgrès cela ça ne passe pas et que les paquets d'XBMC sont conservés, faire :

sudo apt-get install xbmc -V

pour forcer la mise à jour.

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant une syntaxe wiki simplifiée.

Fil des commentaires de ce billet