gdg-cj; andorid and arduino: amarino

21
Controlling the real world from Android Alexandru IOVANOVICI 19-01-2013 Beta is provided by

Upload: alexandru-iovanovici

Post on 28-Jan-2015

110 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: GDG-CJ; Andorid and Arduino: Amarino

Controlling the real world from Android

Alexandru IOVANOVICI19-01-2013

Beta is provided by

Page 2: GDG-CJ; Andorid and Arduino: Amarino
Page 3: GDG-CJ; Andorid and Arduino: Amarino

Quick outlineWhat is Arduino ?

What is Amarino ?

How to talk to an Arduino device from

Android ?

A few words about Google IOIO;

Demo moment …with Beta by Robofun

Q&A

Page 4: GDG-CJ; Andorid and Arduino: Amarino

Where not otherwise stated all the images and diagrams are taken from Bonifaz Kaufmann's thesis on Amarino

Page 5: GDG-CJ; Andorid and Arduino: Amarino

What is Arduino ?

Page 6: GDG-CJ; Andorid and Arduino: Amarino

A few projects with...

Arduino

Page 7: GDG-CJ; Andorid and Arduino: Amarino

Arduino +'s

Multiplatfrom IDE;

Quite cheap;

Simple UI on the IDE; easy to learn … but can be integrated also in VS or Eclipse for a “real” IDE;

USB programming interface … real COM is dead;

board layout, bootloader and IDE are Open Source;

Large and active community;

Started as educational project → easy to learn for the novices;

Page 8: GDG-CJ; Andorid and Arduino: Amarino

What is Amarino ?

Page 9: GDG-CJ; Andorid and Arduino: Amarino

Platform considerations for Amarino

Page 10: GDG-CJ; Andorid and Arduino: Amarino

Design decisions of Amarino Amarino shall be able to run as a background task →

unobtrusive Interfaces for third-party applications shall be provided →

extensible Comprehensive monitoring shall be available →

transparent Parallel communication to multiple devices shall be possible →

powerful Bluetooth related code shall be decoupled →

portable

Page 11: GDG-CJ; Andorid and Arduino: Amarino

Architecture of Amarino

Page 12: GDG-CJ; Andorid and Arduino: Amarino

How it looks like ?

Page 13: GDG-CJ; Andorid and Arduino: Amarino

Amarino – Event Manager

Page 14: GDG-CJ; Andorid and Arduino: Amarino

Amarino – Event Bundle via plugins

Page 15: GDG-CJ; Andorid and Arduino: Amarino

Ambient Light Demo App.

Page 16: GDG-CJ; Andorid and Arduino: Amarino

CallMyShirt Demo App.

Page 17: GDG-CJ; Andorid and Arduino: Amarino

Workout Demo App.

Page 18: GDG-CJ; Andorid and Arduino: Amarino

Amarino – API1 private static final String DEVICE_ADDRESS = "00:06:66:03:73:7B";23 @Override4 protected void onStart() {5 super.onStart();67 Amarino.connect(this, DEVICE_ADDRESS);8 }910 @Override11 protected void onStop() {12 super.onStop();14 // if you connect in onStart() you must not forget to disconnect in onStop()15 Amarino.disconnect(this, DEVICE_ADDRESS);16 }

1 final char flag = 'a';2 final String message = "Amarino rocks!";34 Amarino.sendDataToArduino(this, DEVICE_ADDRESS, flag, message);

Page 19: GDG-CJ; Andorid and Arduino: Amarino

Amarino – Documentation Online tutorials Code Examples Javadoc Source Code Discussion forum

www.amarino-toolkit.net

Page 20: GDG-CJ; Andorid and Arduino: Amarino

Android 1.5 and later;

USB host and Bluetooth;Java API – no embedded;No HW||SW mods on Android;Open Accesory (>=2.3.4)→

Accesory Developement Kit

(ADK)48 I/O pins, 9PWM, 3 TWI,

[email protected] power supply;Open Source … everything

© sparkfun.com

Page 21: GDG-CJ; Andorid and Arduino: Amarino

Demo moment