C'est Wiili le projet qui permet tout ça: http://www.wiili.org/
Je vais citer les noms des paquets debian à installer, mais je suis presque sûr que ça marche aussi sous d'autre distributions.
Il faut:
- une wiimote ;-)
- un ordinateur sous debian avec bluetooth fonctionnel. La wiimote utilise une connection bluetooth. Un dongle bluetooth fait parfaitement l'affaire.
- de préférence une « wii sensor bar » ou bien un ou plusieurs projecteurs IR (InfraRouge) ou un bricolage avec des LED IR. J'ai écrit « de préférence » parce qu'on peut faire sans, en utilisant les accéléromètres mais c'est beaucoup moins pratique. Une « wii sensor bar» à piles se trouve dans le commerce (fnac par exemple). La « wii sensor bar » qui «détecte» les mouvements n'est rien d'autre que quelque LED IR. Ce système IR doit être placé à proximité de l'écran (dessous, dessus, sur le côté...).
Marche à suivre:
- installer bluez-utils et wminput.
- ajouter uinput aux modules chargés au démarrage, i.e. dans /etc/modules.
- configurer udev pour que uinput soit utilisable par tous. Un fichier dans /etc/udev/rules.d/ contenant
KERNEL=="uinput", MODE="0666"
fera ça très bien. Pour affiner les droits aller voir en [1].- relancer udev et charger uinput ensuite, ou redémarrer le système comme du temps de Windows.
- configurer X: il faut qu'il utilise evdev comme pointeur. Voir par exemple (en bas de la page): http://www.circuitdb.com/articles/7/3
C'est tout. Dans un terminal lancer
wminput -c ir_ptr
et ça marche. Pas besoin d'être Utilisateur_root si vous avez configuré udev correctement.Notez que sous debian la configuration par défaut utilise les accéléromètres et non pas l'infrarouge, d'où l'option "-c ir_ptr". On peut changer ça dans /etc/cwiid/wminput, ce qui permet de lancer wminput sans option.
Vous pouvez ensuite utiliser GCompris pour vous entraîner à piloter le pointeur de loin. Ce n'est pas si facile d'être précis.
Plus quà écrire un pilote pour la « wii balance board » pour piloter le pointeur en faisant bouger le centre de gravité. Les geeks vont pouvoir garder la forme.
[1] http://www.wiili.org/index.php/Wminput
# Wii balance board
Posté par Sébastien B. . Évalué à 6.
[^] # Re: Wii balance board
Posté par fleny68 . Évalué à 3.
[^] # Re: Wii balance board
Posté par Rémi Laurent (site web personnel) . Évalué à 1.
$ dpkg -L wminput | grep neverball
/etc/cwiid/wminput/neverball
Après, pour utiliser ce profil,
wminput -c /etc/cwiid/wminput/neverball
et c'est parti
Sinon il est aussi très facile de faire son propre fichier de configuration et de mapper à peu près n'importe quelle touche ( dont les macro correspondantes sont listées dans un header du kernel Linux /usr/include/linux/input.h ).
J'en ai fait un tout bête pour keyjnote par exemple ( la partie X,Y peut être remplacée par les deux lignes 'Plugin.ir_ptr.X = ~ABS_X' et 'Plugin.ir_ptr.Y = ~ABS_Y', pour utiliser le capteur infrarouge ):
$cat keyjnote
#keyjnote
Plugin.acc.X = REL_X
Plugin.acc.Y = REL_Y
Wiimote.A = BTN_LEFT
Wiimote.B = KEY_ENTER
Wiimote.Up = KEY_UP
Wiimote.Down = KEY_DOWN
Wiimote.Left = KEY_LEFT
Wiimote.Right = KEY_RIGHT
Wiimote.Minus = KEY_KPMINUS
Wiimote.Plus = KEY_KPPLUS
Wiimote.Home = KEY_TAB
Wiimote.1 = KEY_W
Wiimote.2 = KEY_Z
# Mon plugin pour le pointeur
Posté par chimrod (site web personnel) . Évalué à 10.
Le plugin ne prend pas en compte la rotation de la wiimote ( cela fait bouger le curseur alors que cela ne devrait pas quand on fait tourner la wiimote sur elle même )
Le plugin ne prend pas en compte quand un point sort du champ
Et enfin, impossible de recadrer la souris ( comme quand on soulève la souris pour la reposer à l'autre coin du tapis )
J'ai écrit un petit plugin en python, prenant en compte tout ça. La touche B neutralise le déplacement du pointeur ( ça n'est pour l'instant pas paramétrable ), et gère les cas ou un point sort du champs et un autre apparaît dans l'autre coin sans que le curseur traverse l'ensemble de l'écran. Le plugin est en python, pour le rendre executable il suffit de le placer dans le répertoire contenant les autres plugins ( /usr/lib/cwiid/plugins/ ) . Quand il est lancé en main, il utilise pygame pour afficher les points dans l'écran.
J'ai des projets pour ce petit plugin, changer de mode suivant une config de bouton ( pour passer du mode souris au mode joystick par exemple ), mettre en place des combinaisons de boutons ( 1 + 2 renverrai clic droit) etc. Si qqn veut se lancer dans le projet, il est le bienvenue !
Voici la config que j'utilise pour charger le plugin :
#ir_ptr
Wiimote.A = BTN_LEFT
Plugin.ir_control.X = REL_X
Plugin.ir_control.Y = REL_Y
Et le lien vers mon code :
http://www.chimrod.com/downloads/ir_control.py
Bon jeu à tous !
[^] # Re: Mon plugin pour le pointeur
Posté par fleny68 . Évalué à 2.
Il faut le mettre où ton ir_control.py ? sur ma debian j'ai juste un ir_ptr.so
[^] # Re: Mon plugin pour le pointeur
Posté par fleny68 . Évalué à 2.
Le plugin est en python, pour le rendre executable il suffit de le placer dans le répertoire contenant les autres plugins ( /usr/lib/cwiid/plugins/ ) . Quand il est lancé en main, il utilise pygame pour afficher les points dans l'écran.
[^] # Re: Mon plugin pour le pointeur
Posté par fleny68 . Évalué à 3.
http://www.chimrod.com/downloads/ir_control.py
Ça marche ! Et c'est magnifique. Merci beaucoup.
Je peux te demander si tu sais si on peut mapper un des boutons pour remplacer le double-click ? Je me disais que ça serait pratique.
Sinon tu as oublié de mettre une licence sur ton code ;-)
[^] # Re: Mon plugin pour le pointeur
Posté par chimrod (site web personnel) . Évalué à 1.
C'est vrai pour la licence, à partir sur des bouts de codes, on fini par oublier de fignoler ça une fois le code terminé :) Voilà qui est corrigé !
# Bougie
Posté par jardiland . Évalué à 6.
Allumez simplement une bougie à côté de l'écran, et ça marche ! (ça tremblote un peu par contre).
# quelques exemples
Posté par passant·e . Évalué à 6.
http://johnnylee.net/projects/wii/
Je trolle dès quand ça parle business, sécurité et sciences sociales
[^] # Re: quelques exemples
Posté par Maclag . Évalué à 2.
En pratique, comme d'hab, suis toujours pas programmeur: oubliez pas de mettre mon nom sur la page d'accueil du projet que vous allez coder sans moi, tout ça…
Moi j'ai été plus impressionné par l'idée du tableau blanc, sachant que les "micro-projecteurs" vont arriver sur le marché d'ici quelques années (enfin, même avant, mais je veux dire avec une autonomie raisonnable et à la portée de tout le monde).
L'avenir sera au netbook fusionné avec le PDA/Téléphone portable: en mode netbook, le projecteur envoie l'image sur une surface devant vous, et une caméra transforme cette même surface en écran tactile.
Toutes les variantes sont permises (surface "écran" et surface "tactile" séparée, etc.).
[^] # Re: quelques exemples
Posté par KiKouN . Évalué à 1.
J'avais fais ça simplement sur mon N82. Un script en python sur le téléphone pour envoyer les données des accéléromètres et des touches et un petit script en bash avec netcat et xautomation côté PC. Du vrai bricolage mais se fut amusant.
[^] # Re: quelques exemples
Posté par nicko . Évalué à 1.
[^] # Re: quelques exemples
Posté par Maclag . Évalué à 2.
[^] # Re: quelques exemples
Posté par Larry Cow . Évalué à 2.
[^] # Re: quelques exemples
Posté par Maclag . Évalué à 2.
Ce qui signifie que pour concevoir un système de pointage à partir d'une source IR, il faut que la source soit largement plus puissante que toutes les sources environnantes parasites, tellement puissante que la réflexion de cette source sur des petits bouts de scotch au bout des doigts sera également largement plus puissante que les sources environnantes, à commencer par la main de l'utilisateur.
Cette source largement plus puissante est dans le cas qui nous intéresse placée juste en face de la gueule de l'utilisateur, dont les pupilles ne savent toujours pas s'en protéger.
C.Q.F.D.
# Wiimote et ergonomie
Posté par Moogle . Évalué à 2.
# wiili
Posté par Pierre . Évalué à 5.
Le site de reference sur le hack wii et wiimote est:
http://www.wiibrew.org/wiki/Wiimote
[^] # Re: wiili
Posté par Pierre . Évalué à 2.
[^] # Re: wiili
Posté par Olivier Esver (site web personnel) . Évalué à 1.
il existe des patchs pour la balance http://abstrakraft.org/cwiid/ticket/63 et la guitare GHWT : http://abstrakraft.org/cwiid/ticket/79
cwiid est aussi dans ubuntu d'origine.
Donc en gros wiili n'y est surement pour rien dans wminput, je pensais d'ailleurs que ce site était mort....
S'il y a un problème, il y a une solution; s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
[^] # Re: wiili
Posté par jiyuu . Évalué à 10.
Donc, ça veut dire qu'ils n'ont pas réussi à sauver wiili ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.