Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Dernière révision Les deux révisions suivantes | ||
telecommande_avec_recepteur_usb_hid [Le 24/03/2011, 10:53] Alain_the_cat |
telecommande_avec_recepteur_usb_hid [Le 24/03/2011, 11:14] Alain_the_cat |
||
---|---|---|---|
Ligne 24: | Ligne 24: | ||
La réalisation matérielle du récepteur USB HID à base d'un microcontrôleur PIC Microchip est décrite sur le site : | La réalisation matérielle du récepteur USB HID à base d'un microcontrôleur PIC Microchip est décrite sur le site : | ||
- | http://pagesperso-orange.fr/IR.solutions/ | + | http://pagesperso-orange.fr/IR.solutions/ |
Le montage est préprogrammé pour une télécommande avec un protocole RC5. | Le montage est préprogrammé pour une télécommande avec un protocole RC5. | ||
Ligne 34: | Ligne 34: | ||
Pour vérifier la prise compte de ce matériel par Linux, utilisez la commande lsusb . | Pour vérifier la prise compte de ce matériel par Linux, utilisez la commande lsusb . | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~$ lsusb | alain@alain-desktop:~$ lsusb | ||
Bus 002 Device 015: ID 1234:2009 | Bus 002 Device 015: ID 1234:2009 | ||
- | Le matériel est ici reconnu : ID 1234:2009 | + | Le matériel est ici reconnu : ID 1234:2009. |
<note>Éventuellement, déclarez votre télécommande dans le fichier /var/lib/misc/usb.ids . | <note>Éventuellement, déclarez votre télécommande dans le fichier /var/lib/misc/usb.ids . | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~$ sudo gedit /var/lib/misc/usb.ids | alain@alain-desktop:~$ sudo gedit /var/lib/misc/usb.ids | ||
Ligne 58: | Ligne 58: | ||
Vérifiez de nouveau la présence de votre télécommande : | Vérifiez de nouveau la présence de votre télécommande : | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~$ lsusb | alain@alain-desktop:~$ lsusb | ||
Ligne 72: | Ligne 72: | ||
Ce récepteur est un récepteur HID qui n'est pas supporté en natif par LIRC. | Ce récepteur est un récepteur HID qui n'est pas supporté en natif par LIRC. | ||
- | Un 'mappeur' générique HID a été développé par Coldsource et décrit sur le site de XBMC : http://forum.xbmc.org/showthread.php?t=88560 . Il peut convertir n'importe quel signal HID à un événement clé . | + | Un 'mappeur' générique HID a été développé par Coldsource et décrit sur le site de XBMC : http://forum.xbmc.org/showthread.php?t=88560 . Il peut convertir n'importe quel signal HID à un événement clé. |
Le mode opératoire détaillé ci-dessous est repris de cet auteur et adapté ici à ce matériel. | Le mode opératoire détaillé ci-dessous est repris de cet auteur et adapté ici à ce matériel. | ||
Ligne 144: | Ligne 144: | ||
Ensuite allez au répertoire hid_mapper, par exemple : cd /home/...../hid_mapper_beta. Ensuite, tapez 'make' pour compiler le pilote. | Ensuite allez au répertoire hid_mapper, par exemple : cd /home/...../hid_mapper_beta. Ensuite, tapez 'make' pour compiler le pilote. | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents$ cd /home/alain/Documents/hid_mapper_beta | alain@alain-desktop:~/Documents$ cd /home/alain/Documents/hid_mapper_beta | ||
Ligne 164: | Ligne 164: | ||
Enfin, tapez ./hid_mapper --list-devices pour voir si votre appareil est reconnu. Par exemple, j'ai : | Enfin, tapez ./hid_mapper --list-devices pour voir si votre appareil est reconnu. Par exemple, j'ai : | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --list-devices | alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --list-devices | ||
Ligne 179: | Ligne 179: | ||
- | Ensuite, vous devez utiliser hid_mapper en mode apprentissage pour capturer les événements HID: | + | Ensuite, vous devez utiliser hid_mapper en mode apprentissage pour capturer les événements HID : |
./hid_mapper --learn --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --map ' ' | ./hid_mapper --learn --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --map ' ' | ||
Ligne 186: | Ligne 186: | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ ./hid_mapper --learn --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --map '' | alain@alain-desktop:~/Documents/hid_mapper_beta$ ./hid_mapper --learn --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --map '' | ||
Ligne 194: | Ligne 194: | ||
Tapez CTRL C pour terminer. | Tapez CTRL C pour terminer. | ||
- | A ce premier événement « touche OK enfoncée" correspond le code événement. Capturez tous les événements dont vous avez besoin et reliez les à une clé utilisable par Linux (KEY_UP par exemple) afin d'écrire un fichier 'map' de votre télécommande. Pour une meilleur compréhension, le mapping obtenu pour ma télécommande et le fichier rc5_thomson_rct_311.map créé à partir de là sont donnés en annexe. | + | A ce premier événement « touche OK enfoncée" correspond le code événement. Capturez tous les événements dont vous avez besoin et reliez les à une clé utilisable par Linux (KEY_UP par exemple) afin d'écrire un fichier 'map' de votre télécommande. Pour une meilleure compréhension, le mapping obtenu pour ma télécommande et le fichier rc5_thomson_rct_311.map créé à partir de là sont donnés en annexe. |
Pour une autre télécommande ou pour une autre utilisation, la liste des touches possibles (KEY_UP par exemple) peut être trouvée dans /usr/include/linux/input.h. | Pour une autre télécommande ou pour une autre utilisation, la liste des touches possibles (KEY_UP par exemple) peut être trouvée dans /usr/include/linux/input.h. | ||
Ligne 201: | Ligne 201: | ||
- | La dernière étape consiste à exécuter le 'mappeur': | + | La dernière étape consiste à exécuter le 'mappeur' : |
Nota : l'option - -disable-repetition évite la répétition des touches. | Nota : l'option - -disable-repetition évite la répétition des touches. | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --disable-repetition --map 'rc5_thomson_rct_311.map' | alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --disable-repetition --map 'rc5_thomson_rct_311.map' | ||
Ligne 213: | Ligne 213: | ||
Generic USB mapper driver setup | Generic USB mapper driver setup | ||
- | À ce stade, la télécommande devrait fonctionner : appuyez sur la touche 1 de votre télécommande, le lien avec KEY_1 devrait faire apparaître 1 (ou & si votre clavier est en majuscule) sur terminal | + | À ce stade, la télécommande devrait fonctionner : appuyez sur la touche 1 de votre télécommande, le lien avec KEY_1 devrait faire apparaître 1 (ou & si votre clavier est en majuscule) sur terminal. |
<note>Si vous avez le message suivant (pour ma part, il apparaît à chaque reboot) : | <note>Si vous avez le message suivant (pour ma part, il apparaît à chaque reboot) : | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --disable-repetition --map 'rc5_thomson_rct_311.map' | alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --disable-repetition --map 'rc5_thomson_rct_311.map' | ||
Ligne 226: | Ligne 226: | ||
Vérifiez si 'uinput' est installé. | Vérifiez si 'uinput' est installé. | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ ls -l /dev/uinput | alain@alain-desktop:~/Documents/hid_mapper_beta$ ls -l /dev/uinput | ||
Ligne 233: | Ligne 233: | ||
Dans ce cas il faut l'installer par la commande modprobe : | Dans ce cas il faut l'installer par la commande modprobe : | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo modprobe uinput | alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo modprobe uinput | ||
Ligne 240: | Ligne 240: | ||
Une vérification : | Une vérification : | ||
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ ls -l /dev/uinput | alain@alain-desktop:~/Documents/hid_mapper_beta$ ls -l /dev/uinput | ||
Ligne 246: | Ligne 246: | ||
- | Cette fois-ci, vous devriez obtenir un bon fonctionnement: | + | Cette fois-ci, vous devriez obtenir un bon fonctionnement : |
- | Terminal: | + | Terminal : |
alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --map 'rc5_thomson_rct_311.map' | alain@alain-desktop:~/Documents/hid_mapper_beta$ sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --map 'rc5_thomson_rct_311.map' | ||
Ligne 266: | Ligne 266: | ||
Pour vous éviter d'écrire la longue ligne de commande précédente, vous pouvez utiliser ce petit script à créer avec Gedit : script_remote1.sh et à placer dans le répertoire hid_mapper_beta (à adapter en fonction de votre configuration) : | Pour vous éviter d'écrire la longue ligne de commande précédente, vous pouvez utiliser ce petit script à créer avec Gedit : script_remote1.sh et à placer dans le répertoire hid_mapper_beta (à adapter en fonction de votre configuration) : | ||
- | Gedit: | + | Gedit : |
#!/bin/bash | #!/bin/bash | ||
Ligne 274: | Ligne 274: | ||
cd /home/alain/Documents/hid_mapper_beta | cd /home/alain/Documents/hid_mapper_beta | ||
sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --disable-repetition --map 'rc5_thomson_rct_311.map' | sudo ./hid_mapper --manufacturer 'MICROCHIP' --product 'USB IR DECODER' --disable-repetition --map 'rc5_thomson_rct_311.map' | ||
- | exit 0 | + | exit 0 |
Ainsi pour profiter de votre télécommande : | Ainsi pour profiter de votre télécommande : | ||
- | branchez votre récepteur USB | + | * branchez votre récepteur USB |
- | lancez juste le script avec le terminal sur son emplacement | + | * lancez juste le script avec le terminal sur son emplacement |
- | Terminal: | + | Terminal : |
alain@alain-desktop:~$ cd /home/alain/Documents/hid_mapper_beta | alain@alain-desktop:~$ cd /home/alain/Documents/hid_mapper_beta | ||
Ligne 348: | Ligne 348: | ||
- | Ce fichier est à compléter de la même façon avec avec c0 (pour tv) remplacé par 50 (pour dvd) et par 20 (pour dec) | + | Ce fichier est à compléter de la même façon avec avec c0 (pour tv) remplacé par 50 (pour dvd) et par 20 (pour dec). |