Download presentation
Presentation is loading. Please wait.
Published byAmbrose Johnson Modified over 9 years ago
1
SURF-IT Symposium Luke Heidbrink Mentor: Mark Bachman August 26, 2011
2
Project Overview Develop a platform that connects Android applications to hardware devices:
3
Applications
5
Motivation Communicating with hardware is complicated and time-consuming. Future projects can use this platform for rapid development. The Android operating system is becoming ubiquitous; our platform targets a large user base with many potential applications. People who want to develop Android applications with custom hardware don't always have the technical skill to do so.
6
Motivation As of May 2011, 38% of U.S. phones owned are smartphones. Of smartphones, a plurality of 38% run the Android operating system 1. 1 “In US, Smartphones Now Majority of New Cellphone Purchases” The Nielsen Company, http://blog.nielsen.com/nielsenwire/online_mobile/in-us-smartphones-now-majority-of-new-cellphone-purchases/
7
Motivation Communicating with hardware requires specific, thorough knowledge of programming and electronics:
8
Goals Create an Android service that handles the minutia of communicating with the hardware Create a development board with easy-to-use input/output channels and a pre-programmed microcontroller Integrate our Android code with popular development software so novice developers can use high-level environments Support many hardware options and provide a variety of useful functions
9
Approach: General Accessible Novice users should be able to begin development quickly Advanced users should easily understand our set-up and use it to their advantage Robust Our middleware should support the largest possible number of ideas Our middleware should not become outdated by future releases of Android or our target development environments
10
Approach: Android Service The Android service handles the USB connection with the development board. The end user sees simple functions like read, write, schedule, connect, and disconnect. The service performs handshaking, processes hardware malfunctions, stores received data in a buffer, and more. The service is written as a Android (Java) class, which can be used as a library in several high-level development environments.
11
Results An Android class handles a connection to a development board via USB. Connects and reconnects automatically Sends and receives digital or analog data Transmission via USB is very fast A program written in the popular scripting- language Processing uses the class to make an LED blink regularly.
12
Next Steps Test and support additional development environments, like 3D game engines Test and support different communication protocols beyond analog and digital Add support for wireless communication, probably via Bluetooth Give the platform to novice developers, see what they create, and improve our design based on their feedback
13
Acknowledgements and Questions The Android Team: Prof. Mark Bachman Nizan Friedman Jordan Linford Sean Burke SURF-IT Staff and Fellows Calit2 Staff and MIDAS Members Questions?
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.