Android 13 Update Guide for Zebra
Android 13 Update Guide for Zebra
1
Contents
1. Introduction ...................................................................................................................................................................................... 2
2. A/B (Seamless) OS Update implementation on SDM660 devices .................................................................................................... 3
3. How AB system is different to Non-AB system ................................................................................................................................ 4
4. OS Update from Zebra.com and LifeGuard Over the Air (OTA) ....................................................................................................... 5
5. Sequential nature of Delta OTA packages ........................................................................................................................................ 5
6. Android AB Mode for OS Update ..................................................................................................................................................... 6
7. Recovery Mode for OS Update ......................................................................................................................................................... 6
8. Reset Packages and special recovery packages................................................................................................................................ 7
9. OS Update Operations - Upgrade and Downgrade .......................................................................................................................... 7
10. OS Upgrade and Downgrade via EMMs ........................................................................................................................................... 8
11. AB Streaming Update ....................................................................................................................................................................... 9
12. User Notification for Full OTA package Upgrade or Downgrade.................................................................................................... 10
13. OS Update - Screenshots ................................................................................................................................................................ 11
14. Recovery Mode ............................................................................................................................................................................... 13
15. Installation from Recovery Mode ................................................................................................................................................... 18
a) Performing a System Update Using SD Card or USB Drive ......................................................................................................... 18
b) Performing a System Update Using ADB Commands from Host Computer............................................................................... 19
c) Verifying System Update Installation ......................................................................................................................................... 19
16. UPL (Update Package List) mechanism .......................................................................................................................................... 20
17. Status messages to EMMs .............................................................................................................................................................. 22
18. Possible device interruptions during an OTA package update ....................................................................................................... 22
19. AB Fallback mechanism .................................................................................................................................................................. 23
20. Rescue Party Mode ......................................................................................................................................................................... 23
21. Recovery logs .................................................................................................................................................................................. 24
1
1. Introduction
Zebra uses AB mechanism for OS Update on SDM660 products running Android O and above. This is a new
OS Update mechanism which is unavailable on other Zebra products with Android O.
The intent of this document is to advise Zebra customers and service about
1. AB OS Update mechanism
2. How to apply OTA packages on SDM660
3. How AB devices are different to legacy Non-AB systems
TC52, TC57, TC77, TC72, PS20, TC52AX, TC57X, TC52X, TC21, TC26, WT6300, CC605, CC610, CC600, CC6000, MC20
Context of the note An important or critical note. Users should be aware of this change.
Context of the note A note which serves as additional information to the reader.
2
2. A/B (Seamless) OS Update implementation on SDM660 devices
• Full OTA and Delta OTA (Patch) updates can occur while the system is running, without interrupting the
user. This means users can continue to use their devices during an OTA upgrade. After the installation of
OTA package is completed, device reboots into the updated image.
• AB device are fault tolerant by providing a backup slot. If device fails to boot-up, then it will fall back to a
backup slot (reboot back into the old partition) and the device remains usable.
• Updates can be streamed to devices supported by this document, removing the need to download the
complete package before installing it.
• Full OTA packages and Delta OTA packages of each LG release will be available on Zebra.com.
• AB updates can be streamed using LifeGuard Over the Air (OTA) 3.0 APIs.
• For customers who are using Zebra LifeGuard Over the Air (OTA) solution, you can upgrade to the target
OS LG software version in a single step with the help of a single OTA delta package. This OTA delta
package is called true delta package which contains the exact delta required to install the target LG
software version.
This true delta OTA package will be serviced by LifeGuard Over the Air (OTA) solution and will not be
available on zebra.com. You can find more details on LifeGuard Over the Air (OTA) solution at Zebra
TechDocs portal.
• The size of OTA delta packages will be much smaller than Full OTA packages.
3
3. How AB system is different to Non-AB system
OS Update Use Case Non-AB AB Notes
AB: Device shall apply Full OTA Package via Android AB mode when
applied via EMM.
Recovery Android AB User can manually enter recovery mode to apply Full OTA package
Flashing Full OTA Package
Mode Mode too.
Non-AB: Device shall boot into recovery mode to apply any OTA
package.
AB: Device will apply OTA delta package in background via Android
AB mode. User can manually enter recovery mode to apply OTA
Recovery Android AB delta package too.
Flashing Delta OTA Package
Mode Mode
Non-AB: Device shall boot into recovery mode to apply any OTA
package.
AB: Device shall boot into recovery mode to apply Enterprise and
Factory Reset packages
Recovery Recovery
Flashing Reset Packages
Mode Mode
Non-AB: Device shall boot into recovery mode to apply Enterprise
and Factory Reset packages
AB: Full and Delta OTA updates can occur while the system is
running, without interrupting the user. At the end, device reboots
into the new installed image. Rebooting to new OS image is the
only device downtime user will experience.
Device downtime for OS Update - +
4
4. OS Update from Zebra.com and LifeGuard Over the Air (OTA)
LifeGuard
OS Update Use Case Zebra.com Over the Air Notes
(OTA) 3.0
5
6. Android AB Mode for OS Update
Full and delta OTA packages will be installed via Android AB mode. As part of this:
a. Full and delta OTA package will be applied on the device silently in the background.
b. User can continue using the device while OTA packages will be applied.
c. Post installation is complete, a device notification will be displayed confirming the installation is
completed and device shall auto-reboot after 15 secs.
d. Device will auto-reboot to boot into newly installed OS image after the OTA package installation is
completed successfully.
e. Customers can also configure the device to wait for Update clients (e.g., FOTA) or EMMs to notify
device to reboot.
f. AB streaming mode will be used by default for customers using LifeGuard Over the Air (OTA) solution
to update the device. The OTA package will not be completely downloaded and saved on device
before starting the installation. Rather the OTA package contents will be streamed to the device and
installed.
g. StageNow tool can be used to perform OS Update using an OTA package in manual mode (without
the need to go into Recovery mode). Please search and click on Power Manager section in the link
provided.
As part of this:
a) The device will be automatically reboot to recovery mode.
b) Reset packages or special packages will be applied using recovery mode.
c) Device will reboot back to home screen after installation is completed in recovery mode.
d) Customers can enter recovery mode using key combinations or using “adb reboot recovery” command.
6
8. Reset Packages and special recovery packages
Zebra devices support reset packages to erase userdata and enterprise partition. These packages will be
applied via recovery mode.
Package Information
Enterprise Reset Erase userdata partition and persist enterprise partition
All Devices Do not use older reset packages from Oreo/Pie/A10/A11 on A13 OS.
If the device is running on a higher Google security patch level compared to the OS image to be installed,
then customer cannot upgrade to such an image. This behavior follows Google security requirements to
protect device from exploiting any known security vulnerabilities. User data is persisted on all OS Upgrade
operations.
Customers can perform OS downgrade to an older OS dessert image or to a LG patch image (Using Full OTA)
having a lower Google security patch level compared to Google security patch level on device. If customer
performs OS downgrade operation, device will reboot and user data will be erased automatically.
1. Customers shall be able to perform OS Upgrade (move to a higher version** of OS Image) using Full OTA
package.
2. Customers shall be able to perform OS Upgrade (move to a higher version** of OS Image) using delta
OTA image.
3. Starting from A11 on SDM660 devices, customers can downgrade (move to an older/lower version* of
OS Image) operation using Full OTA packages only.
4. Separate interfaces are provided to perform OS Upgrade & OS downgrade operations.
5. All OS downgrade operation will result in an Enterprise Reset operation. i.e., user data is erased on OS
downgrade operation.
** higher
version → Following parameters will be considered to identify if an OS image to be installed is
higher or lower compared to device OS version.
a. OS Google Security patch level (ro.build.version.security_patch)
7
b. OS software version (ro.device.patch.version)
c. OS Hotfix version
d. Custom OS version
https://techdocs.zebra.com/mx/powermgr/
OS Update
OS Upgrade OS Downgrade
via EMM
Allowed OTA
Full OTA Package, OTA Patch image, UPL Full OTA Package
Packages
Data NO
YES
persistence Auto data reset shall be performed
UPGRADE ONLY DOWNGRADE ONLY
Upgrade from current OS to a higher OS software Downgrade from current OS to a lower/older OS version
version Downgrade from current OS to a OS software version on
Upgrade from current OS to a higher SPL version lower/older OS version
Upgrade from current OS to a higher version of OS Downgrade from Patch to a lower/older OS version
Upgrade from current OS to a higher Hotfix version Downgrade from Patch to a lower/older Hotfix version
Upgrade from Patch to a higher software version Downgrade from Hotfix to a lower/older Hotfix version
Upgrade from Patch to a higher SPL version Downgrade from Hotfix to a lower/older SPL version
Allowed OS
Upgrade from Patch to a higher version of OS Downgrade from Custom OS to a lower/older Custom
Update use
Upgrade from Patch to a higher Hotfix version software version
case
Upgrade from Hotfix to a higher Hotfix version Downgrade from Custom OS to a lower/older Custom OS
Upgrade from Hotfix to a higher SPL version SPL version
Upgrade from Custom OS to a higher Custom Downgrade from Custom OS version to a lower/older
version Custom OS version
Upgrade from Custom OS to a higher Custom OS SPL Downgrade from Custom OS version to Custom OS
version software version on a lower/older Custom OS version
Upgrade from Custom OS to a higher Custom
version of OS
All Devices Suppress reboot flag shall not be considered in case of OS downgrade.
Performing OS upgrade to higher dessert but having lower SPL will result in
All Devices
data reset.
8
Recovery UI also has been modified for OS Upgrade and Downgrade. Separate OS Upgrade and
Downgrade options have been enabled in recovery UI to perform OS Update operation.
Kindly visit below sections in this document for detailed explanation on recovery mode.
OS Update package can be streamed to A/B devices, removing the need to download the OTA
package to the device before installing it. With help of AB Streaming mode user can perform OS
update operations even if disk space is low. Same OTA package can be used for both AB streaming
and AB seamless updates.
AB streaming mode will be used by default for customers using LifeGuard Over the Air (OTA) 3.0
solution to update the device.
The delta OTA package will not be completely downloaded and saved on device before starting the
installation. Rather the delta OTA package contents will be streamed to the device and installed.
Similarly, AB streaming updates will be used if there is a need to install a Full OTA package from
LifeGuard Over the Air (OTA) 3.0 solution.
Customers who self-manage their devices will have to download the required OTA package from
zebra.com and copy the same to the device. AB Streaming update will not be applicable for this use-
case.
While AB streaming update is in progress, a progress bar shall show the progress of the operation.
After AB streaming update has completed, device shall show a notification that in 15 seconds device
will auto-reboot. After 15 seconds, device will auto-reboot into new OS image. OS update status is
made available via OEMInfo as well.
Device needs to authenticate with server before the OTA package residing on server can be
streamed. EMM solution or FOTA solution who is initiating OS Update job will have to generate the
authentication Id and share with device using Power Manager CSP.
9
Device supports following protocols to perform AB streaming:
• http
• https (recommended for better security)
Installing Full (upgrade/downgrade) and Delta OTA packages can be accomplished using AB
streaming update. All other Enterprise use cases of Zebra cannot be supported by AB Streaming
update.
• Installing multiple OTA packages using UPL is not supported by AB streaming update.
• In prior desserts, if the device was flashed with an OS dessert or version that is not supported by
the device a notification used inform user that a sub-optimal version of OS is running.
10
13. OS Update - Screenshots
A Full OTA package installation has started Installation of Full OTA package completed
11
A Full OTA package installation has failed to apply Notification for Cancelling an OS Update job
12
14. Recovery Mode
From recovery UI customers can install full OTA packages, OTA Patch images and reset packages.
SDM660 Recovery UI provides the following options to perform various operations in recovery
mode and apply different packages:
• Reboot system now
• Apply upgrade from ADB
• Apply upgrade from SD card
• Apply upgrade from USB drive
• Apply downgrade from ADB
• Apply downgrade from SD card
• Apply downgrade from USB drive
• View recovery logs
• Power off
Different UI options within Recovery mode and their functionalities are explained below in detail.
All Devices Please ignore Device Name and Build Fingerprint displayed on the screenshots.
13
• Apply upgrade from ADB
Upgrade packages via adb will be applied when we select this option. User can only perform OS
Upgrade operation and not downgrade operation using this option.
User should enter the package name via adb sideload interface.
Upgrade packages via External SD card will be applied when we select this option. User can only
perform OS Upgrade operation and not downgrade operation using this option.
14
Using this option, customers can perform OS Upgrade using Full OTA packages, OTA
Patch images and install Reset Packages from SD card.
15
• Apply upgrade from USB drive
Upgrade packages via USB drive will be applied when we select this option. User can
only perform OS Upgrade operation and not downgrade operation using this option.
Using this option, customers can perform OS Upgrade using Full OTA packages, OTA
Patch images and install Reset Packages from USB drive.
Downgrade packages via adb will be applied when we select this option. User can only perform
OS Downgrade operation and not upgrade operation using this option.
Once selecting this option user should enter the package name via adb side load interface.
Downgrade packages via External SD card will be applied when we select this option. User can
only perform OS Downgrade operation and not upgrade operation using this option.
Using this option, customers can perform OS downgrade using Full OTA packages, OTA
Patch images and install Reset Packages from SD card.
Downgrade packages via USB drive will be applied when we select this option. Using this option,
customers can perform OS Upgrade using Full OTA packages, OTA Patch images and install Reset
Packages from USB drive.
16
User can only perform OS Downgrade operation and not upgrade operation using this option.
17
• Power off
All Devices Please refer to product specific documentation for key combinations.
Press and hold the indicated buttons until the Zebra screen appears.
OR
using “adb reboot recovery” command.
18
7. From the on-screen menu using volume keys scroll to “Apply upgrade from SD Card” or
“Apply upgrade from USB Drive”. When the selection is highlighted press the power key to
select.
8. When the install is complete select the reboot option and press the power button to reboot
the device.
If device number does not appear, ensure that ADB drivers are
All Devices
installed properly.
19
16. UPL (Update Package List) mechanism
UPL allows user to perform anyone of the below use-cases in a single step for device administrator
• Apply multiple firmware OTA packages along with an OS OTA package
• Apply any configuration OTA packages along with an OS OTA package
• Apply reset packages after installing an OS image
• Perform device reset using commands instead of packages
Till A10 on SDM660, an UPL file could have a Full OTA package of a baseline followed by delta OTA
package of a LG patch version belonging to the same baseline. This would allow device
administrator to update to the required LG patch on a baseline in a single step.
Starting Android 11, an UPL file cannot consist of both Full OTA and Delta OTA
All Devices
package.
Customers can directly install the Full OTA package of the required LG OS
All Devices
version.
The Full OTA package can be downloaded from zebra.com. If customer is using the LifeGuard Over
the Air (OTA) 3.0 solution, then device can be directly updated to the required LG patch version
using a delta OTA package provided by LifeGuard Over the Air (OTA) 3.0.
Rules to build an UPL. On A11 and above, UPL can consist of the following combinations:
• Full OTA package + Reset/Special package
• Full OTA package + Reset command
• OS Patch image (e.g., LG patch) + Reset/Special package
• OS Patch image (e.g., LG patch) + Reset command
Following combinations are supported only when downgrading from A11 to A10 or below:
• Full OTA package + OS Patch image (e.g., LG patch)
• Full OTA package + OS Patch image (e.g., LG patch) + Special package
• Full OTA package + OS Patch image (e.g., LG patch) + Reset command
Device can be reset using following UPL commands and are supported on A10 and above. This avoids
the need to push a reset package while using UPL.
• EnterpriseReset
• FactoryReset
20
• Contain only UPL commands
Sample1.upl Sample2.upl
package:Full_OTA_Package.zip package:Full_OTA_Package.zip
package:FactoryReset.zip command:FactoryReset
Sample3.upl Sample4.upl
package:Patch_OS_Package.zip package:Patch_OS_Package.zip
package:FactoryReset.zip command:FactoryReset
Sample5.upl Sample6.upl
package:Baseline_Delta_Package.zip package:Baseline_Delta_Package.zip
package:FactoryReset.zip command:FactoryReset
To install an UPL, copy UPL file and its corresponding OTA packages to the same location on the
device. Select UPL filename to install the packages and not any individual OTA package names.
If UPL and OTA packages were copied to internal memory (/sdcard or /data/tmp/public)
then these files should not be re-used.
UPL files and OTA packages residing in internal memory of device should be
All Devices deleted after they have been applied. Do not re-use the same packages or
UPL files.
All Devices UPL file cannot be installed using adb sideload mode.
All Devices Device will reboot after applying an OTA package if Reset is included in UPL
21
17. Status messages to EMMs
OS Update status is sent as an intent. Data Analytics captures the same and stores it in OEMInfo
content provider. EMMs can read OEMInfo content provider to fetch the exact status of OS Update
operation. Device does not display any kind of UI notification when an OS Update is in
progress/applied/failed.
1. Low Battery condition. If Battery falls below 30% capacity, ongoing OS Update will
be interrupted and resumed only after connecting to a battery source.
2. Device can be shutdown, enter critical battery state, media ejected (external SD Card), or
low Storage in userdata partition (<200MB). In all the above scenarios, ongoing OS Update
will be cancelled.
3. If device is rebooted in middle of an OS Update operation, the ongoing job will be suspended
for seamless update and cancelled for steaming update. On reboot of device, OS Update job
will be resumed and completed only in case of a seamless update.
22
19. AB Fallback mechanism
In Android AB system if an OTA fails to apply (for example, because of a bad flash), the user will not
be affected. The user will continue to run the old OS (existing OS image), and the customer can re-
attempt the update.
If an OTA update is applied but fails to boot, the device will reboot back (fallback) into the
old/existing OS image and device remains usable. This allows our customer to re-attempt the
update.
Android on SDM660 includes a feature that sends out a "rescue party" when it notices core system
components are stuck in crash loops. Rescue Party then escalates through a series of actions to
recover the device. As a last resort, Rescue Party reboots the device into recovery mode and
prompts the user to perform a factory reset.
Rescue party logs can be collected using RxLogger. One must enable RxLogger plugin for recovery
mode to collect rescue party logs.
23
21. Recovery logs
User can fetch recovery logs using RxLogger. One must enable RxLogger plugin for recovery mode to
collect recovery logs.
User will not be able to pull recovery logs from /data/tmp/public/recovery path which was
available in Android Oreo & Pie.
Last 10 Recovery logs are saved under this folder for debug purposes.
24