Project Treble – Can Android Fix Their Update Problem Now?

by | Dec 19, 2018

 Software updates are what makes a rather static piece of electronics gadget keep up with the advancements in technology.

Having the latest software updates on your smartphone or computer makes it perform better and more efficiently than ever before.

Not only these devices benefit from performance improvements, but many security vulnerabilities that keep on getting exposed in the wild will also be fixed, making these gadgets safe and secure for personal usage.

In this article, we’ll be discussing software updates for smartphones in particular, and about the project treble implementation by Google to minimize segmentation issues with the Android OS versions running on different devices.

A brief history of software updates

In the earlier days of electronics, the software once flashed directly on to the chip from the factory, remained untouched for the entire life cycle of the product.

Even if the software used in the product was later found to contain bugs or critical security vulnerabilities, there was not much chance of getting the bug fixed on a CPE (customer premise equipment) such as mobile phones or computers.

In those days, you had to flash the software on the chips for getting updated to the newest version, which was a complex task involving some level of technical know-how, which most of the general public lacked.

But with the advancement in technology, OTA (over the air) updates came into existence.

ota-updates

With the data connection on your gadget, it became easier to download the updates for your device from a central repository owned by the manufacturer and flash it directly on to the device, with just a mouse click or a touch confirmation.

Project Treble

Project Treble is a massive restructuring of the Android operating system making the low-level code separate from the main system framework that faces the end users.

project-treble

In simple words, Project Treble makes it easy for smartphone manufacturers to keep up with Google’s software update track.

Project Treble ensures timely software updates and security patches to the end users without having to wait for so long.

Since the OEMs don’t have to wait for the chipset makers to change the underlying code, the update process becomes streamlined and relatively quicker.

Why Project Treble?

Android operating system faced this big problem where the software updates got released once a year, but the truckloads of OEMs releasing the phones (Nokia, Xiaomi, Samsung etc.) were unable or was too adamant to release software updates for the same.

This caused many of the phones to remain running on outdated operating systems riddled with bugs and security loopholes, which deterred the name and goodwill of Android itself.

Even established brands like Samsung was so slow in delivering software updates for its flagships let alone the mid-range and budget phones.

Some of the Samsung flagships receive updates after a full year of its release, which is completely unacceptable, given the amount of cash a customer has to spend on buying those device.

Why this delay in releasing software updates?

Let’s snoop into a bit more detail on how and why do the manufactures delay or never release software updates for their Android smartphone.

In order to understand the software updates, we should first know about the building blocks of the Android OS.

Fret not, this is going to be a cakewalk with easy to understand language and without those tech jargons that will poke you in your ribs.

Android was, up until the Nougat release, a mess that looked and worked beautifully from the outside but a complicated piece of code strangling each other in its core.

These complicated innards were too confusing to maintain for outsiders, other than Google because of the primary reason that they used to swap their own customizations on top of the Android versions bundled with their hardware.

You might have used a Samsung phone with TouchWiz, or an Honor phone with EMUI, or a Xiaomi phone running MIUI.

All these devices essentially run the same Android OS but looks way too different at the surface.

Adding these customizations to the existing Android code is a herculean task on its own.

Code shuffling

In the past, Android operating system used to come as a single bundle, with the low-level code and the system framework facing the end user mixed and matched together.

This makes the chipset vendors such as Qualcomm, MediaTek and others to work on drivers for the SoC and the kernel to interact with the hardware, every time when Google released an update.

Android System Architecture

  Android system architecture [source: android.com]

This work takes about 3-4 months after Google released the update.

Then this has to reach the OEM using the same chipsets in their phones to tweak and add customizations.

The customizations that they had made in the past might not work with the new update as the SoC manufacturer changed the underlying code for the kernel to interact with the hardware.

Thus the OEM starts spending days and nights, spending valuable human hours and research to build a working new UI with the latest Android base.

This causes a delay of another 4-5 months by which Google will have another release ready to ship.

