Si aún no eres usuario, puedes crear una cuenta o entrar
El ADK de Google en un Arduino UNO!

Hace unos días os presentaba en el blog el ADK de Google, una plataforma que permite la comunicación entre terminales Android y Arduino. La pega era que el kit de desarrollo valía unos 300€.

Hoy os traemos una primicia. Después de ver compañeros por internet que conseguían hacer funcionar el ADK en un Arduino con una USB Host Shield controlando algún servo o LED, nos hemos propuesto reproducir todos los dispositivos que incluye el kit pero en la versión DIY de BricoGeek, con los productos que tenemos disponibles en la tienda.

Ayer mismo recibí los materiales y a media tarde ya estaba funcionando. No os podeis imaginar lo divertido, útil y espectacular que es controlar el Arduino mediante el teléfono.





 

Para empezar se necesita como mínimo:

  • Un Arduino que acepte shields. (El Mega de entrada no funciona por la situación de pines del SPI, pero se puede modificar para que funcione)
  • Una USB Host Shield.
  • Un teléfono o dispositivo Android con version 2.3.4 o 3.1

Empecemos con el Software del ordenador.

Debemos instalar el SDK y la plataforma de desarrollo Eclipse para hacer nuestro proyecto. Aquí tenéis un muy buen tutorial, seguidlo paso a paso hasta el punto 5.

Una vez llegados a ese punto y con el Eclipse abierto:

 

  1. Entramos en Help/Install new software...
  2. Click en ADD (botón arriba a la derecha).
  3. Introducimos en name "ADT Plugin" y en Location https://dl-ssl.google.com/android/eclipse/
  4. Click en OK.
  5. Cuando nos salga, marcamos Developer Tools y le damos a Next, nos sale otra pantalla, otra vez Next.
  6. Marcamos para aceptar los License Agreements, le damos a Finish.
  7. Si nos sale un aviso de seguridad le damos a OK.
  8. Reiniciamos el Eclipse.
  9. Entramos en Window/Preferences (en Mac Eclipse/Preferences)
  10. Seleccionamos Android en el panel izquierdo.
  11. Nos pedira si queremos enviar datos a Google (como queráis) luego le damos a Proceed.
  12. En SDK Location le damos a Browse y buscamos la carpeta donde tenemos el SDK de android.
  13. Le damos a Apply y luego a OK
Ahora ya tenemos el entorno de desarrollo completo.
Vamos a instalar el API que incluye el ADK:
  1. En Eclipse nos vamos a Window/Android SDK and AVD Manager.
  2. Entramos en el panel de la izquierda en Avaliable packages.
  3. Dentro de Third Party Add-ons/Google inc buscamos Android API 10 Revision 2, la marcamos y le damos a Install selected.
  4. Aceptamos todo lo que nos diga y listo.
Nos bajamos el último ADK. Lo descomprimimos dentro de la carpeta del SDK de Android para tener todo junto y seguimos estos pasos:
  1. Copiamos la carpeta firmware/arduino_libs/AndroidAccessory a nuestra carpeta de librerías del IDE Arduino.
  2. Bajamos esta versión modificada de la libreria USB Host Shield y la descomprimimos en nuestra carpeta de librerías del IDE Arduino.
  3. Bajamos este sketch de Arduino y lo abrimos con el la aplicación de programacion de arduino.
  4. Lo subimos a nuestra placa Arduino como un código normal.
Ahora solo nos queda mandar la aplicación a nuestro terminal, para ello:
  1. Abrimos Eclipse y vamos a File/New/Project.
  2. Seleccionamos Android/Android Project.
  3. En Project Name ponemos "DemoKit".
  4. Le damos a Create project form existing source, le damos a Browse y nos ponemos en la carpeta del ADK "app" y le damos a Finish.
  5. En Build target seleccionamos nuestra API 10 y Finish.
  6. Ahora entramos en los ajustes de aplicaciones de nuestro Android y seleccionamos dentro de desarrollo "Depuración USB"
  7. Conectamos el teléfono por cable USB al ordenador y le damos dentro de Eclipse al icono verde con una flecha que esta justo a la derecha de el icono del bicho (Run DemoKit). Esto nos instalará la aplicación para controlar el Arduino.

