[tutorial] Nunchuk, como utilizar como I2C y por tensiones (señales analógicas)

Bueno, mi primera aportación.

De todos es sabido que podemos utilizar el nunchuck de la wii como periférico del arduino y poder acceder a los acelerómetros de 3 ejes, el pequeño joystick y los dos botones, todo ello a través del bus I2C

Bién... mi objetivo era poder utilizar el sensor del nunchuck pero utilizando la señal analógica y de esta manera poder tener mayor resolución, una medida mucho más precisa de la que hacemos a traves de I2C usando las entradas analogicas de nuestro controlador sea el que sea.

hice pues una modificacion, compre un nunchuck en china pero no utilizan exactamente el mismo chip, el de china saca directamente la medida en I2c, el mando original los acelerómetros tienen salidas analógicas que luego convierte a i2C

Las soldaduras no son fáciles, hay que tener lupa y un tacto muy fino pero se puede hacer.

el cable del mando tiene 5 cables, 2 de ellos los utilizo de alimentación a 3,3 voltios y los otros 3 para los 3 ejes. de la manera que lo he hecho el cambio es reversible , es decir, utilizo el mando tanto para I2C como para los sensores a mi antojo

bien...

una vez abierto el mando tenemos que soldar 3 cablecillos, muy finos¡¡ yo incluso despues de pelarlo le he quitado varios pelos de cobre, la idea es que la punta del cable quepa en una de las vías de la placa del nunchuck

hay que soldar los 3 cables a estos 3 puntos que veis en las fotos

con más detalle

siento deciros que no recuerdo a qué eje corresponde cada punto :smiley:

para poder utilizarlo de esta forma y luego poder usarlo con I2C he metido unos conectores de esta forma que pueda cambiar fácilmente de utilizarlo con I2C a utilizarlo por tensiones

utilizo el negro y rojo para alimentación ( 3,3V)
el blanco amarillo y verde en MODO DE TENSIONES nos darán las tensiones de los distintos ejes
en MODO I2C el blanco en negativo también (-) (no lo recuerdo seguro, aseguraos primero) y el amarillo y verde para el I2C

espero que os sirva en algún proyecto.

Un sensor de 3 ejes os puede costar más de 20 euros mas gastos. Un nunchuk original cuesta menos y se puede utilizar de ambas formas. Y bueno .. si haceis como yo que ya tengo la wii, compré un nunchuk de china, lo abrí y no tiene el mismo sensor y trabaja directamente por I2C asi que no me valia para lo que quería pero funciona de maravilla con la wii, de manera que el chino pa jugar y el original para proyectos :smiley: en china me costó menos de 5 euros y gastos de envío gratuitos. (llega) en dealextreme

cualquier duda posteadlo en el foro

Saludos ¡

www.tinypic.com

gracias
hay lo teneis

amigo los cables q instalas permiten la lectura de los 3 ejes del acelerometro en las variaciones de voltaje de acuerdo a la inclinacion lectura analoga como lo creo yo es q lo intente pero el nunchuk que tengo aparenta ser original y realice la instalacion de los 3 cables pero no obtengo esos datos alguna ayuda, tiene el mismo integrado de st electronics........

Gracias por la info.

Hola. Ya que te veo bastante puesto en el tema.....tengo un problemilla :roll_eyes:.
Utilizo el Nunchuck tipico perfectamenta (por I2C) pero cuando intento utilizar uno wireless no funciona, me devuelve simpre los valores maximos.
He estado mirando por http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1259091426/all pero no me aclaro nada (el Ingles no es mi fuerte)

A ver si me puedes hechar una ayudita. Gracias.

david_upn:
amigo los cables q instalas permiten la lectura de los 3 ejes del acelerometro en las variaciones de voltaje de acuerdo a la inclinacion lectura analoga como lo creo yo es q lo intente pero el nunchuk que tengo aparenta ser original y realice la instalacion de los 3 cables pero no obtengo esos datos alguna ayuda, tiene el mismo integrado de st electronics........

El nunchuck es el original. tengo una copia pero no utiliza el mismo chip, el acelerómetro del original entrega a otro chip las 3 tensiones analógicas.
aquí tienes el datasheet LIS3L02AL pdf, LIS3L02AL Description, LIS3L02AL Datasheet, LIS3L02AL view ::: ALLDATASHEET :::

las vías (los agujeritos de la placa) son muy pequeños, ya he dicho que hay que tener un tacto muy fino y práctica para soldarlo, la foto sale bien ampliada pero la separación entre las vías puede ser tan solo de 0,5 milímetros, difícil pero no imposible, lo hice con un soldador de punta fina y un buen estaño.

las tensiones de esos puntos varían con la aceleración de cada eje, si pones un polímetro entre GND y uno de esos puntos y mueves la placa puedes ver como varia la tensión moviendo la placa.

Si no es así no tienes bien soldados los puntos. sube alguna foto a ver como te ha quedado.

Un saludo

RuL, nunca he utilizado ninguno wireless, no puedo ayudarte en este tema. Utiliza el traductor de google y te puedes hacer una idea.

Un saludo

RuL hace poco compre uno y estuve testeando haber si conseguía leerlo sin problemas, en el hilo que pones hay muchos códigos pero solo con uno conseguí que funcionara: Wireless Nunchuck & Arduino | Ardublog

Si no te lo soluciona te recomiendo que abras un nuevo hilo especificando el problema para no desviarnos del tema de este hilo :wink:

hola soy nuevo en esto de los acelerometros estoy usando el mma7660 y me funciona en arduino mega 2560 lo que deceo saver es si alguien conoce la forma de conectar un segundo acelerometro en la misma placa y como deveria hacerlo lo necesito para el proyecto que estoy realizando