AAOS OTA Upgrade Failure: Device Stuck in Bootloader After Slot Switch (Android Automotive 13.0.0_2.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

AAOS OTA Upgrade Failure: Device Stuck in Bootloader After Slot Switch (Android Automotive 13.0.0_2.

551 Views
harish_12
Contributor I

Hi NXP Support Team,

Issue Report:Android Automotive 13.0.0_2.3.0 (Linux 6.1.36_2.1.0 BSP) → Android Automotive 14.0.0_1.1.0 (LF_v6.1.55 BSP) OTA Upgrade Failure (A/B Slot Switch Stuck in Bootloader)

 


**Environment:**

* Source Version (Working):

* Android Automotive OS: 13.0.0_2.3.0
* BSP: Linux 6.1.36_2.1.0
* Target Version (Upgrade):

* Android Automotive OS: 14.0.0_1.1.0
* BSP: LF_v6.1.55
* Build Type:

* userdebug (both source and target builds)
* Hardware Platform:

* i.MX8Q (mek_8qxp mek)

---

**OTA Package Details:**

* OTA Type: A/B OTA (payload.bin based)
* Payload Location:

```
/data/ota_package/payload.bin
```
* Properties File:

```
/data/ota_package/payload_properties.txt
```

---

**OTA Command Used:**

```
update_engine_client \
--payload=file:///data/ota_package/payload.bin \
--update \
--headers="$(cat /data/ota_package/payload_properties.txt)"
```

---

**Observed Behavior:**

1. OTA update process completes without immediate errors.
2. Device reboots after update.
3. Active slot changes:

```
getprop ro.boot.slot_suffix
_a → _b (expected behavior)
```
4. However, device does NOT boot into Android 14.
5. Device gets stuck in bootloader loop:

```
U-Boot SPL 2023.04 (May 01 2026 - 15:11:21 +0530)
Normal Boot
Trying to boot from MMC1
Authentication key not yet programmed
Booting from bootloader_b...
```

(Repeats continuously)

---

**Additional Observations:**

* Before OTA:

```
getprop ro.build.version.release
13
```

* After reboot:

* Slot switches correctly
* But Android userspace never comes up

 

Please let me know if any additional logs or details are required.

Thank you for your support.

Best regards,
Harish K

 

Labels (1)
Tags (2)
0 Kudos
Reply
1 Reply

401 Views
AldoG
NXP TechSupport
NXP TechSupport

Hello,

Are you testing using a secured device (close)?
Also, make sure that the header equals to the exact content of payload_properties.txt. No more "space" or "return" characters.

Best regards/Saludos,
Aldo.

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2374468%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EAAOS%20OTA%20Upgrade%20Failure%3A%20Device%20Stuck%20in%20Bootloader%20After%20Slot%20Switch%20(Android%20Automotive%2013.0.0_2.%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2374468%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHi%20NXP%20Support%20Team%2C%3C%2FP%3E%3CP%3EIssue%20Report%3AAndroid%20Automotive%2013.0.0_2.3.0%20(Linux%206.1.36_2.1.0%20BSP)%20%E2%86%92%20Android%20Automotive%2014.0.0_1.1.0%20(LF_v6.1.55%20BSP)%20OTA%20Upgrade%20Failure%20(A%2FB%20Slot%20Switch%20Stuck%20in%20Bootloader)%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CBR%20%2F%3E**Environment%3A**%3C%2FP%3E%3CP%3E*%20Source%20Version%20(Working)%3A%3C%2FP%3E%3CP%3E*%20Android%20Automotive%20OS%3A%2013.0.0_2.3.0%3CBR%20%2F%3E*%20BSP%3A%20Linux%206.1.36_2.1.0%3CBR%20%2F%3E*%20Target%20Version%20(Upgrade)%3A%3C%2FP%3E%3CP%3E*%20Android%20Automotive%20OS%3A%2014.0.0_1.1.0%3CBR%20%2F%3E*%20BSP%3A%20LF_v6.1.55%3CBR%20%2F%3E*%20Build%20Type%3A%3C%2FP%3E%3CP%3E*%20userdebug%20(both%20source%20and%20target%20builds)%3CBR%20%2F%3E*%20Hardware%20Platform%3A%3C%2FP%3E%3CP%3E*%20i.MX8Q%20(mek_8qxp%20mek)%3C%2FP%3E%3CP%3E---%3C%2FP%3E%3CP%3E**OTA%20Package%20Details%3A**%3C%2FP%3E%3CP%3E*%20OTA%20Type%3A%20A%2FB%20OTA%20(payload.bin%20based)%3CBR%20%2F%3E*%20Payload%20Location%3A%3C%2FP%3E%3CP%3E%60%60%60%3CBR%20%2F%3E%2Fdata%2Fota_package%2Fpayload.bin%3CBR%20%2F%3E%60%60%60%3CBR%20%2F%3E*%20Properties%20File%3A%3C%2FP%3E%3CP%3E%60%60%60%3CBR%20%2F%3E%2Fdata%2Fota_package%2Fpayload_properties.txt%3CBR%20%2F%3E%60%60%60%3C%2FP%3E%3CP%3E---%3C%2FP%3E%3CP%3E**OTA%20Command%20Used%3A**%3C%2FP%3E%3CP%3E%60%60%60%3CBR%20%2F%3Eupdate_engine_client%20%5C%3CBR%20%2F%3E--payload%3Dfile%3A%2F%2F%2Fdata%2Fota_package%2Fpayload.bin%20%5C%3CBR%20%2F%3E--update%20%5C%3CBR%20%2F%3E--headers%3D%22%24(cat%20%2Fdata%2Fota_package%2Fpayload_properties.txt)%22%3CBR%20%2F%3E%60%60%60%3C%2FP%3E%3CP%3E---%3C%2FP%3E%3CP%3E**Observed%20Behavior%3A**%3C%2FP%3E%3CP%3E1.%20OTA%20update%20process%20completes%20without%20immediate%20errors.%3CBR%20%2F%3E2.%20Device%20reboots%20after%20update.%3CBR%20%2F%3E3.%20Active%20slot%20changes%3A%3C%2FP%3E%3CP%3E%60%60%60%3CBR%20%2F%3Egetprop%20ro.boot.slot_suffix%3CBR%20%2F%3E_a%20%E2%86%92%20_b%20(expected%20behavior)%3CBR%20%2F%3E%60%60%60%3CBR%20%2F%3E4.%20However%2C%20device%20does%20NOT%20boot%20into%20Android%2014.%3CBR%20%2F%3E5.%20Device%20gets%20stuck%20in%20bootloader%20loop%3A%3C%2FP%3E%3CP%3E%60%60%60%3CBR%20%2F%3EU-Boot%20SPL%202023.04%20(May%2001%202026%20-%2015%3A11%3A21%20%2B0530)%3CBR%20%2F%3ENormal%20Boot%3CBR%20%2F%3ETrying%20to%20boot%20from%20MMC1%3CBR%20%2F%3EAuthentication%20key%20not%20yet%20programmed%3CBR%20%2F%3EBooting%20from%20bootloader_b...%3CBR%20%2F%3E%60%60%60%3C%2FP%3E%3CP%3E(Repeats%20continuously)%3C%2FP%3E%3CP%3E---%3C%2FP%3E%3CP%3E**Additional%20Observations%3A**%3C%2FP%3E%3CP%3E*%20Before%20OTA%3A%3C%2FP%3E%3CP%3E%60%60%60%3CBR%20%2F%3Egetprop%20ro.build.version.release%3CBR%20%2F%3E13%3CBR%20%2F%3E%60%60%60%3C%2FP%3E%3CP%3E*%20After%20reboot%3A%3C%2FP%3E%3CP%3E*%20Slot%20switches%20correctly%3CBR%20%2F%3E*%20But%20Android%20userspace%20never%20comes%20up%3C%2FP%3E%3CBR%20%2F%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EPlease%20let%20me%20know%20if%20any%20additional%20logs%20or%20details%20are%20required.%3C%2FSPAN%3E%3C%2FP%3E%3CP%20class%3D%22%22%3E%3CSPAN%3EThank%20you%20for%20your%20support.%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%3CSPAN%3EBest%20regards%2C%3C%2FSPAN%3E%3CBR%20%2F%3E%3CSPAN%3EHarish%20K%3C%2FSPAN%3E%3C%2FP%3E%3CBR%20%2F%3E%3CP%3E%3CIMG%20border%3D%220%22%20alt%3D%22%22%20%2F%3E%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-2374468%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CLINGO-LABEL%3EEvaluation%20Board%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2376149%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20AAOS%20OTA%20Upgrade%20Failure%3A%20Device%20Stuck%20in%20Bootloader%20After%20Slot%20Switch%20(Android%20Automotive%2013.0.%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2376149%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%2C%3CBR%20%2F%3E%3CBR%20%2F%3EAre%20you%20testing%20using%20a%20secured%20device%20(close)%3F%3CBR%20%2F%3EAlso%2C%20make%20sure%20that%20the%26nbsp%3Bheader%20equals%20to%20the%20exact%20content%20of%20payload_properties.txt.%20No%20more%20%22space%22%20or%20%22return%22%20characters.%3CBR%20%2F%3E%3CBR%20%2F%3EBest%20regards%2FSaludos%2C%3CBR%20%2F%3EAldo.%3C%2FP%3E%3C%2FLINGO-BODY%3E