Aujourd’hui, un post sur une bidouille qui pourra en intéresser certains : le montage d’un trackpad multitouch sur un MacBook Pro qui n’en était pas équipé à la base, et les modifications nécessaires. Pour faire simple : j’avais un MacBook Pro Santa Rosa (modèle juin 2007) sans le multitouch, il en est maintenant équipé.
Attention : avant de cliquer sur lire la suite, il faut bien prendre en compte que la manipulation reste complexe, qu’elle nécessite des modifications matérielles et logicielles et qu’elle reste assez compliquée. Si vous n’êtes pas certains de vous, n’essayez pas chez vous, vous risquez de rendre votre MacBook Pro inutilisable.
Le multitouch est une technologie amusante, et plutôt pratique. Les premiers MacBook Pro n’en étaient pas équipés, mais les dernières générations, à base de Penryn, ont été équipées de cette technologie apparue sur le MacBook Air. Comme ces appareils utilisent le même châssis que les anciens modèles, il est tout à fait possible d’installer un trackpad multitouch sur les anciens modèles. Contrairement à ce que certains semblent croire, le multitouch n’est pas entièrement logiciel et il nécessite un trackpad adapté. Sur le MacBook Pro, le trackpad est lié à ce qu’on appelle le topcase, c’est-à-dire le dessus du boîtier interne. Pour passer au multitouch, j’ai donc dû acheter un topcase de MacBook Pro Penryn. C’est une pièce assez simple à trouver, même si le prix peut être élevé (par exemple chez PowerbookMedic ou chez iFixit). Une fois la pièce reçue, il faut l’installer. Je ne vais pas détailler le démontage du MacBook Pro, mais il faut savoir que c’est une opération complexe, à réserver aux utilisateurs avertis. De plus, le topcase est vendu sans clavier : il va donc falloir démonter le clavier de l’ancien topcase pour le placer sur le nouveau topcase. C’est une opération assez compliquée et qui va poser quelques problèmes, nous le verrons par la suite.
Pour le démontage, je ne peux que vous conseiller le guide de MacBidouille.
Une fois le topcase et le clavier installé, bonne nouvelle, le multitouch est pleinement fonctionnel, mais pas toutes la machine. En fait, deux problèmes subsistent : le premier vient du fait que les Préférences Système ne contiennent pas certains fichiers nécessaires à la gestion du multitouch, le second provient du clavier, qui voit certaines touches changer d’effet.
Régler le problème des Préférences Système
Pour les Préférences Système, c’est assez simple : Apple propose des vidéos pour expliquer comment utiliser le trackpad, et un Mac qui n’a pas de multitouch n’a pas ces vidéos. Deux solutions s’offrent à vous : soit vous avez un ami avec un Mac équipé du multitouch (mon cas, merci Vincent) soit vous n’avez pas d’amis. Commençons par le second cas : il va falloir créer (avec QuickTime, par exemple) un fichier .mov, contenant ce que vous voulez (ce n’est pas réellement important).
Une fois ce fichier créé, il va falloir le copier dix fois et renommer les différentes copies. Voici la liste (attention, les majuscules sont importantes) : SecondaryClickTap.mov, SecondaryClick.mov, TapToClick.mov, Rotate.mov, Pinch.mov, Scroll.mov, Swipe.mov, ScreenZoom.mov, Dragging.mov, DragLock.mov.
La deuxième étape consiste à placer ces fichiers au bon endroit. Déplacez-vous (avec le Finder) à la base de votre disque dur. Ensuite rentrez dans le répertoire Système, puis dans répertoire Bibliothèque, ensuite dans le répertoire PreferencePanes. Une fois dans ce dernier, cliquez droit sur le fichier Keyboard.prefPane et choisissez Afficher le contenu du paquet. Une nouvelle fenêtre s’ouvre, cliquez sur Contents puis sur Resources. Copiez enfin les fichiers .mov dans le répertoire en question. Ensuite, il suffit de redémarrer le Mac et voilà, ça fonctionne.
Pour ceux qui ont une connaissance qui dispose d’un Mac multitouch, la manipulation est pratiquement identique : il suffit de copier les fichier directement depuis la source (/Système/Bibliothèque/PreferencesPanes/Keyboard.prefPane/Contents/Resources). Attention, il faut partir d’un MacBook Air ou d’un MacBook Pro Penryn, pas d’un des nouveaux modèles.
Un gros problème de clavier
Un autre problème est survenu, dont la résolution m’a pris un certain temps : le clavier. Faisons simple : les MacBook Pro, jusqu’au Penryn, ont les fonctions OSD suivantes : luminosité, son, verr. num., gestion de l’écran, gestion de l’éclairage du clavier. Sur les Penryn, les touches ont changé de fonction : luminosité, exposé, gestion de l’éclairage du clavier, iTunes, son. Petit problème, le contrôleur clavier est lié au trackpad et Mac OS X considère donc que si on a un trackpad multitouch, on a aussi un clavier de MacBook Penryn. Mais comme expliqué plus haut, j’ai gardé un clavier de MacBook Pro Santa Rosa. Au final, les fonctions des touches ne correspondaient pas aux fonctions dessinées sur ces dernières. Très vite énervant.
Comment corriger ça ? Après quelques recherches, j’ai finalement trouvé comment modifier les fonctions. Attention, la manipulation est potentiellement cause de plantages et je vous conseille de garder une partition Mac OS X bootables pour récupérer les fichiers.
Le fichier à modifier se situe dans le répertoire suivant : /Système/Bibliothèque/Extensions. Dans ce répertoire, il faut chercher le fichier AppleUSBTopCase.kext, cliquer droit sur ce dernier, Afficher le contenu du paquet, se déplacer dans /Contents/Plugin/, cliquer droit sur le fichier AppleUSBTCKeyEventDriver.kext et choisir Afficher le contenu du paquet, se déplacer dans /Contents/ et enfin éditer le fichier Info.plist. Ouf.
Ce fichier XML contient les données nécessaires aux claviers des PC portables Apple, il faut l’éditer avec précautions. Globalement, chaque clavier dispose d’un nom de code, en fonction de la machine, et existe en trois versions : ANSI, ISO et JIS. Deux noms de code seront nécessaires ici : GeyserIV, qui correspond au MacBook Pro Santa Rosa, et WellspringII, le MacBook Pro Penryn. Pour mon modèle (belge), c’est la version ISO qui est importante.
Les fonctions des touches sont encodées de la manière suivante : il faut rechercher le nom du clavier (par exemple WellspringIIKeyboardISO), ensuite la clé FnFunctionUsageMap. Comme son nom l’indique, cette dernière fait le lien entre la fonction et la touche.
On retrouve une chaîne de caractères qui comprend des associations : “0x0007003a,0x00ff0005,0x0007003b,0x00ff0004″. Le premier ensemble de caractère désigne la touche Fn+F1, le second la fonction, ici “Diminuer la luminosité”. Le troisième ensemble représente Fn+F2, le quatrième code la fonction “Augmenter la luminosité”, etc. En modifiant la liste, on peut donc modifier les fonctions des touches pour qu’elles soient les mêmes que celles dessinées sur le clavier.
Voici la liste d’une partie des codes :
0x0007003a : Fn+F1
0x0007003b : Fn+F2
0x0007003c : Fn+F3
0x0007003d : Fn+F4
0x0007003e : Fn+F5
0x0007003f : Fn+F6
0×00070040 : Fn+F7
0×00070041 : Fn+F8
0×00070042 : Fn+F9
0×00070043 : Fn+F10
0×00070044 : Fn+F11
0×00070045 : Fn+F12
0x00ff0005 : Diminuer la luminosité
0x00ff0004 : Augmenter la luminosité
0x000c00e2 : Couper le son
0x000c00ea : Diminuer le son
0x000c00e9 : Augmenter le son
0×00070083 : Passer en verrouillage numérique
0x00ff0006 : Changer la gestion écran
0x00ff0007 : Couper l’éclairage clavier
0x00ff0009 : Diminuer la luminosité du clavier
0x00ff0008 : Augmenter la luminosité du clavier
0x000C00CD : Play
0x000C00B4 : Retour
0x000C00B3 : Avance
D’autres codes existent, notamment pour les fonctions d’Exposé.
Une fois la chaîne modifiée, il faut sauver le fichier en gardant les droits : attention, certains programmes ne les gardent pas. Comme Mac OS X garde certains fichiers en cache, il va falloir effectuer deux actions pour prendre en compte les modifications : la première consiste à effacer les caches systèmes (avec Onyx, par exemple), la seconde consiste à redémarrer deux fois. Pourquoi deux ? Aucune idée, mais en ne redémarrant qu’une fois, ça ne fonctionne pas.
Pour l’exemple, la chaîne que j’ai utilisée pour mon clavier :
0x0007003a,0x00ff0005,0x0007003b,0x00ff0004,0x0007003c,0x000c00e2,
0x0007003d,0x000c00ea,0x0007003e,0x000c00e9,0x0007003f,0x000C00CD,
0×00070040,0x00ff0006,0×00070041,0x00ff0007,0×00070042,0x00ff0009,
0×00070043,0x00ff0008,0×00070044,0x000C00B4,0×00070045,0x000C00B3
Pour ceux qui ont suivi et lu ma chaîne, ils remarqueront que j’ai supprimé le Verr. Num. et que je l’ai remplacé par Play, et que j’ai utilisé F11 et F12 (qui n’ont pas de fonctions par défaut) pour les touches de commande iTunes.
J’ai donc maintenant une machine unique : un MacBook Pro multitouch avec un clavier qui est équipé d’une touche avec une Pomme…

