wouldsmina
Posts: 8
Joined: Tue Oct 30, 2012 10:12 am

[TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sat Dec 29, 2012 9:59 am

Bonjour,
J'ai cherché comment utiliser une télécommande infrarouge sur RPi sur la toile et je suis tombé sur http://forum.stmlabs.com/showthread.php?tid=1954 en anglais! Après 1 heure, je pu m’affaler sur la canapé avec ma vieille télécommande de démodulateur!
Alors pour ceux qui ne veulent pas perdre de temps a comprendre l'anglais, voici mon tuto.

Pour commencer, vous devez avoir un récepteur infrarouge. Il y en a pour moins de 5 euros sur internet mais si vous êtes impatient comme moi démontez en un sur le premier appareil avec télécommande infrarouge...

Brancher le récepteur
Si vous avez récupérer le récepteur directement sur un appareil électronique, vous devez trouver la masse et le plus. En général, les broches sont disposé ainsi (en regardant le récepteur coté bombé).
led.jpg
led.jpg (2.38 KiB) Viewed 45037 times
Il faut brancher le récepteur directement sur les ports GPIO comme suit : 3.3V sur la broche 1, Masse sur la broche 6 et Sortie sur la broche 1 (la broche 1 est la plus pres de la carte SD).
gpio.jpg
gpio.jpg (10.74 KiB) Viewed 45037 times
Voila, l'aspect électronique est terminé. Passons aux logiciels.

Configurer lirc
Commençons par activer le module lirc dans le Kernel par la commande

Code: Select all

modprobe lirc_rpi
Pour s'assurer que l'infrarouge passe bien, exécuter la commande

Code: Select all

mode2 -d /dev/lirc0
Normalement vous devriez avoir des chiffres qui s'affichent lorsque vous appuyez sur une touche de la télécommande, sinon il va falloir creuser d’où viens le problème (Bon courage !)

Configurer la télécommande avec Lirc
Dans le fichier /etc/lirc/hardware.conf assurez vous que les paramètres suivants sont bien renseignés :

Code: Select all

DRIVER="default" 
DEVICE="/dev/lirc0" 
MODULES="lirc_rpi"
LIRCD_ARGS="--uinput"
Le dernier paramètre ne semble pas obligatoire, en tout cas moi je l'ai pas saisie et ça marche...

Lirc est maintenant configuré par défaut. Certaines télécommandes sont déjà implémenté pour vous en assurer, exécutez la commande "irw". Pour ma part, j'utilise une télécommande de démodulateur analogique...

Pour générer la configuration de votre télécommande, il faut arrêter Lirc et exécuter irrecord

Code: Select all

/etc/init.d/lirc stop
irrecord -d /dev/lirc0 ~/lircd.conf
Cette configuration ce passe en plusieurs étapes :
- appuyez sur les touches au hasard pendant une seconde à chaque fois jusqu'à que deux lignes de point s'affichent a l'écran ( Attention : si vous n'appuyez pas sur une touche pendant 10 secondes le processus s’arrête.)
- Saisissez le nom de la touche que vous souhaitez référencer puis appuyer sur le bouton correspondant les touches les plus utiles sont les suivantes :
KEY_HOME
KEY_BACK
KEY_SELECT
KEY_LEFT
KEY_RIGHT
KEY_UP
KEY_DOWN
KEY_FASTFORWARD
KEY_FORWARD
KEY_REWIND
KEY_PLAYPAUSE
KEY_STOP
KEY_INF
Si vous souhaitez configurer d'autres touches vous pouvez afficher toutes les commandes possible par la commande "irrecord –list-namespace"

Enfin copiez le contenu du fichier /home/pi/lircd.conf à la fin du fichier /etc/lirc/lircd-full.conf en vous assurant que la deuxième ligne contient bien "name default".
Pour je ne sais quelle raison, Lirc ne veux pas repartir après un irrecord. Vous devez maintenant redémarrer raspbmc.

Il ne vous reste plus qu'a faire la correspondance des touches de Lirc avec raspbmc. Pour cela, créer le fichier "/home/pi/.xbmc/userdata/Lircmap.xml" pour y insérer les valeurs suivantes :

Code: Select all

<lircmap>
  <remote device="default">
    <back>KEY_BACK</back>
    <menu>KEY_HOME</menu>
    <up>KEY_UP</up>
    <left>KEY_LEFT</left>
    <select>KEY_SELECT</select>
    <right>KEY_RIGHT</right>
    <down>KEY_DOWN</down>
    <stop>KEY_STOP</stop>
    <info>KEY_INFO</info>
    <skipminus>KEY_REWIND</skipminus>
    <play>KEY_PLAYPAUSE</play>
    <skipplus>KEY_FASTFORWARD</skipplus>
  </remote>
