C’est aujourd’hui, lors de la conférence Google I/O 2011, qu’a été annoncé l’arrivée de l’Android Open Accessory Development Kit (ADK). Il permet de rajouter une connectivité physique à un périphérique Android à l’aide d’une carte électronique, un peu comme le IOIO.
Image may be NSFW.
Clik here to view.
Hardware
La carte ADKPour la partie Hardware, La carte électronique est basé sur le modèle l’Arduino MEGA 2560 sur laquelle on aurait intégré un shield USB Host destiné à recevoir le périphérique Android.
Sur le site Android Developers, on retrouve bien les schémas dans l’ADK PAckage et on peut voir que la carte de l’ADK est une carte Arduino MEGA 2560 avec l’intégration du shield USB Host.
Pour la partie pinout, la compatibilité avec l’Arduino MEGA 2560 est conservé rendant possible l’utilisation de la plupart des shields existants déjà.
Au niveau des différences, on peut de suite s’apercevoir de la disparation du connecteur ICSP, qui va rendre quelques shields non fonctionnel notamment celui Ethernet dernière génération qui utilise cette connexion sur les kit MEGA Arduino .
Le micro-contrôleur utilisé est un Atmel ATMEGA 1280 [Datasheet] au lieu de l’Atmel ATMEGA 2560, ce qui implique 128 Mo de Flash au lieu de 256 Mo principalement.
Au niveau de la connectivité PC, le chip Atmel ATMega8U2 redonne place à un FTDI FT232RL [Datasheet], bref tout nous laisse penser que la carte ADK est bien plus basé sur un modèle de Arduino MEGA 1280 que sur la MEGA 2560, ça sent un peu la rétro-activité…
Pour la fonctionnalité USB Hôte, c’est l’adjonction du chip MAX3421[Datasheet] qui réalise cette fonctionnalité. En vous passant les détails de l’alimentation et les buffers 5V/3V3, il est connecté au travers des liaisons PB0 à PB3 ainsi que PH5, PH6, PJ3 et PE6.
Image may be NSFW.
Clik here to view.
La carte ADS
Avec cette carte, un shield Android Demo Shield (ADS) a été présenté, elle contient quelques capteurs et actionneurs de base pour pouvoir établir une connexion avec le monde extérieur.
On retrouve donc :
- Un capteur de lumière TPS852 [Datasheet]
- Un capteur de température MCP970X [Datasheet]
- Un joystick
- 3 boutons pousoirs
- 3 LED RVB
- Un capteur sensitif
- 2 Relais 3 contacts
- Un connecteur pour piloter 3 servo-moteurs
Pour infos on peut trouver les cartes ADK et ADS chez rt-shop.sakura.ne.jp pour 31500 Yens soit environ 270 €, ce qui me parait un peu cher (peut être je me suis planté dans la conversion) , mais on devrait en voir fleurir un peu de partout d’ici peu.
Logiciel
J’ai un peu moins détaillé cette partie, car l’analyse de la carte m’a beaucoup plus passionné, et surtout je ne maîtrise pas assez la partie logicielle ( coté Android bien sûr) à part un joli « Hello World » réalisé sur mon HTC Desire.
Image may be NSFW.
Clik here to view.
Coté Arduino
Dans le package de l’ADK, on retrouve deux librairies à intégrer pour l’Arduino IDE pour rajouter la connexion USB Hôte au travers du MAX3421E, « AndroidAccessory » et « USB_Host_Shield ».
On retrouve également un programme de démo, qui nous montre que le dialogue avec un périphérique Android s’effectue très simplement : initialisation, gestion de connexion, lecture et écriture de données.
Coté Android
On retrouve également toute une bibliothèque de fonction directement implémentable sous le SDK Android de Eclipse afin de réaliser des applications Android dialoguant avec la carte ADK et ADS.
Image may be NSFW.
Clik here to view.
Conclusion
Cette carte est bien sur le principe car elle permet de faire dialoguer un périphérique Android avec un kit Arduino, ce qui permet de pouvoir réaliser pas mal d’applications comme dans le domaine de la domotique par exemple. Cela permet également de disposer d’un périphérique de contrôle intelligent pour tous nos petits montages à base d’Arduino.
Mais ce n’est pas non plus une révolution, il a quelques années on aurait pu réaliser la même fonctionnalité avec un vieux SPV qui dispose d’une liaison série et d’un Arduino Serial, on peut même réaliser cette liaison à l’aide d’un shield bluetooth et en plus on épargne la connexion filaire.
Mais cette fois, on arrive à réunir Google, Android et Arduino dans le même sujet, alors, oui cette carte à de beaux jours devant elle et on verra, je pense, beaucoup de projet sortir…
Juste pour info, si vous avez une carte Arduino MEGA 2560 et un shield USB Host qui traîne, il suffirait modifier légèrement la librairie USB_Host_Shield, notamment au niveau des pins, pour rendre l’ensemble compatible du ADK… Image may be NSFW.
Clik here to view.
Voici deux exemples d’applications possibles grâce à l’ Open Accessory:
*
Android Open Accessory Development Kit de Google : Analyse de l’ADK et de l’ADS
Article original publié sur Semageek® | Actualités High Tech, Robot, Électronique, DIY et carte Arduino.