Todo listo a la hora de software.


Ahora conectemos todo.

En la demo del vídeo enseño como desde el teléfono (en este caso un Nexus One) podemos leer entradas como un botón, un joystick, una resistencia variable con la luz LDR y un sensor de temperatura LM35. También controlo desde el teléfono las salidas, un servo, un LED RGB y un relé con el que podemos encender y apagar cualquier aparato conectado a la red eléctrica.


Podéis hacer la prueba con algún sensor o algún led, no hace falta tener todo conectado podeis probarlo por separado ya que funciona igual. Estos son los esquemas de conexión que he utilizado para conectar los dispositivos del vídeo:

Podéis guiaros en que pin va cada dispositivo dentro del código del Arduino. Tambien podeis modificar la situación de cada uno a vuestro antojo.


Una vez todo conectado al Arduino apagado, procedemos a alimentarlo. Necesitamos alimentación externa ya que la USB Host Shield se alimenta de Vin y con el voltaje que nos proporciona el cable del ordenador no nos llega. Alimentamos el Arduino y a continuación conectamos por usb el Android, automáticamente se nos abrirá la aplicación. Si no se os enciende la luz de carga del móvil es que necesitamos mas alimentación en el Arduino. Si usáis un servo, estos consumen mucha corriente, por lo que pueden llegar a resetear el Arduino. Es recomendable o alimentarlos a parte, o que sean del tipo microservo que consumen un poco menos.

Las posibilidades de esta plataforma de intercomunicación son casi infinitas, pronto veremos incluso versiones inalámbricas o  de control a través de internet.

Os animo a que lo probéis y nos mandéis vuestros proyectos. Os dejo con el vídeo, espero que os guste. 

 

Si os gustan mis proyectos no dejeis de visitar mi blog: TCRobotics.blogspot.com

O agregadme al twitter: @TCRobotics

¡Un saludo!

En la tienda

Arduino UNO  Arduino USB Host Shield Servomotor miniatura HD-1160A Fotoresistencia LDR Sensor de temperatura LM335A Relé 5V SPDT Joystick analógico PlayStation2


Comparte esto con tus amigos!

Si te ha gustado, quizás también te interese...
Horno de Reflow casero con Arduino
Publicado el 17/01/2014

Comentarios:


Andoni Diaz Puerta
Enviado el 25/05/2011 (21:09)
Increíble sensacional!
La pena es que no dispongo de ningún dispositivo con android :(
Increíble de nuevo!

Alex TC
Enviado el 25/05/2011 (21:57)
Gracias Andoni! :)

Chema Alcérreca
Enviado el 25/05/2011 (22:52)
Alucinante. Envidia.

Nayma Rescue
Enviado el 25/05/2011 (22:56)
Yo tampoco, yo sigo con mi ladrillo. :(
Habrá que ir pensando en cambiar...

Pedro enrique Vidal Peñas
Enviado el 26/05/2011 (14:01)
Sensacional simplemente.
Ya podre tener otra funcionalidad en mi htc XD

Jose Luis Montes
Enviado el 14/06/2011 (14:26)
Buenas,

Acabo de registrarme en el blog y quiero empezar con esto de arduino.

Ya me resultaba interesante esto de arduino pero despues de que google sacara lo del adk ya es una pasada para mi ya que soy desarrollador android y la parte de android la tengo mas o menos dominada :)

Pero con arduino estoy un poco perdido, como decis, la MEGA no vale, ¿Qué me recomendais como starter kit para empezar con arduino (sabiendo que lo voy a usar con android)? ¿y donde podría comprarlo?

Muchas gracias por adelantado :)

Oscar Gonzalez Oscar Gonzalez es un colaborador!
Enviado el 14/06/2011 (17:22)
Hola José Luis,
Lo básico es un Arduino UNO y una USB Host shield para empezar. Luego sigues los pasos que se indican en el tutorial y ya tienes por donde empezar.