Vive la Belgique libre !
Comment by JS — 18 November 2008 @ 10:31
[...] son Blog, Pierre relate la manière dont il a installé un trackpad multitouch sur son MacBook Pro Santa [...]
Pingback by easylo » Archive du blog » Un trackpad multitouch sur un MBP Santa Rosa — 18 November 2008 @ 10:58
Je n’ai rien compris mais ça a l’air vachement intéressant
Comment by David Bénard — 18 November 2008 @ 11:24
Moi j’ai tout compris et je trouve excellent ! Bravo pour la manip et merci pour le récit détaillé.
Comment by Elie — 18 November 2008 @ 12:23
C’est un fou ce type
GG
Comment by Vincent — 18 November 2008 @ 18:54
Ah pas mal cette modif d’un autre belge à Paris !
Comment by Pat — 4 December 2008 @ 12:09
Vive la Belgique libre !
Comment by Macbook — 6 December 2008 @ 23:08
I dont know what to expect from them. They are so good indeed.
Comment by Macbook — 6 December 2008 @ 23:24
Hey Belge – thanks for all your info…after having damaged my original top-case, i installed the multitouch top-case, but had some trouble with the key bindings…now everything works fine…merci bien
Comment by ab — 11 December 2008 @ 23:18
[...] y a quelques semaines, j’expliquais comment j’avais installé un trackpad multitouch sur un MacBook Pro équipé avec un modèle classique à la base. Entre-temps, Apple a sorti une nouvelle génération [...]
Pingback by Un Belge à Paris » Archive du blog » Quatre doigts sur un trackpad de MacBook Pro classique — 17 December 2008 @ 1:37