ChezManu.eu.org

Accueil // À propos




Sommaire

Pourquoi la Wiimote ?
Petite histoire de la Wiimote
Ce qu'il nous faut
Générer vos slides
Utiliser les outils sous Linux
Cadeau Bonus N°1
Cadeau Bonus N°2

Liens utiles :

Phil Hawksworth utilise aussi une Wiimote, mais préfère le faire avec un logiciel payant sous Windows.
Tableau blanc interactif sous Linux
Wiimote sur le wiki francophone d'Ubuntu
« Wii Remote hacks » : Une vidéo youtube de Johnny Lee.

notes :

[1] Ceci étant, tant qu'on trouvera ce genre d'image mélant sexisme et « geekerie », on n'avancera pas.

[2] Si vous êtes TRÈS nostalgique, pourquoi ne pas montrer que vous avez la NES dans la peau ?

[3] Vous ne téléchargez, bien sur, que ceux dont vous possédez encore la cartouche et surtout pas un seul autre fichier hein. Vous n'imaginez pas le manque à gagner que vous générez pour les vendeurs de cartouches de jeux NES.
 

Wiimote et Linux

Ou comment utiliser une manette de jeu pour animer vos conférences et exposés

Schéma Wiimote

Pourquoi la Wiimote ?

Pourquoi diable utiliser une manette de console de jeu vidéo lorsqu'on présente un exposé ou que l'on donne une conférence ?

La mobilité :
On n'a pas envie, lorsqu'on s'adresse à un public que l'on tente de captiver et de convaincre, de rester statique derrière son pupitre.
Les politiques font ça pour leurs discours, et vous constatez : ils ne sont ni captivants ni convaincants.
Passer à la diapositive suivante sans devoir rester collé à son laptop est un gain appréciable en terme de confort pour le conférencier qui souhaite donner de lui une image vivante et convaincante plutôt que statique et monotone.

Le fun :
Une présentatrice d'une chaîne de télévision de Houston utilisant une Wiimote
Vous voulez attirer l'attention du public, nous sommes bien d'accord ; et la rêgle n°1 lorsqu'on a quelque chose à vendre, que ce soit un aspirateur ou des convictions c'est « on n'a qu'une seule occasion de faire une bonne première impression ».
Avec une manette de jeu vidéo en mains, la première impression pourrait être un sentiment positif d'amusement de la part du public, ce qui est mieux qu'une sensation d'ennui, non ?
Regardez, un peu plus haut, cette présentatrice TV d'une chaîne locale de Houston, elle utilise une Wiimote tout en commentant l'actualité. Qui avez-vous le plus envie de regarder et d'écouter, Claire Chazal, ou elle ?

Le bon sens :
Je ne vois absolument aucune raison d'utiliser (et d'acheter !) une télécommande ennuyeusement classique, qui ne servira qu'à ça.

Le prix :
Regardez le prix d'une télécommande pour PC puis comparez au prix d'une Wiimote.
Si vous vous y prenez bien, le second choix, la Wiimote vous coutera moins cher.
Si vous en possédez déjà une, alors le coût sera même de 0 €.

Le bluetooth :
logo_bluetooth Contrairement à l'Apple Remote (et à bien d'autres), la Wiimote utilise une liaison radio, le bluetooth, et non une liaison infra-rouge.
Du coup pas besoin de devoir pointer la télécommande en direction de l'ordinateur. C'est bien plus pratique, n'en déplaise aux « Apple fanboys » lobotomisés du cerveau par le marketing Apple.

Le fun (bis) :
Sprite 8 bits de Mario Vous passez réellement votre vie à donner des conférences ou faire des exposés ?
Si c'est bien le cas, il va falloir la pimenter et vous détendre un peu ; vos performances oratoires n'en seront que meilleures.
Faites une petite partie de Super Mario (oui ! celui auquel vous avez joué sur NES étant gamin) de temps en temps, votre enfant intérieur vous remerciera.


Petite histoire de la Wiimote