Saludos!

noel niebla
Enviado el 14/02/2012 (17:13)
buenas tardes, no consigo instalar el demokit en la placa adk me da errores de compilación del tipo error: 'byte' does not name a type ¿alguna solución?

saludos.

Subodh Nijsure
Enviado el 23/04/2012 (17:08)
Is it possible to see the source code for the Android Application you used or it is available as part of demokit from google?

-----

¿Es posible ver el código fuente de la aplicación para Android que usted utilizó o está disponible como parte de demokit de google?

Alex Juan Garcia
Enviado el 12/05/2012 (16:21)
Hola compañeros:

He conseguido funcionar el demokit con un Arduino UNO y la placa USB host shield de sparkfun. Pero tengo un PROBLEMA:

He cargado la aplicación (.apk) del demokit en mi móvil y en la primera pantalla,la de las entradas, donde deberían de salirme los botones, el radar del joystick, medidas del sensor de temperatura y LDR...SOLO me aparece el radar del joystick.

A parte, también me he fijado, que en las salidas, a partir de los mandos de controlar el LED 2, no se me ve más ni puedo desplazar la pantalla hacia abajo para ver los demás controles.

¿A qué se debe esto? ¿Alguna posible solución? AYUDA por favor.

Comentar que mi teléfono es un HTC Wildfire con la ROM Cyanogenmod 7 con 2.3.7

Saludos

Jesus Isaias Alva Reyes
Enviado el 22/01/2013 (06:27)
Hola!!

Muy buen proyecto, quisiera saber si la app de android tu la hiciste o cargaste una apk demo?? Y tambien si es posible hacer tu propia apk para que realice funciones similare. Tengo un proyecto para usar el Arduino y mi tablet para domotizar mi cuarto...

Gracias y Saludos

rafael hedez r
Enviado el 23/01/2013 (06:40)
hola quisiera saber si puedes hacer un tuto para poder controlar salidas de arduino mediante wifi!! por favor me interesa mucho. saludos desde mexico


Oscar Perez
Enviado el 01/02/2013 (23:26)
Buenas tardes, estoy haciendo todo lo que puedo para poder llevar a cabo este proyecto, ya tengo todo lo necesario, sin embargo me a quedado grande un par de cosas, cuando le intento cargar el programa al Arduino me aparecen unos errores relacionados con esta linea " AndroidAccessory acc("Google, Inc.", " y no se como resolver esos errores, ademas para ponerle el programa al celular "Samsung Galaxy Ace" he intentado seguir los pasos encontrados arriba pero no coinciden con lo que el programa Eclipse me muestra.
Gracias por la colaboración.


Enviar comentario

Debes disponer de una cuenta de usuario para publicar un comentario.

Si aún no dispones de una cuenta, únete a la comunidad de BricoGeek.com y registrate ahora, te llevará tan solo un minuto y es gratis. También puedes identificate si ya dispones de una cuenta de usuario.
rss

Conecta con BricoGeek.com

Canales sociales

Nos gusta mucho estar en contacto con nuestros lectores y saber más acerca de sus proyecto e inventos.


También puedes sugerir una noticia en el blog
Tienda de Electrónica DIY y Arduino

Lo que se cuece...

Comentarios recientes Más comentado Top noticias
Feed de novedades

Tienda BricoGeek.com

Electrónica para tus proyectos!

Estás preparando un proyecto o quieres iniciarte en la electrónica? Encuentra todo lo que necesitas en la tienda.

Visita la tienda BricoGeek!

La familia de BricoGeek.com

Conoce toda la gente que hace que BricoGeek.com sea posible cada día:

Alejandro Mallo
Colaborador
Puedes hacer click sobre un autor para ver todas sus noticias


Etiquetas más populares:

Descubre todo el contenido de bricogeek.com con las etiquetas más populares:

Páginas amigas:

Aqui tienes una selección de las páginas que más nos gusta visitar


© BricoGeek.com 2005-2014

Demuestra lo que sabes hacer!