Glass OS

Glass OS (Google XE)
Developer Google
Written in C (core), C++, Java[1]
OS family Android
Working state discontinued
Source model Open source with closed source components[2]
Initial release XE4 / April 11, 2013 (2013-04-11)
Final release XE23 / June 20, 2017 (2017-06-20)
Marketing target Augmented Reality
Available in Multi-lingual
Update method FoTA
Platforms 32-bit ARM
Kernel type Monolithic (modified Linux kernel)
License Developer Preview: proprietary[3]
Apache License 2.0
Linux kernel patches under GNU GPL v2[4]
Official website

Glass OS (Google XE) is a version of Google's Android operating system designed for Google Glass. "glass-omap" Tag is used in referring to the modified Android code which can be found inside Kernel Repository.[5]

Release History

The following list shows the main changes happened for each update release.[6] For more detailed release notes visit the support website.

April 11, 2013: XE4.0

Initial release.

May 7, 2013: XE5.0

XE5 updates included[7]:

  • Change to sync policy: require power + WiFi for background uploads
  • Crash reporting
  • Incoming G+ notifications (direct shares, comments, +mentions), including ability to comment and +1
  • Incoming Hangout notifications
  • Transcription of queries & messages is now wicked-fast
  • Long-press to search from anywhere in the UI (no longer just from off)
  • International number dialing + SMS
  • Hop animation on disallowed swipes in the UI
  • New On-Head Detection calibration flow
  • Show device Serial Number on Device Info card
  • More reliable estimation of battery charge remaining
  • New recipient-list mosaic

June 4, 2013: XE6.0

XE6 updates include[8]:

  • Better photos through Glass
  • Voice annotate your photos and videos when sharing
  • Improvements to On-Head Detection. Please re-calibrate to enable the improvements.
  • Improved cards in Google Now for Sports, and a new card for Birthdays
  • Fixes for several issues

Glass OS update

Glass updates by itself automatically over the air. Glass will check Google servers periodically for updates. When an update is available, Glass will download it to the device and will install the update all by itself. This happens under the condition of active battery charging and a reliable Wi-Fi connection.[9]

OS Hacks

Gain Root Access

Root access can be easily obtained by using the following script using the rooted bootloader.[10]

$ adb reboot bootloader  # enter fastboot mode, takes 10-15 seconds
$ fastboot devices  # verify device is in fastboot, should see its serial #
$ fastboot oem unlock  # unlocking erases all data, you are prompted to run this command twice to be sure
$ fastboot flash boot boot.img  # gain root shell access with the rooted bootloader
$ fastboot reboot  # reboot the device
$ adb root  # start adb as root
$ adb shell  # access the shell as root

Flash Factory Image

Extract the desired factory system image package To flash Glass back to factory specifications then run the following script.[10] Boot and system images can be found on google glass developer website.

$ adb reboot bootloader  # enter fastboot mode
$ fastboot devices # verify device is in fastboot, should see its serial no.
$ fastboot flash boot boot.img  # flash partitions with factory images
$ fastboot flash system system.img
$ fastboot flash recovery recovery.img
$ fastboot erase cache  # optional, erase the cache and userdata partitition
$ fastboot erase userdata
$ fastboot oem lock    # optional, only if you want to re-lock the bootloader.

Modify Kernel source code

You can easily obtain the kernel source code from google repository by using the following script. you can find all of the releases by following this link.

$ mkdir <path-for-kernel-source>
$ cd <path-for-kernel-source>
$ git clone

Build OS kernel from source code

To build kernel from the source code; first you need to download gcc toolchain from the same repository.

$ git clone
$ export PATH=<path-for-kernel-source>/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin:$PATH

The second step is to build the kernel using this commands.

$ export ARCH=arm
$ export SUBARCH=arm
$ export CROSS_COMPILE=arm-eabi-
$ cd <path-for-kernel-source>/omap
$ git checkout glass-omap-xrr02 #choose the suitable release
$ make notle_defconfig
$ make


  1. "Android Code Analysis". Retrieved June 6, 2012.
  2. "Philosophy and Goals". Android Open Source Project. Google. Archived from the original on 2014-10-17. Retrieved 2014-12-19.
  3. "Developer Preview License Agreement | Android Developers". Retrieved 2014-03-20.
  4. "Licenses". Android Open Source Project. Open Handset Alliance. Retrieved 2012-09-09. The preferred license for the Android Open Source Project is the Apache Software License, 2.0. ... Why Apache Software License? ... For userspace (that is, non-kernel) software, we do in fact prefer ASL2.0 (and similar licenses like BSD, MIT, etc.) over other licenses such as LGPL. Android is about freedom and choice. The purpose of Android is promote openness in the mobile world, but we don't believe it's possible to predict or dictate all the uses to which people will want to put our software. So, while we encourage everyone to make devices that are open and modifiable, we don't believe it is our place to force them to do so. Using LGPL libraries would often force them to do so.
  5. "Refs - kernel/omap - Git at Google". Retrieved 2017-03-15.
  6. "Release notes - Google Glass Help". Retrieved 2017-03-15.
  7. "Google Glass Explorer Editions start receiving XE5 software update, new features". Engadget. Retrieved 2017-03-15.
  8. "Google Glass Receiving XE6 Update With Massive Photo Quality Improvements - Here Is The Full Changelog". Android Police. 2013-06-04. Retrieved 2017-03-15.
  9. "Updating Glass software - Google Glass Help". Retrieved 2017-03-15.
  10. 1 2 "System and Kernel Downloads - Google Glass - Google Developers". Google Developers. Retrieved 2017-03-15.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.