Dès le lancement (1983 aux USA, 1987 en Europe) de sa console 8 bits Nintendo domine durablement le marché du jeu vidéo, en Europe, aux USA et en Asie ; Il met sérieusement à mal l'ancien leader Atari et relègue son principal concurrent, Sega, au rang d'honorable second durant plus d'une décennie.
Après le relatif vautrage de la Nintendo 64 face à la déferlante Playstation et l'arrivée de de la Xbox de Microsoft il est difficile pour Nintendo de sauver l'honneur au milieu des années 2000.
Après avoir résisté tant bien que mal avec sa console Gamecube, Nintendo doit changer sa stratégie pour survivre

Creusons nous la tête.
« une idée, une idée, il faut trouver une putain de bonne idée ! »

En 2006 Nintendo abandonne la course à la puissance de calcul et au réalisme pour se concentrer sur la simplicité et le casual game, ne tentant plus de concurrencer frontalement ses deux rivaux du moment : Sony et Microsoft.
Nintendo tente le pari du jeu rapidement abordable et familial ne demandant pas de s'immerger totalement dans l'ambiance et de se couper du monde extérieur.
Laissant Sony et Microsoft se disputer sur le terrain du jeu vidéo « classique » Nintendo entend ansi prospérer tranquillement sur le segment « marché familial ».

Une belle petite famille blanche et aisée jouant à la Wii
La photo rêvée sortie tout droit du cerveau malade d'un marketeux.
(si on observe bien les cheveux, Mr n'est probablement pas le père, il va moins sourire quand il s'en rendra compte)

Un des axes de cette opération « séduction famille » sera la conception d'une nouvelle manette.
Depuis la NES et la Master System, reines de l'époque 8 bits, à la dernière Playstation en passant par la Mégadrive, c'est toujours le même schéma qui se répète : croix de direction à gauche, bouton de contrôle (les classiques select et start) au centre et boutons d'actions à droite voire au dessus. Seules innovations majeures (yoohoo !) : toujours plus de boutons, la présence d'un stick analogique, et d'un moteur pour faire vibrer la manette.

Une collection de manettes antérieures à la Wii.
NES (1987), PC-Engine (1990), Megadrive (1990), Playstation 2 (2000)

