Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[HOWTO] Télécommande Ati Remote Control sous linux
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index French
View previous topic :: View next topic  
Author Message
Antares
Apprentice
Apprentice


Joined: 04 Apr 2005
Posts: 184
Location: France

PostPosted: Mon Aug 08, 2005 2:59 am    Post subject: [HOWTO] Télécommande Ati Remote Control sous linux Reply with quote

C'est juste une petite méthode pour optimiser un peu le fonctionnement de votre télécommande sous linux... C'est bien pratique quand votre PC fait DivX box, télé, chaine hifi,Lecteur DVD, etc...

CONFIGURATION DU SYSTEM

Premièrement, il faut sélectionner le module ati_remote dans le noyau :

Code:
Symbol: USB_ATI_REMOTE
 Prompt: ATI / X10 USB RF remote control
   Defined at drivers/usb/input/Kconfig:223
   Depends on: USB && INPUT
   Location:
     -> Device Drivers
     -> USB support


et ajouter une pitite section dans le fichier /etc/X11/xorg.conf :

Code:
Section "InputDevice"
Identifier "My ati remote control"
Driver "mouse"
Option "Protocol" "PS/2"
Option "Device" "/dev/input/mice"
Option "SendCoreEvents"
EndSection


sans oublier de la déclarer dans la section "ServerLayout" :

Code:
InputDevice "My ati remote control" "CorePointer"


Maintenant, on mets en route le tsouintsouin :

Code:
# modprobe ati_remote
# echo "ati_remote" >> /etc/modules.autoload.d/kernel-2.6


C'est parti !

CONFIGURATION DES TOUCHES DE LA TELECOMMANDE

En fait, la télécommande est reconnue comme une extension du clavier. Ainsi, quand on modifie certaines touches de la télécommande, on modifie des touches du clavier. Conclusion, faut faire gaffe et s'en rappeler sinon après on comprend plus rien.

J'utilise 3 outils pour configurer les touches de ma télécommande : xbindkeys, xvkbd et xmodmap.
--> xbindkeys pour configurer de facon permanente certaines touches de la télécommande
--> xvkbd pour émuler les combinaisons de touches
--> xmodmap pour configurer temporairement les touches de la télécommande.

On va commencer par la config de xbindkeys :
Pour récupérer le keycode d'un touche il suffit de faire comme ca :

Code:
# xbindkeys -k


et on appuie sur la touche dont on veut le code.

Par exemple pour la touche espace de mon clavier :

Code:
# xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
 "NoCommand"
     m:0x10 + c:65
     Mod2 + space


Comme c'est indiqué lorsqu'on exécute la commande il faut éditer le fichier ~/.xbindkeysrc comme ceci :
Code:
"Commande à executer quand la touche est pressée"
    KEYCODE (par exemple  m:0x10 + c:65)


C'est là qu'entre en jeu xvkbd pour avoir une combinaison de touches liée à un seul bouton de la télécommande.
Xvkbd s'utilise comme ceci :

Code:
# xvkbd -text "Combinaison de touches"


Heureusement, on peut mettre les touches "spéciales" du claviers dans les combinaisons de touches :
- \r - Entrée
- \t - Tab
- \b - Espace
- \e - Echap
- \d - Delete
- \S - Shift (modifie le caratère suivant)
- \C - Control (modifie le caractère suivant)
- \A - Alt (modifie le caractère suivant)
- \M - Meta (modifie le caractère suivant)
- \[keysym] - le keysym correspondant

Ainsi, pour avoir la touche POWER (rouge) de la télécommande agissant comme ALT+F4, il faut faire :

Code:
# xbindkeys -k
Press combination of keys or/and click under the window.
You can use one of the two lines after "NoCommand"
in $HOME/.xbindkeysrc to bind a key.
"NoCommand"
    m:0x10 + c:222
    Mod2 + NoSymbol


Et on récupère le keycode de la touche power, et ensuite on mets ceci dans le fichier ~/.xbindkeysrc :

Code:
"xvkbd -text "\A\[F4]" "
    m:0x10 + c:222


Enfin, on peut choisir de reconfigurer la télécommande pour chaque application (xmms, mplayer, tvtime, ogle...) avec xmodmap.
Il faudra pour cela éditer un fichier de config pour chaque application avec cette syntaxe :

keycode KEYCODE = KEYSYM

