Modern smartphones come equipped with a whole array of sensors (GPS, accelerometers, compass, etc) and a CPU powerful enough to do most of the advanced processing required to do advanced decision-making and processor-intensive tasks like image processing.
In addition, smartphones communication capabilities (Bluetooth, Wifi, 3G) make them ideally suited to accessing large dataset and processing clusters hosted elsewhere.
Finally, all this functionality is available in a compact package at affordable prices due to large scale manufacturing.
The missing piece to the puzzle of smartphones and robots is a way to interact with arbitrary hardware, such as controlling servos or reading from additional sensors.
For that purpose, we’ve started developing a workshop to introduce people to using the Android Development Kit (SDK), Android Development Toolkit (ADT) – the latters using the powerful Eclipse IDE and most importantly the Android Open Accessory Development Kit.
The Android 3.1 platform (also backported to Android 2.3.4) introduces Android Open Accessory support, which allows external USB hardware (an Android USB accessory) to interact with an Android-powered device in a special “accessory” mode. When an Android-powered powered device is in accessory mode, the connected accessory acts as the USB host (powers the bus and enumerates devices) and the Android-powered device acts as the USB device. Android USB accessories are specifically designed to attach to Android-powered devices and adhere to a simple protocol (Android accessory protocol) that allows them to detect Android-powered devices that support accessory mode.
Workshops are weekly and will explore both the development on the Android-side and the micro-controllers side – touching on all aspects of mechanical, electrical and software engineering of a robot.
Participation for XinCheJian members who’ve paid their dues is free. For the non-members, the fee is 50 RMB per workshop.
For more information, look at the “Android & Robots” wiki. Don’t forget to fulfill the necessary pre-requisites and join the email@example.com mailing list! Note that this is a collaborative workshop, so we expect everyone to contribute and participate actively.