[Tutorial] Usar el wiimote en linux con CWiid sin morir en el intento.

Sorteo Hawkers x EOL: iMac, iPad mini 2 y+
1, 2, 3, 4, 5
Oscrp
Adicto
366 mensajes
desde abr 2006
en Delta Halo
Editado 1 vez. Última: 6/05/2007 - 23:12:16 por Oscrp.

Wiimoted 0.1b -- basado en WMD

Imagen


Descarga:

http://oscrp.110mb.com/wiimoted01b.tar.gz

Características:

- Permite usar el wiimote como puntero del raton. Accelerómetros e IR (WMD)
- Crea gráficas con los datos de los accelerometros (WMD)
- Se pueden modificar las acciones de cada botón. Mirar config.py (WMD)
- Incluye un minijuego clon de wii tennis (Peter's Wiigames)
Con las puntuaciones obtenidas se podria hacer un campeonato xdd
- Interfaz sencilla para uso y configuración basada en GTK + Python, cortesía de yo mismo xd. (GPL)
- Todo en español (o casi todo, algo se me pudo escapar ;) )

Anotaciones Rapidas:

- Para instalar, dar permisos de ejecución a instalar.sh y ejecutarlo.
- Es necesario tener uinput activado (mirar abajo)
- Es posible que me falte alguna dependencia en el script instalador, si es así avisadme y lo corregiré :p
- El juego está estancado en fases tempranas de desarrollo (el autor no tiene tiempo para seguir programándolo). Cuando coja mas destreza programando en python (soy aún un aprendiz xd) cogeré el código y le añadiré unas mejoras que tengo en mente. De momento, solo lo he traducido y mejorado en un par de aspectos.
- Recordar modificar en primer lugar el SSID de vuestro wiimote. (Menú configuración del programa)
Para saber el ssid, ejecutar en una terminal : hcitool scan

Salu2 !


------------------------------------- Antiguo tutorial (Cwiid) : ------------------------------------------------

Eii, buenas noches, como veo que no abunda mucho la informacion relativa al uso del wiimote en linux me he currado un pequeño tutorial, para hacerlo funcionar correctamente, y asi poder flipar cuando arrastras ventanitas gelatinosas (beryl) , o mientras vicias al enemy-territory xdd


En primer lugar, partimos de que dispones de un wiimote y un receptor bluetooth correctamente configurado bajo linux (bluez).

Vamos a utilizar una interfaz gráfica del WMD, creada por mi, para hacer mas facil su uso.

La instalación es muy sencilla :

1. Nos bajamos el paquete tar.gz en el que está la aplicación:


En debian/ubuntu:
sudo apt-get install autoconf autotools-dev libbluetooth2-dev libgtk2.0-dev mouseemu


2. Abrimos una terminal, accedemos a la carpeta /etc/udev/rules.d/ y como root editamos “40-permissions.rules”. El comando quedaría así:
sudo gedit /etc/udev/rules.d/40-permissions.rules


3. Vamos hasta el final del archivo, y a continuación de la última linea de texto, escribimos:
KERNEL=="uinput", MODE="0666"

Guardamos, y reiniciamos.

4. Nos descargamos CWiid y lo descomprimimos en nuestro escritorio / cualquier otro sitio. Enlaces:
Versión original (inglés): CWiid-0.4.01.tgz
Versión traducida por mi al español:CWiid-0.4.01esp.tar.gz

5. Volvemos a abrir una terminal / consola y acedemos a la carpeta en la que tenemos el programa.
cd Desktop/CWiid-0.4.01

Si no lo descomprimiste en el escritorio, cambia Desktop, por la carpeta en la que esté.

6. Compilamos la aplicación “a la antigua usanza” xd:
./configure
make
sudo make install

obviamente, estros 3 comandos los debemos ejecutar, en la carpeta del CWiid.

7. Por último, probamos si todo ha ido bien, ejecutando la aplicación desde la misma terminal:
wmgui

Conectamos el wiimote, y activamos en el menú de configuracion, Acc Data, IR Data, y Ext Data, para poder ver la info completa de los acelerómetros, del puntero y de las extensiones (ej. Nunchuck..). Si todo a ido bien os debería funcionar, sino, revisad si habeis seguido bien los pasos ;).