où KEYCODE est le numéro de la touche (222 pour la touche POWER, utilisée juste avant) et KEYSYM est la touche que l'on veut (a, b, c, d, 1, 2, 3...)

Voilà ma config pour certaines applications :

Code:
# cat ~/.xmodmap_tvtime

!################################################
!############ ATI REMOTE CONTROL ################
!################## TVTIME ######################
!################################################

!Quit
keycode 10 = 1
keycode 11 = 2
keycode 12 = 3
keycode 13 = 4
keycode 14 = 5
keycode 15 = 6
keycode 16 = 7
keycode 17 = 8
keycode 18 = 9
keycode 19 = 0
!Chanel +
keycode 105 = Up
!Chanel -
keycode 99 = Down



Code:
# cat ~/.xmodmap_xmms   
 
!################################################
!############ ATI REMOTE CONTROL ################
!################### XMMS #######################
!################################################

!Play
keycode 168 = x
!Pause
keycode 110 = c
!Stop
keycode 232 = v
!Next track
keycode 233 = b
!Previous track

keycode 152 = z
!Shuffle
keycode 26  =  s
!Repeat
keycode 41 =  r



Code:
# cat ~/.xmodmap_gmplayer

!################################################
!############ ATI REMOTE CONTROL ################
!################# GMPLAYER #####################
!################################################

!Play
keycode 168 = Return
!Pause
keycode 110 = p
!Stop
keycode 232 = s
!Next track
keycode 233 = greater
!Previous track
keycode 152 = less
!Quit

keycode 222 = q




Ainsi, au lieu de lancer l'application nommée GN2 avec la commande "GN2", on la lance avec :

Code:
# xmodmap ~/.xmodmap_GN2 | GN2


Il suffit donc d'insérer tout ceci dans le fichier ~/.xbindkeysrc.


Cependant, comme je l'ai signalé au début, la télécommande est une extension du clavier. Par exemple, avec le xmodmap de tvtime, les touches de 1 à 9 du clavier sont modifiées aussi. Il va donc falloir reconfigurer le clavier au moment de quitter l'application. J'ai choisi de la faire de cette façon : quand je presse la touche POWER, ça fait la combinaison ALT+F4 et ensuite ca reconfigure tout.(dans ~/.xbindkeysrc)

Code:
"xvkbd -text "\A\[F4]" && xmodmap ~/.xmodmap_restore "
    m:0x10 + c:222


Avec ~/.xmodmap_restore :

Code:
# cat ~/.xmodmap_restore

clear Mod1
clear Mod2
keycode   9 = Escape Escape
keycode  10 = ampersand 1
keycode  11 = eacute 2 dead_tilde
keycode  12 = quotedbl 3 numbersign
keycode  13 = apostrophe 4 braceleft
keycode  14 = parenleft 5 bracketleft
keycode  15 = minus 6 bar
keycode  16 = egrave 7 dead_grave
keycode  17 = underscore 8 backslash
keycode  18 = ccedilla 9 asciicircum
keycode  19 = agrave 0 at
keycode  20 = parenright degree bracketright
keycode  21 = equal plus braceright
keycode  22 = BackSpace
keycode  23 = Tab Tab
keycode  24 = a
keycode  25 = z
keycode  26 = e E EuroSign
keycode  27 = r
keycode  28 = t
keycode  29 = y
keycode  30 = u
keycode  31 = i
keycode  32 = o
keycode  33 = p
keycode  34 = dead_circumflex  dead_diaeresis
keycode  35 = dollar sterling currency
keycode  36 = Return
keycode  37 = Control_L
keycode  38 = q
keycode  39 = s
keycode  40 = d
keycode  41 = f
keycode  42 = g
keycode  43 = h
keycode  44 = j
keycode  45 = k
keycode  46 = l
keycode  47 = m M
keycode  48 = ugrave percent
keycode  49 = twosuperior
keycode  50 = Shift_L
keycode  51 = asterisk mu
keycode  52 = w
keycode  53 = x
keycode  54 = c
keycode  55 = v
keycode  56 = b
keycode  57 = n
keycode  58 = comma question dead_cedilla
keycode  59 = semicolon period
keycode  60 = colon slash Multi_key
keycode  61 = exclam section
keycode  62 = Shift_R
keycode  63 = KP_Multiply
keycode  64 = Alt_L Meta_L
keycode  65 = space space
keycode  66 = Caps_Lock
keycode  67 = F1 F11
keycode  68 = F2 F12
keycode  69 = F3 F13
keycode  70 = F4 F14
keycode  71 = F5 F15
keycode  72 = F6 F16
keycode  73 = F7 F17
keycode  74 = F8 F18
keycode  75 = F9 F19
keycode  76 = F10 F20
keycode  77 = Num_Lock
keycode  78 = Scroll_Lock
keycode  79 = KP_7
keycode  80 = KP_8
keycode  81 = KP_9
keycode  82 = KP_Subtract
keycode  83 = KP_4
keycode  84 = KP_5
keycode  85 = KP_6
keycode  86 = KP_Add
keycode  87 = KP_1
keycode  88 = KP_2
keycode  89 = KP_3
keycode  90 = KP_0
keycode  92 = Sys_Req
keycode  94 = less greater bar
keycode  95 = F11 F11
keycode  96 = F12 F12
keycode  98 = Up
keycode  99 = Prior
keycode 100 = Left
keycode 102 = Right
keycode 104 = Down
keycode 105 = Next
keycode 106 = Insertkeycode 107 = Delete
keycode 108 = KP_Enter
keycode 109 = Control_R
keycode 112 = KP_Divide
keycode 113 = Mode_switch
keycode 114 = Break
keycode 110 = Find


