Donations by Google


Coverage in Triangle Business Journal, Jun 5, 2009 (local copy)

Google has donated
  • four Nexus One phones. The devices are equipped with a 3.7" touch screen (800×480), 5M pixel camera (autofocus, LED flash, video recording), bluetooth, wireless 802.11b/g, GPS receiver, 512 MB ROM / 512 MB RAM, HSDPA/WCDMA, Quad-band GSM/GPRS/EDGE, accelerometer (G-sensor), proximity, ambient light + digitial compass sensors, 4GB micro SD card and a 1400mAh Li-ion battery. It uses a 1GHZ ARM Cortex A8 processor (Qualcomm QSD8250). The market value at the time of donation was $2,116.
  • ten Motorola Droid phones. The devices are equipped with a 3.7" touch screen (854×480), 5M pixel camera (autofocus, LED flash, video recording), bluetooth, wireless 802.11b/g, GPS receiver, 512 MB ROM / 256 MB RAM, CDMA 1X 800/1900 (EVDO rev A), keyboard, accelerometer, proximity, ambient light digitial compass sensors, 16B micro SD card and a 1400mAh Li-ion battery. It uses a 550 MHz ARM Cortex A8 processor (TI OMAP3430). The market value at the time of donation was $4,090.
  • five unlocked G1 dev phones. The devices are equipped with a 3.17" touch screen (480x320), trackball, 3.2M pixel camera (2048x1536), bluetooth, wireless 802.11b/g, GPS receiver, 256MB ROM / 192MB RAM, 3G WCDMA: Dual-band (1700/2100Mhz) UMTS/HSDPA (3G), quad-band GSM (850/900/1800/1900Mhz) GSM/GPRS/EDGE, keyboard, accelerometer, digital compass and a 1GB micro SD card (up 16GB max). The HTC phone uses a Qualcomm MSM7201A processor (ARM11/ARM9 modem/?) at 528/256 MHz. The phone is built on the Android software platform, runs an embedded Linux and can be programmed in Java. The market value at the time of donation was $1,995.
  • $25,000 for "Teaching Embedded Systems with Android / the Google G1 Phone"

The donation are for a project on Ad-Hoc Networking between Android Devices, virtualization and other projects. They are being used for various classes, incl. Real-Time and Embedded Systems, Operating Systems, and Code Optimization for Scalar and Parallel Programs.

Class Projects:

More references:

Sample student feedback:

  • I found the Android SDK and especially the integration with Eclipse to be very easy to use.

    Things I liked best:

    • easy-to-us tool-set for installing .apk packages directly onto the phone, and shell access was invaluable for my project
    • good debugging framework (adb logcat)
    • simulator integration is good
    Things that could be improved:
    • When creating GUI layouts in Eclipse, the interface is still very crude. You need to know what objects you want and then you have to search a big list to see what attributes are available. It would be nice to be able to design layouts, and drag & drop common elements (e.g. buttons, text fields, etc.) onto a canvas.
    • I lost several hours learning the hard way about permissions in the AndroidManifest.xml file. In particular, binding to a UDP socket through an ambiguous exception that gave no clue that I was missing a permission in the Android manifest.
    • The Android SDK API documentation could use a few more examples from which to copy & paste code. It is a bit terse when compared to the Java SDK & tutorials available.
  • The Android platform was easy to use once all the initial setup was done. There is a lot of online material which is helpful to get started with Android. There was one problem specific to our project, there is no API to find and display the route between two locations. This was there in older versions of Android but has been removed in the newer versions and the documentation does not tell it has been removed. If we had that feature that would be very helpful for our project. Overall it was a good learning experience.
  • The Android platform is very impressive on the whole and the Eclipse bundle makes it very easy for a programmer to get started with the SDK. The API is very convenient because it builds on the Java backbone, and many common Java classes are available to phone applications. The learning curve for the UI programming was a bit steep. However, Android has a very active developer community, which helped us greatly. As it turned out, the API for location services provided everything we needed, but the phone itself did not always provide the necessary data. In general, the G1 hardware is excellent (e.g. the touch screen and QWERTY keyboard work very well), but GPS performance was shaky. Overall, the Android is a great platform for developers and we have recommended the G1 to friends.