Nota 1: El tutorial esta hecho para Ubuntu edgy 6.10, para otras distros, la instalación no debería variar mucho,
Nota 2: el wmgui, solo sirve para mostrar los datos recibidos del wiimote, asi como, para activar los leds, vibración (:p) y para leer/escribir en la flash del wiimote... Si quieres controlar con el wiimote el pc, debeis usar wminput desde la consola:
wminput :::: movimiento del ratón a través de la función de puntero (muy precisa, se necesita barra sensora)
wminput -t acc :::: movimiento del ratón usando los accelerómetros del wiimando (deja bastante que desear..)
Imagen
Interfaz GTK


Bueno, si teneis alguna duda/problema, no teneis nada más que postearla ;) , cuando pueda, actualizaré el tutorial añadiendole como cambiar las acciones por defecto de cada uno de los botones (keybindings).

Salu2 :-P
mkz71
Getsua Tenshou!!!
653 mensajes
desde oct 2006
en Sevilla
Currado ^^
dr_Rouman
So say we all
3.082 mensajes
desde sep 2006
5 estrellas!

En cuanto me meta en mi edgy lo pruebo y ya cuento =)
OnekO
Link to the past
2.024 mensajes
desde sep 2005
en Barakaldo, Euskal Herria
5 estrellas!!
Araugnir
WYIMNoth
1.608 mensajes
desde abr 2006
en Lost
Wao! va a haber que probarlo con el beryl ^^
elchicosinhada
MegaAdicto!!!
1.436 mensajes
desde ago 2005
Yo lo tiro con mi gentoo y va bien. Lo suyo eske lo puedas usar como joystic... a ver si lo implementa
wuebo
Adicto
307 mensajes
desde ene 2005
Editado 1 vez. Última: 30/01/2007 - 15:46:26 por wuebo.
Lo he estado probando, y el wmgui me va perfecto, pero cuando ejecuto wminput -t acc me da el siguiente error:

unable to find configuration file: using default configuration
loaded acc tracker plugin
unable to open uinput
Fallo de segmentación (core dumped)


Por lo que he leido puede que tenga que ver con lo de añadir:

KERNEL=="uinput", MODE="0666"

en el archivo “40-permissions.rules”, cosa que he hecho, a ver si alquien cae en que puede ocurrir, gracias por adelantado.

Uso Ubuntu Edgy, que se me habia olvidado ponerlo xD.

Por cierto, buen trabajo, ya que en linux la información sobre conectar el wiimote es algo caótica.

Un saludo! :)
Oscrp
Adicto
366 mensajes
desde abr 2006
en Delta Halo
Prueba a ejecutar wminput bajo root (sudo wminput -t acc), si furrula, debe haber un problema con los permisos del uinput. Prueba cambiándo la linea de 40-permissions por KERNEL=="uinput", GROUP="". Donde grupodeusuario, al que pertenece tu user, en ubuntu -> 1000

Sino es así me temo que el kernel que tienes no trae uinput compilado. Usas en ubuntu el genérico de 32 bits?, alguno de 64? o compilado pa tu procesador en especial?

Suerte.. ;)
wuebo
Adicto
307 mensajes
desde ene 2005
Pues sigue sin ir, he probado con varios grupos de usuarios, con sudo, sin sudo... en fin, las cosillas que comentas :/

En cuanto a mi kernel es el que viene de serie con ubuntu edgy: 2.6.17-10-generic, versión de 32 bits.

Si se os ocurre alguna otra posble causa lo pruebo, de todas formas, seguiré indagando a ver, que es lo que realmente vicia de linux ^^ (aún soy bastante novatillo :P)

Saludos![beer]
llyd
Novato
1 mensaje
desde ene 2007
Para edgy hace falta intalar el paquete mouseemu, un emulador del raton

apt-get install mouseemu


Grandioso tutorial, ahora solo me falta colocar bien la barrita porque no tengo narices de que salga el putero en su sitio ^_^
1, 2, 3, 4, 5