Android Meets A BeagleBone In The IoT World

39
ANDROID MEETS A BEAGLEBONE IN THE IoT WORLD droidcon 2015 04.06.2015, Lars Gregori, hybris GmbH

Transcript of Android Meets A BeagleBone In The IoT World

ANDROID MEETS A BEAGLEBONE

IN THE IoT WORLDdroidcon 2015 04.06.2015, Lars Gregori, hybris GmbH

Agenda

• Internet of Things • Why BeagleBone? • BeagleBone Black • Code • Ideas

Agenda

• Internet of Things• Why BeagleBone? • BeagleBone Black • Code • Ideas

Internet of Things

• Internet • Things

Internet of Things

• Internet • Things

• physical • Sensors • Actuators

Temperature

Distance

LED

7-Segment

Internet of Things

RESTMQTTInternet

OUT Sensor Actuator

APP

IN

Agenda

• Internet of Things • Why BeagleBone?• BeagleBone Black • Code • Ideas

Why?

• Why Android? • Why BeagleBone?

Why?

• Why Android? • a window system • APPs • Java

• Why BeagleBone? • connect other Hardware • …

Agenda

• Internet of Things • Why BeagleBone? • BeagleBone Black• Code • Ideas

AM335x 1GHz ARM Cortex-A8

• 512MB DDR3 RAM• 4GB 8-bit eMMC

on-board flash storage• 3D graphics accelerator

AM335x 1GHz ARM Cortex-A8

• USB host• USB client

for power & communications

• Ethernet• HDMI (micro)• SD Card• Serial Debug (FTDI 3.3V)• 2x 46 pin headers

Android 4.4.4

Agenda

• Internet of Things • Why BeagleBone? • BeagleBone Black • Code• Ideas

Linuxroot@android:/sys/class/gpio/gpio66  #  ll  -­‐rw-­‐r-­‐-­‐r-­‐-­‐  root    root            4096  2000-­‐01-­‐01  14:33  active_low  -­‐rw-­‐rw-­‐rw-­‐  root    root            4096  2000-­‐01-­‐01  14:33  direction  -­‐rw-­‐r-­‐-­‐r-­‐-­‐  root    root            4096  2000-­‐01-­‐01  14:33  edge  drwxr-­‐xr-­‐x  root    root                      2000-­‐01-­‐01  14:33  power  lrwxrwxrwx  root    root                      2000-­‐01-­‐01  14:33  subsystem  …  -­‐rw-­‐r-­‐-­‐r-­‐-­‐  root    root            4096  2000-­‐01-­‐01  14:33  uevent  -­‐rw-­‐rw-­‐rw-­‐  root    root            4096  2000-­‐01-­‐01  14:33  value  

root@android:/sys/class/gpio/gpio66  #  cat  direction  out  

root@android:/sys/class/gpio/gpio66  #  echo  1  >  value

Java// digital OUT GPIO gpio = new GPIO(PIN); gpio.setDirection(GPIO.DIRECTION_OUT); gpio.setValue(true); gpio.close();

// analog IN ADC adc5 = new ADC(ADC.AN5); int value = adc5.getValue(); adc5.close();

ALLToolKit - Android Java Library for Hardware Managementhttp://sourceforge.net/projects/alltoolkit/

Agenda

• Internet of Things • Why BeagleBone? • BeagleBone Black • Code • Ideas

Ideas

exception notification

Ideas

log messages

Ideas

cpu display

Ideas

temperature sensor

Ideas

distance sensor

Thank you

+LarsGregori @choas