Courses/Android OS programming 101 for robotic interface

From Imperial College Robotics Society
Jump to: navigation, search


Course Aim

This course aims to introduce Android OS programming to those who are interested in developing Android applications and want to interface them with electronic devices in general.

If you want to know more about the course, please feel free to send me an email. The course will be open for subscription from Wed 18 Jan to Friday 20 Jan. We do not control subscription, however, please check the #Course Prerequisite section below first to make sure you are right for the course as we do not want to experience too much difficulty or boredom during the course. We want you to have a lot of fun with it.


Course Syllabus

+ Note: I have decided to host the content of this course on my website blog as its comment feature is more interactive and would facilitate discussion than that on the wiki page.

Course instructor: Tuan Le Mau and our 9 helpful course assistants

Course Overview

This course has 6 sessions and will be held every Wednesday starting from 25 January. Only first 15 students who meet the course prerequisite will be enrolled. Please check with me if you are not sure if you are suitable for the course.

You will learn the basics of Android programming, how to design an interface with buttons, images, etc. and how to attach events to the widgets so that they react to your touch for example. The advanced portion of interface design includes how to use the Drawing Canvas. Then you will learn how to access the hardware of an Android device such as the accelerometer, the camera, etc. Towards the end of the course, you will learn how to use wifi, bluetooth communications and serial communication with Microcontrollers using the current de facto standard Robot Operating System (ROS).

Course fee & Signing up

To support the running of the course and to preserve space for those genuinely interested, the course fee is £15 subjected to you being an ICRS member ( here).

How to sign up?

This time we are trying out a different (and hopefully fairer way) of selecting students. Please read carefully the pre-requisite section on the wiki page and complete the application form. We will get back to you by Monday 23 January to let you know if you have been selected for the course.

As places on the course are limited, we give priority based on 1)suitable background and 2) first-come-first-serve basis.

  • Due to overwhelming response, I have closed the application for the course and selected students have been emailed regarding the offer. Thank you very much for your interest and I hope that the course will be really successful.

Course Prerequisite

I expect the course will be very popular so these are a few requirements just to make sure you do not struggle with the course or find it too easy

The course is for you if

  • You have basic knowledge of C, C++, Java or any similar languages
  • You have some basic knowledge of electronics (Ohn's law, etc.)
  • You are immensely interested in application programming and would like to develop your own apps in the future

The course is NOT for you if

  • You do not know anything about programming or electronics, then I would suggest you to wait for our course Software programming for Robotics 101 and Electronics 101 which most likely to open next Autumn 2012.
  • You are an expert at programming or electronics. Then just come to me and I'll give you pointers on how to learn this by yourself. I would suggest you get involve with our various projects in place at ICRS Projects.
  • If in doubt, please feel free to contact me.

Course Syllabus

Note: in supplement to this course, this is a link for youtube Android tutorials where you may find very useful.

Community and Collaboration

Instant Relay Chat During the Course

We have setup a dedicated 24/7 IRC channel called #icrobotics on irc.freenode.net. Ideally, all course participants can at least join the channel for the duration of the sessions in order to share links and help each other during the sessions. If requested, we can enable logging and this can become a great resource as we can make a searchable archive (requests for logging can be emailed or texted to Samthetechie (details on user page).

Course Materials on the Wiki

The materials have been transcribed to the wiki so that everyone can edit it. This enables course participants to add value to the course and the remix the course while it is being undertaken (such as if problems or errors are found during the course). It is also a great way to improve the course for the future.Now you do not have to tell me about the problems, please just edit the wiki page and improve it. Hopefully this will help to improve the content for the session.

This is a link for youtube Android tutorials