Dans l'optique de cette nouvelle stratégie, Nintendo revoit sa copie et concentre dans sa manette des technologies éprouvées :

  • liaison sans fil Bluetooth ;
  • accéléromètre sur les 3 axes : X, Y et Z ;
  • caméra infra-rouge ;
  • haut-parleur, pour simuler un son, hem, « spatial » ;
  • gyroscope (avec l'extension « Motion Plus »).

Bref, Nintendo réussit à faire du neuf avec du vieux, à rompre avec l'évolution linéaire des manettes qui suivait toujours le même schéma et emploie des technologies peu onéreuses mais suffisamment bien agencées pour rendre la chose impressionnante auprès du grand public.

La liaison bluetooth est LE point fort de cette manette, en terme de détournements, puisqu'il s'agit d'une norme parfaitement définie (et surtout : respectée par Nintendo), documentée et donc (relativement) compatible avec Linux.

Nous n'allons pas utiliser le gyroscope ni la caméra infrarouge (mais elle est très pratique pour mettre en place un tableu blanc interactif sous Linux).
On va à la rigueur utiliser l'accéléromètre, mais surtout exploiter les boutons physiques et le fait que le bluetooth nous permet d'utiliser la Wiimote comme un simple déport du clavier de l'ordinateur dans le cadre d'un exposé.


Ce qu'il nous faut :


Générer vos slides

We Make LaTeX

Après avoir tenté de faire mes slides sous Scribus et mis ma machine à genoux pour générer des PDF de plus de 80 Mo qui mettent le temps de deux clopes à compiler, j'ai bien compris qu'il faut s'y prendre autrement.
N'utilisant pas d'environnements hostiles comme Windows ou MacOS X, mais un amical Unix (une amicale Xubuntu pour être très précis) inutile de compter sur moi pour évoquer Powerpoint de Microsoft ni Keynote d'Apple.
J'ai pour le moment utilisé Beamer, une classe LaTeX pour produire des slides, et Slidy, un machin en javascript fourni par le W3c.

L A T E X :

Bien que réticent à utiliser un outil en apparence un peu aride, je sais qu'en cas de besoin je peux m'adresser à deux pointures en matière de L A T E X , Deuzeffe, active à l'époque (glorieuse) d'Usenet dans des groupes comme fr.comp.text.tex, et Benjamin Bayart, qui, avant d'être connu comme président de FDN l'était principalement comme auteur du Joli Manuel Pour L A T E X , ce qui lui vaut l'affectueux surnom de "TeXosaure".
Armé du code source d'un de ses supports de conférences et des quelques conseils de Mme Deuzeffe, c'est tout de suite plus facile hein.

Il faut bien admettre qu'une fois qu'on a compris grosso modo à quelles règles obéit la syntaxe, tout produire uniquement au clavier, sans devoir perdre son temps à jouer de la souris est vraiment agréable.
Un PDF produit avec Beamer, et les sources correspondantes.

Slidy

(to do : bla bla bla sur slidy)
Le résultat en HTML et les sources dans un .ZIP

Si vous cherchez quelque chose qui ne soit ni Beamer, ni Powerpoint ni Keynote, je vous invite à consulter ce tour d'horizon des alternatives à Beamer sous Unix de Stéphane Bortzmeyer.
Si vraiment vous ne voulez pas vous sortir les doigts du derrière et souhaitez du WYSIWYG clicodrome de fainéants, je suis persuadé que LibreOffice aura le nécessaire pour vous.


Utiliser les outils sous Linux

Pour commencer vous allez utiliser votre logiciel favori de gestion du bluetooth pour vérifier que l'apparairage entre votre PC et la Wiimote s'effectue correctement.
Ici avec Blueman :
Lancez la découverte de périphériques (l'icone loupe) ;
Mettez la Wiimote en mode synchronisation (en pressant 1+2 simultanément).

L'appairage est effectué quand les leds cessent de clignoter.

On remarque que la Wiimote est bien détectée comme un périphérique bluetooth, sous l'identifiant « Nintendo RVL-CNT-01 ».
RVL correspond à « Revolution » , le nom de code employé lors de la phase de développement de la Wii, CNT à « controller » (manette, en bon français).

Gestionnaire Bleman


Passons aux choses sérieuses :

Dans une console, en tant que root (ou en le précédant de sudo, au choix), tapons :
apt-get install lswm wmgui wminput

Ensuite vous trouverez parmi vos programmes, dans le menu « accessoires » (en tout cas sous Xfce) l'utilitaire WMgui.
utilitaire WmGUI

File → Connect (ou Ctrl+C) et l'on vous demande de presser les boutons 1 et 2 de votre Wiimote. Les 4 leds vont clignoter jusqu'à l'appairage.
utilitaire WmGUI
Et vous avez accès aux différentes infos remontées par les capteurs de la Wiimote :
  • pression des touches ;
  • accélération, sur les 3 axes ;
  • niveau de charge des piles ;
  • visualisation de la caméra infra-rouge, on remarque le point noir dans la tuile titrée « IR » : il s'agit de la flamme d'un briquet filmée par la caméra infrarouge de la manette.
Une fois qu'on a fait un peu joujou et vérifié que tous les boutons fonctionnent correctement et que, oui, les accéléromêtres sont très sensibles, on va attaquer un peu de mode texte, rien de bien méchant.
Toujours dans une console, en root ou précédé d'un sudo :
lswm
pour LiSt WiiMote Et notre manette apparait, toujours avec la même adresse BD_ADDR (la version bluetooth d'une adresse MAC).
commande lswm

Il est maintenant temps de décider quelles touches seront affectées.
Dans le répertoire /etc/cwiid/wminput/ se trouvent déjà des exemples de fichiers de configuration.

La syntaxe est assez simple, on déclare une fonction de la Wiimote suivi de l'équivalence sur PC, que ce soit en terme de touches clavier ou de mouvement pour le curseur de la souris. Tout ce qui est précédé d'un dièse (#) est ignoré et sert de commentaire.

J'utilise un fichier nommé wiimote-slides disponible ici.
Wiimote.Left = KEY_LEFT
Wiimote.Right = KEY_RIGHT
Wiimote.Home = KEY_F11 # Fullscreen

##Émulation souris##
include buttons
Plugin.acc.X = REL_X
Plugin.acc.Y = REL_Y
Wiimote.Minus = BTN_LEFT # Clic gauche
Wiimote.Plus = BTN_RIGHT # Clic droit

##Affichage du niveau de charge##
Plugin.led.Battery = 1 # Afficher état de batterie avec A+B

##Verrouilage PC##
Wiimote.1 = KEY_LEFTALT # Touche ALT de gauche
Wiimote.2 = KEY_LEFTMETA # Touche « Win » de gauche
Analysons un peu :

Les deux premières lignes affectent les touches ← et → de la Wiimote à leurs équivalentes sur le clavier.
La troisième ligne affecte le bouton ⌂ (home) de la Wiimote à la touche F11, pour passer en plein écran et lancer la présentation.
Il n'est pas impossible que votre logiciel use de la touche F5 pour basculer en plein écran, vous n'avez qu'à remplacer l'un par l'autre dans le fichier de configuration.

Les lignes suivantes appellent un plugin de WMinput qui lie les valeurs des accéléromètres des axes X et Y aux déplacements du curseur de la souris. On parle bien des accéléromètres, donc vous n'avez pas à pointer la Wiimote vers un quelconque émetteur infrarouge (« Sensor Bar » dans la terminologie Nintendo).

Faites basculer d'avant en arrière et tourner vers la gauche ou la droite votre Wiimote pour déplacer la souris à l'écran.
Moins pratique qu'une souris, il est vrai, mais peut vraiment dépanner.
Puis les lignes suivantes affectent les clics gauche et droit respectivement aux boutons - et + de la Wiimote.

Arrive une ligne qui appelle un autre plugin. Appuyez sur les boutons A et B de votre Wiimite et les 4 leds au bas de la manette indiquent le niveau de charge des piles, toujours pratique.

On verra l'utilité des deux dernières lignes au chapitre Cadeau Bonus N°1.

Libre à vous de personnaliser cette configuration, beaucoup d'utilisateurs de Wiimote en conférences semblent préférer l'usage des touches A et B de la manette au lieu des flèches de ma configuration.
Pour vous repérer facilement sur les noms des boutons de la Wiimote (qui ont été nommés de façon quand même assez naturelle), vous pouvez vous référer à l'image ci-dessous :

correspondance touches/code de la wiimote le nunchuk et la manette classic de la wiimote
Sachez qu'il est tout à fait possible d'utiliser également les touches des accessoires de la Wiimote, le Nunchuk et la manette « classic » ;
la liste des touches est disponible sur le site de Wminput : http://abstrakraft.org/cwiid/browser/doc/wminput.list.
La liste coté clavier PC se trouve sur http://abstrakraft.org/cwiid/browser/wminput/action_enum.txt.

Une fois votre fichier de configuration créé, il ne reste plus qu'à lancer wminput par la commande

wminput -c nom_de_votre_fichier

commande Wminput

Lancez votre lecteur de PDF, votre navigateur web ou votre LibreOffice, et la parole est à vous !


Cadeau Bonus N°1

Une fois votre exposé terminé et les réponses aux questions apportées, il est probable que vous quittiez des yeux quelques instants votre ordinateur.
Pour éviter qu'un⋅e petit⋅e malin⋅e ne profite du fait que vous soyez loin de votre ordinateur pour y jeter un coup d'œil indiscret, il suffit de le verrouiller.
Rappelez-vous des lignes :
(…) ##Verrouilage PC##
Wiimote.1 = KEY_LEFTALT # Touche ALT de gauche
Wiimote.2 = KEY_LEFTMETA # Touche « Win » de gauche

Elles affectent respectivement les touches « ALT » et « Windows » (brr, évoquer la touche windows d'une machine sous Unix…) aux boutons 1 et 2 de la Wiimote. Il suffit d'indiquer à votre système que pour sortir de l'économiseur d'écran il faut taper le mot de passe de votre utilisateur Unix et que le raccourci clavier Alt+Win doit lancer le dit économiseur d'écran ; voici comment faire sous Xfce 4.10 :
Raccourcis clavier XFCE

  • dans votre gestionnaire de paramêtres, allez donc aux préférences clavier ;
  • créez un nouveau raccourci qui aura pour trigger Alt+Super_L ;
  • indiquez que cela doit déclencher la commande light-locker-command -l ;
  • validez ;
  • une fois votre Wiimote appairée appuyez sur 1+2 simultanément (ou sur les touche Alt et Win de gauche de votre clavier.
Économiseur d'écran Linux
PAF ! Un ordinateur verrouillé.



Cadeau Bonus N°2

Une wiimote skinnée et son ancêtre
Jeu NES castlevania Jeu NES Zelda 2

On a une manette. On a dit que cette manette pourrait servir à autre chose que juste faire défiler les slides d'un exposé.
Vous avez la nostalgie de la NES ? [2]
C'est parti !
Étape 1 :
Installons un émulateur NES et son front-end graphique :
sudo apt-get install gfceu

Étape 2 :
Utilisons un fichier nommé, par exemple, wiimote-nes
## Croix directionelle ##
Wiimote.Up = KEY_LEFT
Wiimote.Down = KEY_RIGHT
Wiimote.Left = KEY_DOWN
Wiimote.Right = KEY_UP

## Boutons d'actions : A,B 1 & 2 ##
Wiimote.1 = KEY_A
Wiimote.2 = KEY_B
Wiimote.Minus = KEY_Q
Wiimote.Plus = KEY_S

Plugin.led.Battery = 1

On y voit un mic-mac on l'on retourne les touches de la Wiimote de 90° (le haut devient la gauche, la gauche devient le bas, etc…)
Puis qu'on a affecté 1,2,+ et - sur la Wiimote ) A,Z,Q et S sur le clavier.
Et enfin le petit plugin pour connaitre l'état des batteries en pressant A + B en même temps.
Étape 3 :
Comme pour le cas précédent des slides de l'exposé, on va charger wminput avec le bon fichier de configuration :
wminput -c nom_de_votre_fichier

commande Wminput
Étape 4 :
On lance notre émulateur NES, on va dans l'onglet « Input » et on clique sur « Gamepad 1 » :
le menu input de Gfceu
Puis on presse (deux fois) le bouton de Wiimote correspondant au bouton de la manette NES émulée demandée par le pop-up de la manière suivante :
  • Croix directionnelle : pas la peine de vous faire un dessin
  • « 1 » de la Wiimote pour B
  • « 2 » de la Wiimote pour A
  • « - » de la Wiimote pour Select
  • « + » de la Wiimote pour Start
  • et n'importe quelle touche non-affectée (W par exemple) du clavier pour « Rapid A » et « Rapid B », qui ne sont que des options de tricheurs.
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche
Une affectation de touche Une affectation de touche

Étape 5 :
Il n'y a plus qu'à lancer l'émulateur avec le fichier ROM du jeu de votre choix.
DISCLAIMER :il est légalement interdit de posséder un fichier ROM si patati patata, tout ça tout ça…
Maintenant que vous êtes prévenus… sachez qu'il existe une petite collection de ROMs pour NES disponible via The Pirate Bay [3].
le menu principal de Gfceu l'écran d'intro de DD2 sur NES
HAVE FUN !
(et n'oubliez pas :↑ ↑ ↓ ↓ ← → ← → B A )



1983 - 2016 // Emmanuel Bourguin