</lircmap>
Voila, il n'y a plus qu'a...
A+

Starkdop
Posts: 14
Joined: Wed Dec 19, 2012 7:30 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sat Dec 29, 2012 1:24 pm

Superbe tuto, félicitation :P
Personnellement, j'ai installé Raspbmc, j'ai branché mon RSP sur ma télé via HDMI et la magie fait que je peux contrôler mon RSP avec la télécommande de ma télé. Je n'ai absolument configuré.
Je te laisse imaginer la tête que je faisais quand j'ai vu ça :roll:

UltraByte
Posts: 53
Joined: Sat Sep 08, 2012 12:40 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sat Dec 29, 2012 1:48 pm

Oui sans recepteur IR sur le raspi c'est tres fort :lol:

Vincoll
Posts: 19
Joined: Sat Dec 29, 2012 4:06 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sat Dec 29, 2012 4:19 pm

@Starkdop
La Magie c'est du CEC 8-)

Merci pour le tuto ! Moi qui décourageait à brancher le dongle IR de la Xbox1 (qui était enfaite mort).

Est-il possible d'envoyer des Informations en plus d'en recevoir afin qu'elle soient capté par une Chaine Hifi :?:
Par exemple.
But de la manœuvre Play/Pause...Éteindre en IR ma Chaine Hifi via une commande ssh

J'ai un peu réfléchit à la chose :
Une phase d’apprentissage du Rpi grâce à la télécommande qui contrôle la chaine.
Puis un clonage de l'onde IR envoyé par le raspberry Pi à la chaine .

wouldsmina
Posts: 8
Joined: Tue Oct 30, 2012 10:12 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sat Dec 29, 2012 11:22 pm

oui il est aussi possible de brancher un emetteur sur la broche 11. les details sur le pilote sont ici: http://aron.ws/projects/lirc_rpi/

Starmina
Posts: 4
Joined: Sun Dec 30, 2012 3:37 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sun Dec 30, 2012 3:38 pm

Yo j'ai un petit souçis, quand je fais sudo mode2 -d /dev/lirc0
il me dit

Code: Select all

mode2: could not open /dev/lirc0
mode2: default_init(): Device or resource busy
Une idée :/ ?

wouldsmina
Posts: 8
Joined: Tue Oct 30, 2012 10:12 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Mon Dec 31, 2012 9:13 am

il faut arreter lirc. ou tuer le processus avec killall lirc
a+

sky99
Posts: 6
Joined: Wed Nov 07, 2012 4:12 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Tue Jan 01, 2013 12:33 am

très intéressant, j'avais commencé à coder quelque chose pour décoder les signaux IR, mais
il y avait beaucoup de filtrage à faire ^^
Du coup c'est plus pratique s'il y a un module déjà codé :)

Ceci dit, je vais quand même regarder dans leur code la procédure de filtrage des signaux IR,
comme ça du coup je pourrai proposer une mini lib à intégrer dans ses programmes C...

Starmina
Posts: 4
Joined: Sun Dec 30, 2012 3:37 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Fri Jan 04, 2013 5:19 am

wouldsmina wrote:il faut arreter lirc. ou tuer le processus avec killall lirc
a+
Super ça marche ! Merci !

J'voulais savoir, il y moyen de faire fonctionner ça sur Raspbian sachant que lirc n'est pas inclu :/ ?

maxkweeger
Posts: 8
Joined: Tue Mar 05, 2013 12:52 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Tue Nov 05, 2013 9:08 am

Bonjour,
Super tuto !

Il y a un truc pas claire
Il faut brancher le récepteur directement sur les ports GPIO comme suit : 3.3V sur la broche 1, Masse sur la broche 6 et Sortie sur la broche 1 (la broche 1 est la plus pres de la carte SD).
Tu branches le 3,3v sur la broche 1, c'est OK
La masse sur la broche 6, c'est OK
Mais la Sortie tu la branche aussi sur la 1 ???

++
MaxKweeger

i-zerocool
Posts: 98
Joined: Tue Oct 02, 2012 10:27 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Tue Nov 05, 2013 9:15 am

non c'est sur la broche 12 qu'il faut brancher la sortie du récepteur IR.
d'ailleurs on le voit sur le schéma: la broche 12 est indiqué.

maxkweeger
Posts: 8
Joined: Tue Mar 05, 2013 12:52 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Tue Nov 05, 2013 9:33 am

Merci i-zerocool

Effectivement, sur le site en anglais aussi ils parlent de la broche12.
C'est juste une coquille, je suis allé trop vite.

++
Max

