mod_wii

Started by grisendo, April 21, 2010, 06:30:04 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

grisendo

Bueno, sé que hay un port de Bennu a la Wii (el cual no he podido probar), pero no he encontrado nada para utilizar el mando de la Wii en Bennu para PC... así que como lo necesito, lo estoy haciendo  ;D

Tengo algún pequeño problema puntual, pero está bastante avanzada la cosa. Esta noche intentaré tener algo publicable :D

Lo podéis apuntar a la lista de extensiones "work in progress"

FreeYourMind

Muy buena idea :) Lo ideal es que permitierá configurar tanto el mando de Wii en pc como en al propia wii, para el mismo dcb, sin tener que cambiar en nada los controles.

grisendo

Ale, un aperitivo :D Wiimote, nunchuk, vibración, rotación, movimiento (para esto hace falta barra sensora)...
En el PRG de ejemplo están prácticamente todas las funciones de la librería (otro rato subo la lista completa).
Incluye librerías DLL para Windows y SO para GNU/Linux, la dependencia wiiuse.dll/libwiiuse.so está incluida (no sé si tiene más dependencias del bluetooth o algo...).

http://www.grisendo.com/proyectos/mod_wii/mod_wii_no_src.rar

El código para cuando lo pula un poco más  :)

Por cierto, si alguien se anima acepto la siguiente donación para el proyecto: una barra de leds infrarrojos que pueda enchufar por USB
(tengo que estar probando con dos velas que no puedo volcar porque escurren líquido, y tengo que apuntar desde arriba xDD)

FreeYourMind

Yo te dono un karma que es lo único que tengo  ;D

SplinterGU

ahi fue mi karma...

las donaciones por aqui estan duras... :D
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

josebita

El códido del soporte para la wii (lo he llamado mod_wpad) lo tengo preparado para compilar como módulo para la versión oficial de Bennu.
Ahora mismo compila pero sólo devuelve valores por defecto (para poder compilar el mismo código en el ordenador y en la Wii).
Si quieres, podemos juntar los códigos para tener el mismo conjunto de funciones.

osk


grisendo

Quote from: josebita on April 21, 2010, 09:22:20 PM
El códido del soporte para la wii (lo he llamado mod_wpad) lo tengo preparado para compilar como módulo para la versión oficial de Bennu.
Ahora mismo compila pero sólo devuelve valores por defecto (para poder compilar el mismo código en el ordenador y en la Wii).
Si quieres, podemos juntar los códigos para tener el mismo conjunto de funciones.

Perfecto :D No es plan de que cada uno llame a las mismas funciones de forma distinta  :P

Infórmame mejor, porque yo de port Bennu para consola Wii ni idea... no puedo probarlo porque la Wii es de mi hermano (le estoy robando
el mando jeje) y no puede ejecutar homebrew (que yo sepa).

DCelso

Quote from: grisendo on April 21, 2010, 10:49:03 PM
...
.. y no puede ejecutar homebrew (que yo sepa).
Todas las wiis hasta la fecha pueden, otra cosa es que no lo hayaso hayan instalado.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

josebita

Quote from: grisendo on April 21, 2010, 10:49:03 PM
[...]
Perfecto :D No es plan de que cada uno llame a las mismas funciones de forma distinta  :P

Infórmame mejor, porque yo de port Bennu para consola Wii ni idea... no puedo probarlo porque la Wii es de mi hermano (le estoy robando
el mando jeje) y no puede ejecutar homebrew (que yo sepa).
Bueno, con que puedas probarlo en el ordenador me vale :)

Drumpi

Mmmmm, tendría que ponerme al corriente de los nuevos leds que han salido al mercado (porque los que se estudian en clase son los típicos rojos de 1,2V), pero hacer una barra "sensora" (mal dicho, porque es justo lo contrario, el sensor está en el mando de la Wii) es bastante sencillo, sólo necesitamos dos LEDs, una resistencia y un conector USB, ya que obtendremos desde ahí la alimentación (5V).

Un esquema rápido sería:

USB+ -------/\/\/-----|>|------|>|--------USB-