Troubles faced by the OEM

  • Have to rework on the entire OS from scratch
  • Endless debugging and human hours for the update process
  • Economically not viable for smaller OEMs
  • Difficult for OEMs with multiple devices in the market at once

Advantages of Project Treble

Google came up with an ingenious solution for this problem by the time they released the Android Nougat.

They planned to bring a new implementation of separating the low-level chipset code from the framework code staring from their next major release, i.e the Android 8.0 Oreo.

Legacy Android update environment

Legacy Android update environment [source: android.com]

With Project Treble, Google re-architectured the Android code and made it multilayered.

They separated the Android framework that underwent the most changes in a release from the kernel level code.

This made the OEMs not wanting to wait for the updated drivers from chipset manufacturers to start the implementation of their own UI.

Since the low-level code is almost untouched, with slight changes it becomes easy to boot the new software on the existing hardware with little effort and much less time.

Current Android update environment

Current Android update environment

Google had made it compulsory for every manufacturer making Android handset to make their devices Project Treble capable from Android 8.0 onwards without which, they couldn’t get Google certification and testing for integration of Google services such as Play Store and Account setup.

Positive results of Project Treble

Although Project Treble started with Android 8.0 Oreo and the framework was laid before, the real litmus test for the success of Project Treble comes with the adoption of Google’s latest Android 9.0 Pie update.

Most of the Android phones released to the market in the last quarter launched with Android 8.0 and Android 8.1 onboard, so if everything goes right as we planned, there should be a relatively quick and easier migration of a large number of handsets from Oreo to Pie.

Android GSI (Generic System Images)

Android GSI is an operating system on its own compiled from the AOSP (Android Open Source Project) code.

According to Google, each device certified with Project Treble should in theory work with the GSI image with minimal or no alterations.

With the advent of Project Treble, now handsets from OEMs notorious for pushing software updates can practically run the latest Android OS, provided that they support Project Treble in the first place.

Third-party developers or tech enthusiasts can easily port the GSI to their hardware without much effort and enjoy the same benefits of a handset released officially with the latest Android OS.

Treble compatibility with smartphones

How to know if your smartphone supports Project Treble?

It’s quite easy – just head over to the Play Store and download a treble compatibility checker and there you have it.

But let’s do this the old-fashioned way.

  • If your phone came with Android 8.0 and up, then yes, the phone supports Project Treble.
  • If your phone is released with Android 7.0 and has been updated to Android 8.0, you should check the treble compatibility with the apps available in the Play Store. It’s up to your OEM to enable Project Treble on your device. Fingers crossed.
  • If your phone is released with an older version of the operating system than Android 8.0 and is never expected to officially get an 8.0 update, you are literally doomed.

A/B seamless partitions

A/B seamless partitions, by definition, is not a necessary requirement for treble compatibility.

This feature first surfaced with the Android 7.0 Nougat operating system. Unlike Project Treble compatibility, this feature is optional for the OEMs to include on their handsets.

What it does is to create two partitions of the system memory related to boot images.

When an update is received, the system downloads and installs the update to one of these partitions and silently install the updates on it, while the other partition continues to run the OS normally.

Advantages of A/B seamless partitions

  • The chances of update failure and the device getting into a boot loop is eliminated
  • Updates can run in the background while continuing to use the phone normally
  • Reboot after updates takes the same time as a normal reboot and nothing more.

Final Thoughts

Project Treble is a much-needed reform to the otherwise near perfect operating system that is Android.

Since the number of handsets running the OS is in tune of billions, the significance of having the latest features and security updates is paramount.

With hundreds of OEMs releasing thousands of smartphone models a year, the risk for the number of devices getting obsolete and outdated OS is more and by implementing the Project Treble initiative, Google is hoping to solve the problems up to a larger extent.

If successful in the implementation, project Treble will streamline the update mechanism and the OEMs can easily catch up with the mainstream Google updates in relatively less time, which is beneficial for Google, the OEMs and the end users equally.