totoharibo
Posts: 4649
Joined: Thu Jan 24, 2013 8:43 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Wed Nov 06, 2013 8:56 am

+10
j'ajoute que pour utiliser dans un script bash j'ai ajouté cela :
###################initialisation
#pipe pour liaison
PIPE=/tmp/lirc
#reglage telecommande
#cree pipe
mkfifo $PIPE
#tue les irw (télécommande) existants
pkill irw
#lance télécommande
irw | awk -Winteractive '{print $3}' > $PIPE &

###########ensuite pour lire les codes envoyés un simple :
read -e telecommande

Seul problème la répétition des commandes quand on laisse le doit sur la télécommande.

totoharibo
Posts: 4649
Joined: Thu Jan 24, 2013 8:43 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Wed Nov 06, 2013 8:59 am

j'ai oublié à la fin une boucle pour traiter :
while [ 1 ] ; do
read -e telecommande
<ce que je dois faire avec le code reçu (telecommande)>
done < $PIPE

Mes plus plates excuses.

Evo
Posts: 1
Joined: Thu Jan 23, 2014 5:42 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Thu Jan 23, 2014 5:50 pm

Bonjour,
Les explications sont très claire! mais comme je suis sous Openelec cela ne marche pas..
Est ce que quelqu'un saurez faire la même chose mais sous Openelec?
Merci!

totoharibo
Posts: 4649
Joined: Thu Jan 24, 2013 8:43 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sun Jan 26, 2014 9:42 pm

je ne connais pas openelec mais c'est du "sur mesure" pour un médiacenter.

Il n'y a pas d'extensions possibles à moins de développer spécialement.
À priori pas de console non plus mais un accès ssh. Peut-être possible de programmer lirc si les programmes sont présents.

Il y a un forum en particulier : http://openelec.tv/forum/103-infared-remotes. Ya sans doute des infos là bas.

Ou alors installer Raspbian et y ajouter XBMC (et lirc ...). Ça a déjà du être fait avec le RPi.
Sans doute plus gros mais sans bloquage pour des extensions et bidouilles éventuelles.

papiroff
Posts: 6
Joined: Tue Jul 23, 2013 8:49 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Fri May 23, 2014 5:42 pm

Bonjour,
J'ai essayé de configurer ma télécommande, mais après :

Code: Select all

irrecord -d /dev/lirc0 ~/lircd.conf
J'ai eu :

Code: Select all

something went wrong
J'ai 10 tentatives mais à chaque fois, cela me met ça. Que dois-je faire ?
Merci pour votre aide :)

Bon au bout de la X tentative, cela a marcher mais ma telecommande ne telecommande rien du tout --'

Clemzo
Posts: 17
Joined: Thu Dec 25, 2014 9:03 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sun Jan 25, 2015 2:35 pm

Bonjour et merci pour ce tuto de base simple d'approche.

Cependant, mes faibles connaissances me font bloquer sur la 2nd ligne de commande :
Quand je rentre :

Code: Select all

mode2 -d /dev/lirc0
mon Raspberry me répond :

Code: Select all

-bash: mode2 : commande introuvable
Je suis sous Raspbian

Faut-il installer autre chose avant ?

Merci pour votre indulgence.

jelopo
Posts: 1713
Joined: Wed Oct 17, 2012 7:53 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sun Jan 25, 2015 9:07 pm

@clemzo
Il faut installer lirc

Code: Select all

sudo apt-get install lirc

Clemzo
Posts: 17
Joined: Thu Dec 25, 2014 9:03 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Sun Jan 25, 2015 10:32 pm

C'était simple.
Merci.

totoharibo
Posts: 4649
Joined: Thu Jan 24, 2013 8:43 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Mon Jan 26, 2015 1:54 pm

Clemzo wrote:C'était simple.
Merci.
et pour ajouter des touches sous Raspbian ça se passe dans /home/pi/.config/openbox/rc.xml
sous menu "keyboard"
Utiliser geany pour éditer le fichier (aller dans document -> tout plier) et cliquer sur les + pour ouvrir les menus.

Clemzo
Posts: 17
Joined: Thu Dec 25, 2014 9:03 am

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Mon Jan 26, 2015 6:18 pm

Super, merci beaucoup pour ce complément.

mauricefabre
Posts: 1
Joined: Sun Jun 23, 2013 8:48 pm

Re: [TUTO] Raspbmc : Utiliser une telecommande infrarouge

Thu Feb 19, 2015 9:46 am

avec un peu de retard, il y a une petite coquille : la broche out du TSOP se branche sur la broche 12 du raspberry, et non pas sur la 1 comme indiqué dans le tuto.

Return to “Français”