I unrooted and re-installed stock recovery from CWM on my Nvidia Shield Tablet. But when I tried to install an OTA, I got However when I tried to install the update, I got a red triangle error. After checking the log I got an error saying "Package expects build fingerprint of ... or ..., this device has ...."

I can't remember what the fingerprints were, but the first one was something that began with "nvidia/", had a bunch of numbers in the middle followed by an underscore, then it ended with "/release-keys".

However the device's current build fingerprint was exactly the same as the first, except that it cut off halfway through, right after the numbers and the underscore.

Resetting the cache didn't work. How was this error caused, and how can I fix this without wiping my data?

  • 1
    As far as I know. You cant install an OTA with a custom recovery. Not unless you download the OTA and manually flash it. I had a similar problem when I was trying to be lazy when going back to stock for the recall. Ended up downloading the stock image and flashing with adb/fastboot. Did you download the stock image from nvidia's website? Also not sure why it would be asking for finerprints seeing how the device doesnt have a f.print scanner.
    – jer3my
    Aug 25, 2015 at 22:03
  • 1
    @jer3my it's "build fingerprint", an identifier of a build (e.g. firmware), not a physical fingerprint.
    – Andrew T.
    Aug 26, 2015 at 1:28
  • @AndrewT. oh derp. My bad. Lol
    – jer3my
    Aug 26, 2015 at 2:13
  • Anyone having the same issue? I have given an explanation here. Read from: No, you cannot switch to any random newer update using incremental OTA update...
    – Firelord
    May 24, 2017 at 21:19

2 Answers 2


I've faced the same issue when trying to update OTA from Android 4.4.4 to Android 5.1 and now from Android 5.1 to a new version.

I'm assuming your phone is rooted and you have a custom recovery installed.

1. Find out your build fingerprint.

  • Install CID Getter and check the ro.build.fingerprint entry.

    (In my case, its value is motorola/peregrine_retbr/peregrine:5.1/LPB23.13-35.5/5:user/release-keys)

Check your value again.

Double-check it, and triple-check it, it's very, very, VERY important to get it right to the last bit.

2. Obtain the zip file for your OTA update

Start the OTA update process (settings -> phone -> check updates). It will download a file and place it on your internal memory, for instance for me it's /cache/Blur<long file name>.zip.

Obtain that file and place it on your computer (I have used my custom TeamWin recovery to do that).

3. Check the updater script

Inside this zip file, there will be a file called /META-INF/com/google/android/updater-script.

There will be a line similar to the one below:

getprop("ro.build.fingerprint") == "motorola/peregrine_retbr/peregrine:5.1/LPB23.13-35.5/5:user/release-keys" || 
getprop("ro.build.fingerprint") == "motorola/peregrine_retbr/peregrine:5.1/LPBS23.13-35.5-1/1:user/release-keys" ||
abort("Package expects build fingerprint of motorola/peregrine_retbr/peregrine:5.1/LPB23.13-35.5/5:user/release-keys or motorola/peregrine_retbr/peregrine:5.1/LPBS23.13-35.5-1/1:user/release-keys; this device has " + getprop("ro.build.fingerprint") + ".");

What's it doing in this case? This line checks for the build fingerprint and aborts the process if it's not exactly either motorola/peregrine_retbr/peregrine:5.1/LPB23.13-35.5/5:user/release-keys or motorola/peregrine_retbr/peregrine:5.1/LPBS23.13-35.5-1/1:user/release-keys.

4. Compare your build and the updater script.

Seriously. Check it again.

5. Edit the updater script

Delete this line. Place the edited file on the zip file.

6. Patch and be happy!

Use your custom recovery to apply the patch without signature verification.


If you have flashed anything that modifies system files -- including, but not limited to, SuperSU and the Xposed framework -- you might need to revert those files to their original state, since the OTA update will perform a check on many system files. In order to revert those files, consult the documentation from whatever you flashed.

  • Did this worked with anyone I have same error?
    – Tech Wolf
    Apr 6, 2018 at 7:47
  • @TechWolf It didn't for me. May 27, 2018 at 15:14

This answer isn't immediately applicable to OP's Nvidia tablet, but I'll leave it here in case it's useful to others.

https://mirrors.lolinet.com/ hosts many Motorola stock ROMs. I don't know if the site is trustworthy or not, but I'm using it now.

After you download a stock zip, use https://github.com/dlenski/motoflash2sh to generate a flashing shell script which doesn't depend on the existence of an existing unmodified stock ROM. The resulting script will have fastboot erase userdata || exit 1. Remove or comment-out this line if you don't want to clear all data on the phone.

I don't know if you can install those zip files through TWRP.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .