# Upgrade OTA

Source: [https://docs.qualcomm.com/doc/80-88500-2/topic/upgrade_ota_linux_embedded.html](https://docs.qualcomm.com/doc/80-88500-2/topic/upgrade_ota_linux_embedded.html)

Qualcomm assumes that your device application fetches the OTA update package from the
            remote server and the recovery executable on your device performs the OTA upgrade.

Qualcomm does not provide the application feature for your device. Implement your
            solution to fetch the update package onto the device.

To upgrade A/B OTA, perform the following steps:
1. Use your device application to `fork()` the directory
                        /usr/bin/recovery.
2. Perform the equivalent operations on your device to the following code including
                    the adb shell command, depending upon your upgrade requirement:

        cd build-qti-distro-rb-debug/tmp-glibc/deploy/images/qrb5165-rb5/qti-robotics-imageCopy to clipboard

    - For full upgrade, run the following adb shell commands:

            adb rootCopy to clipboard

            adb push full_update_ext4.zip /dataCopy to clipboard

            adb shell /usr/bin/recovery --update_package=/data/full_update_ext4.zip
            Copy to clipboard
    - For incremental upgrade, run the following adb shell commands:

            adb rootCopy to clipboard

            adb push incremental_update_ext4.zip /dataCopy to clipboard

            adb shell recovery --update_package=/data/incremental_update_ext4.zip
            Copy to clipboard

## Result

To know the status of the OTA upgrade, check the log data in
                    /tmp/recovery.log. If:
- The `return/exit` is 0, then the OTA upgrade is
                        successful.
- The `return/exit` is 1, then the OTA upgrade is
                        unsuccessful.

Example of a successful OTA upgrade log
                data:

    set_inactive_slot_as_active: Setting inactive_slot(_b) as active
    set_inactive_slot_as_active: Set _b as active slot successfully
    minzip: Closing archive
    I:/data/full_update_ext4.zip
    time_total: xx
    retry: 0
    bytes_written_system_b: xxxxxxxx
    bytes_stashed_system_b: 0
    Recovery exiting, upgrade success!Copy to clipboard

**Parent Topic:** [Over-the-air (OTA) (Linux Embedded)](https://docs.qualcomm.com/doc/80-88500-2/topic/over_the_air_ota_linux_embedded.html)

Last Published: Aug 18, 2023

[Previous Topic
Generate incremental OTA upgrade package](https://docs.qualcomm.com/bundle/publicresource/80-88500-2/topics/generate_incremental_ota_upgrade_package.md) [Next Topic
Update-alternatives](https://docs.qualcomm.com/bundle/publicresource/80-88500-2/topics/50_Update_alternatives.md)