El primer símbolo es una resistencia, suponiendo dos leds rojos de 1'2V, debería absorver una tensión de 2'6V, con 100mA de corriente, debería ser de 26 Ohmnios o ligeramente superior, y de medio Watio.
Los otros dos símbolos son los leds, puestos en serie (ojo que sólo se encienden en una posición, si se ponen al reves no pasa nada, don't panic).
Las otras dos conexiones del USB no son necesarias. En cuanto a los colores del cable, creo que eran rojo para el positivo y negro para el negativo, siendo el amarillo y el verde los de datos, que se quedan al aire. Cualquier alargador USB servirá para el invento tras un corte.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

La momia que fuma

Se necesitan LEDs infrarrojos, como los de un mando a distancia, pero más potentes, los "normales" apenas los detecta el mando...lo se de cuando intente reproducir esto en casa.

El hombre este recomienda estos de 100mA

Drumpi

#12
Ok, entonces veamos, según parece tienen una tensión directa de 1'35V (espero no haberme oxidado leyendo datasheets), por lo que dos bichos de estos suman 2'7V, lo que deja a la resistencia un total de 2'3V. Dado que en una resistencia I=V/R, necesitamos una R de (calculadora en mano) 23 Ohmios (lo cual sigue siendo un valor ridículo) y medio Watio o más, para curarnos en salud.
Los valores típicos en tiendas suelen ser de 22 o 25 si no recuerdo mal. Como no sé cuanta luz van a dar (y siendo infrarrojos no se va a ver) lo suyo es coger la de 25 por si acaso, iluminarán un poco menos, nada más.

Venga, puestos a fardar ya de conocimientos (y de paso, repaso un poquito ;D), los colores que vereis serán ROJO VERDE NEGRO   ORO (2, 5, 10⁰, +-5%).

PD: si vais a hacer pruebas con esto, no las hagais enchufando a un ordenador. Hay pilas de petaca que dan 5V aproximadamente, o probad con un cargador de red eléctrica a USB, que salen más baratos que una placa nueva ;) Si teneis una fuente de voltaje regulable, mejor (sobre todo, si tiene protección anti cortocircuitos). Tambien podeis probar con dos pilas pequeñas en serie, pero estas dan 6V y por lo tanto más luz (y no se hasta que punto aguantarán los LEDs o si es malo para la vista).
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Drumpi

Mola, esta tarde he sacado un ratillo (nuevo bloqueo en el proyecto) y he conseguido conectar el mando de wii al PC, aunque me da error con el nunchuck ¿?
Y de paso, me he cargado el cacharro bluetooth USB: se me ha caido al suelo y se me ha desmontado. Don't panic, sigue funcionando. La carcasa amortiguó el golpe al desmontarse, y el circuito es minúsculo, eso sí, he descubierto que la antena que se ve por fuera no sirve de nada, es un cacho de plástico hueco sin nada dentro ^^U

La librería funciona bastante bien, me detecta todo salvo el apuntar a la pantalla (normal, sin la barra sensora...) aunque ya se podría haber usado WRITE_INT para ver los valores en tiempo real en lugar de SAY ^^U
Y tampoco me detecta la conexión del nunchuck en caliente, detecta un evento 0 pero ni caso a los botones ni demás.
Aun así, mola todo, dan ganas de ponerse ya a hacer algo.

Por cierto ¿que es el Yaw?
karma++
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Windgate

El Yaw es la rotación en el eje Y del mando, es decir, rotarlo como el aspa de un helicóptero.

Luego hay otros dos valores para la rotación en X (Retorcer la muñeca) y para la rotación en Z (Levantarlo y bajarlo).

La verdad, en cuanto me ponga a hacer mis primeras pruebas me olvidaré de tan raros nombres. De hecho ya había empezado a meter la mod_wii en mi cursor 3D, pero me salió un error nuevo de buffer bluetooth que ni Grisendo había visto todavía, así que tengo que reunirme con él un día de estos y enseñárselo, espero que no encuentre más obstáculos de estos raros :P

En cuanto al sensor casero del que hablas Drumpi, es buena idea, te lo puedes hacer por 1€ así en plan casero, si lo logras sube fotos, aunque de momento prescindo de usarlo por ser algo tan... Bizarro :S
Iván García Subero. Programador, profesor de informática, monitor de actividades culturales y presidente de TRINIT Asociación de Informáticos de Zaragoza. http://trinit.es