Part.1 – Installer Lirc
1. Installation du paquet.
sudo apt-get install lirc
2. Editer le fichier /etc/modules pour lancer dev lirc au boot.
lirc_dev lirc_rpi gpio_in_pin=numeroPin # En l'absence de cette ligne le capteur devra être brancher en GPIO18
Important : Les gpio 28, 29, 30 et 31 (connecteur P5) ne sont pas déclarés dans Lirc, il est nécessaire de recompiler un patch disponible à cette adresse.
3. Modifier le fichier de configuration /etc/lirc/hardware.conf
# /etc/lirc/hardware.conf # # Arguments which will be used when launching lircd LIRCD_ARGS="--uinput" # Don't start lircmd even if there seems to be a good config file # START_LIRCMD=false # Don't start irexec, even if a good config file seems to exist. # START_IREXEC=false # Try to load appropriate kernel modules LOAD_MODULES=true # Run "lircd --driver=help" for a list of supported drivers. DRIVER="default" # usually /dev/lirc0 is the correct setting for systems using udev DEVICE="/dev/lirc0" MODULES="lirc_rpi" # Default configuration files for your hardware if any LIRCD_CONF="" LIRCMD_CONF=""
4. Rebooter le raspberry et lancer un test mode2.
mode2 -d /dev/lirc0
La console retourne les codes IR sous la forme « pulse 599 space 528 etc… »
Taper Ctrl + C pour revenir à l’invite de commande.
5. Enregistrement des codes IR dans un fichier config
irrecord -d /dev/lirc0 ~/lircd.conf
Suivre les instructions du terminal.
La liste des touches s’obtient avec la commande ci-dessous ou en consultant ce lien.
irrecord --list-namespace
Le fichier lircd.conf généré doit ressembler à l’arborescence suivante. Le fichier peut être édité pour changer le nom de la télécommande ainsi que le nom des touches.
begin remote name myRemote bits 32 flags SPACE_ENC|CONST_LENGTH eps 30 aeps 100 header 9038 4456 one 606 1642 zero 606 518 ptrail 603 repeat 9042 2206 gap 107968 toggle_bit_mask 0x0 begin codes KEY_POWER 0x00FFA25D end codes end remote
6. Déplacement du fichier de configuration et redémarrage du daemon.
sudo cp lircd.conf /etc/lirc/lircd.conf sudo /etc/init.d/lirc restart
7. Lancer la commande irw puis appuyer sur les touches de la télécommande. Le terminal doit retourner le nom de la touche enfoncée.
8. Démarrer les services automatiquement au boot.
update-rc.d lirc defaults update-rc.d irexec defaults # à vérifier
Part.2 – Installer Pylirc
1. Installation du paquet python-pylirc.
sudo apt-get install python-pylirc
2. Création du fichier ~/.lircrc pour le daemon lircd.
begin remote = myRemote prog = myProg button = KEY_POWER config = myVariable repeat = 0 end
3. Instancier pylirc dans le code python.
import pylirc pylirc.init("myProg","pathLircrc") # /home/pi/.lircrc list = pylirc.nextcode() if list is not None: for code in list: if code == "myVariable": code...
Important : Pylirc n’est pas compatible avec Python 3.x, utiliser la version 2.7
So, what do you think ?