! right windows-logo key
! in "windows" keyboards the postion of the key is annoying, is where AltGr
! usually resides, so go definie it as AltGr
keycode 116 = Mode_switch
! right windows-menu key
keycode 117 = Multi_key
add Mod1 = Alt_L Meta_L
add Mod2 = Num_Lock
add Mod4 = Super_L Super_R Super_L Hyper_L
add Mod5 = Mode_switch  ISO_Level3_Shift


Ou alors on peut aussi générer le fichier avec cette commande : (merci bong)
Code:

$ xmodmap -pke > ~/.xmodmap_restore

(cette commande doit etre tapée à partir d'un mapping vierge de toutes modifications...)

ASTUCES

Des pitites astuces pour peaufiner la config :

Pour la touche MUET : si comme moi vous voulez utiliser cette touche pour couper le son et le remettre, il suffit d'utiliser cette commande :

Code:
"amixer set Master toggle"
    m:0x10 + c:160


Pour les touches du volume :

Code:
"amixer set Master 1-"
    m:0x10 + c:174

"amixer set Master 1+"     
    m:0x10 + c:176



J'ai remarqué que quelques fois la télécommande était détectée en tant que m:0x00 et pas m:0x10. Je sais pas encore trop pourquoi , mais la solution que j'ai trouvé pour l'instant c'est de dupliquer le fichier ~/.xbindkeys pour que ça fonctionne dans les deux cas :

Code:
# cat ~/.xbindkeysrc

###########################
# xbindkeys configuration #
###########################

"amixer set Master 1-"
    m:0x10 + c:174

"amixer set Master 1+"
    m:0x10 + c:176

"amixer set Master toggle"
    m:0x10 + c:160

"xvkbd -text "\A\[F4]" && xmodmap ~/.xmodmap_restore "
    m:0x10 + c:222

"xvkbd -text  "\C\A\[Left]" "
    m:0x10 + c:146

"xvkbd -text "\C\A\[Right]" "
    m:0x10 + c:140

"xvkbd -text "\A\[Escape]" "
    m:0x10 + c:177

"xmodmap ~/.xmodmap_tvtime | tvtime"
    m:0x10 + c:159

"ogle"
    m:0x10 + c:151

"xterm"
    m:0x10 + c:178

"xmodmap ~/.xmodmap_gmplayer | gmplayer"
    m:0x10 + c:230

"xmodmap ~/.xmodmap_xmms | xmms"
    m:0x10 + c:136

##############################################################################

"amixer set Master 1-"
    m:0x0 + c:174

"amixer set Master 1+"
    m:0x0 + c:176

"amixer set Master toggle"
    m:0x0 + c:160

"xvkbd -text "\A\[F4]" && xmodmap ~/.xmodmap_restore "
    m:0x0 + c:222

"xvkbd -text  "\C\A\[Left]" "
    m:0x0 + c:146

"xvkbd -text "\C\A\[Right]" "
    m:0x0 + c:140

"xvkbd -text "\A\[Escape]" "
    m:0x0 + c:177

"xmodmap ~/.xmodmap_tvtime | tvtime"
    m:0x0 + c:159

"ogle"
    m:0x0 + c:151

"xterm"
    m:0x0 + c:178

"xmodmap ~/.xmodmap_gmplayer | gmplayer"
    m:0x0 + c:230

"xmodmap ~/.xmodmap_xmms | xmms"
    m:0x0 + c:136


##################################
# End of xbindkeys configuration #
##################################



Maintenant c'est bon, vous pouvez faire la feignasse et ne plus vous lever de votre fauteuil..... :D


Last edited by Antares on Fri Nov 04, 2005 11:04 pm; edited 2 times in total
Back to top
View user's profile Send private message
dreamer86
Apprentice
Apprentice


Joined: 08 Aug 2004
Posts: 207
Location: Poitiers - France

PostPosted: Mon Aug 08, 2005 7:33 am    Post subject: Reply with quote

Tu aurais pas un howto pour l'ati remote avec lirc aussi ? :roll:
Back to top
View user's profile Send private message
anigel
Bodhisattva
Bodhisattva


Joined: 14 Apr 2003
Posts: 1894
Location: Un petit bled pas loin de Limoges ;-)

PostPosted: Mon Aug 08, 2005 9:34 am    Post subject: Reply with quote

dreamer86 wrote:
Tu aurais pas un howto pour l'ati remote avec lirc aussi ? :roll:


Si si, aussi : voir ce HOWTO ;-) !
_________________
Il y a 10 sortes d'individus en ce bas-monde : ceux qui causent binaire, et les autres.
Back to top
View user's profile Send private message
Antares
Apprentice
Apprentice


Joined: 04 Apr 2005
Posts: 184
Location: France

PostPosted: Mon Aug 08, 2005 12:48 pm    Post subject: Reply with quote

l'interet de ma methode, c'est que la télécommande a une configuration différente pour chaque application (plus pratique quand on utilise pas freevo).... Je crois pas que ca fonctionne de la sorte avec lirc.:wink:
Back to top
View user's profile Send private message
Antares
Apprentice
Apprentice


Joined: 04 Apr 2005
Posts: 184
Location: France

PostPosted: Wed Oct 26, 2005 12:10 am    Post subject: Reply with quote

Ce Howto a été retranscris sur fr.gentoo-wiki.org :D
Back to top
View user's profile Send private message
bong
Apprentice
Apprentice


Joined: 26 Oct 2004
Posts: 276
Location: Brest / Metz

PostPosted: Wed Oct 26, 2005 11:45 am    Post subject: Reply with quote

Juste une remarque,
ton fichier ~/.xmodmap_restore est quelque peux corrompu (doublons, etc..) donc si comme moi la premiere fois le mec qui suit ton how-to se contente d'un "copier/coller", il aura des surprises :wink: , tu devrais ajouter qu'on peut facilement en generer un de cette maniere:
Code:
$ xmodmap -pke > ~/.xmodmap_restore

Evidement, cette commande doit etre tapée à partir d'un mapping vierge de toutes modifications...
Back to top
View user's profile Send private message
Antares
Apprentice
Apprentice


Joined: 04 Apr 2005
Posts: 184
Location: France

PostPosted: Wed Oct 26, 2005 12:12 pm    Post subject: Reply with quote

bizarre, j'ai mis le fichier que j'utilise et je n'ai aucun soucis...(note, j'ai un clavier completement normal, pas de touches spéciales etc..) ca se manifestait par quoi ton problème?
Back to top
View user's profile Send private message
bong
Apprentice
Apprentice


Joined: 26 Oct 2004
Posts: 276
Location: Brest / Metz

PostPosted: Wed Oct 26, 2005 1:35 pm    Post subject: Reply with quote

j'avais des problemes de caracteres en double, je me rappelle plus lesquels mais c'est pas important...
Par contre, tu devrais ajouter ajouter la commande ne serait-ce que pour ceux qui n'ont pas le meme mapping.
Back to top
View user's profile Send private message
Antares
Apprentice
Apprentice


Joined: 04 Apr 2005
Posts: 184
Location: France

PostPosted: Fri Nov 04, 2005 11:05 pm    Post subject: Reply with quote

voila c'est ajouté !! merci du coup de main
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index French All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum