System upgrade of S7?

Hi all
I got a galaxy S7 with pre-installed /e/ in September. Shortly after I upgraded the OS via the About Phone -> System updates to /e/OS 0.11-2020083170819

I have since checked regularly for new updates, on that screen, but none are found.
According to https://doc.e.foundation/devices/herolte/upgrade it appears that a manual upgrade via sideload is required. But this will wipe the phone, right?

It does say to take a complete backup, but I have not found out how to do that nor how to restore it afterwards. Is there any info on this?

And can I upgrade from 0.11 to the currently available 0.13 directly?

Thanks for any help (and for the great OS!)

1 Like

Don’t do any manual stuff, just be patient. Devices bought in the /e/ shop get the most stable version of the OS. Because of problems with version 0.12, everything got delayed heavily and nobody with phones from the shop has received updates for quite some time.
Now most of the issues are resolved. You will receive the next upgrade normally but it may take one or two more weeks.

1 Like

I think the update in discussion is from Nougat to Oreo, which has to be done manually.

The full wipe is not absolutely mandatory (the upgrade was successful for me) but it reduces the risk of problems (small bugs on several system features) in the future.

Same, I also upgraded and kept all my multimedia files. Apps had to be reinstalled and reconfigured, but in my case this was mainly WhatsApp and Signal.

But I’d backup nonetheless.

Thanks for the heads up and the additional info!
The phone says it’s Android version 7.1.2, I assume that makes it Nougat?
The latest os version for that model seems to be Oreo, with manual currently the only upgrade option.

I have no problem with doing manual upgrades, but I can also wait if an automatic upgrade is coming soon. I still do not understand though, how the Android version relates to the /e/ os version. I see that there is the manual upgrade to oreo and 0.13. Will there also be 0.13 for nougat, or are the versions somehow tied together?

Thanks again

I assume that makes it Nougat?

Correct!

The latest os version for that model seems to be Oreo, with manual currently the only upgrade option.

Also correct.

I can also wait if an automatic upgrade is coming

OS upgrade isn’t possible at the moment. I upgraded like described in the wiki and it’s pretty straight forward. You’re changing to the Dev branch this way. Otherwise, phones bought from /e/ are on stable, which are released after the Dev branch was tested by the users.

how the Android version relates to the /e/ os version

If the img file has a “n” in it’s name it’s Nougat (Android 7), if it’s an “O” it’s Oreo (Android 8) which is also the highest version Samsung released for the S7.

Will there also be 0.13 for nougat

Probably - the 0.13 is basically the /e/ Stuff on top of Android. I think for the moment you can have current Builds with Nougat, Oreo, Pie and Q, depending on your device. There’s also an unofficial Pie build for our device.

I’m happy I upgraded. The phone stopped getting randomly hot and the volume and share menue are way better in Oreo.

1 Like

Dear /e/ Forum,

I know I’m way behind, I know that this isn’t good and I know that I don’t understand half of the stuff that people talk about here. But maybe someone can help me.
I have a
Samsung S7 SM-G930F on Android 8.1.0
system version 0.20-o-20211210151039-dev-herolte.
I want to upgrade my phone and I’m also not sure what to do: I read all the instructions here: /e/OS Version Upgrade.
I have twrp on my phone and installed /e/ and all updates so far manually via twrp (thanks to the help of @SuzieQ).
Can I just follow the steps under the section “downloads for herolte” or do I have to upgrade to something else first or revert to stock rom?
If this questions is already answered, I just didn’t get it. I really researched the forum, but like I said, I don’t have much clue and don’t always understand everything people post here. I’d really appreciate some guidance for dummies. Thanks in advance.

No need to revert back to Stock OS to upgrade it, because there is not more recent available than the one you already have, based on android 8.

You can check there :
select your country ( CSC = carrier dépendant or not…)

Thanks @piero for the quick reply.
Do I install the first or the latest release?: /e/ image ROM download
And can I install the image via twrp and the latest image on an sd-card without using a computer as I did the first time or do I have to do it via the instructions given (using adb)?

I think latest is good
as installing all the builds one after one is not needed.

Yes !
But take a backup, (don’t forget “internal-storage” that is not included in the /data backup using TWRP) …
and first don’t wipe anything, as official instructions don’t require it
https://doc.e.foundation/devices/herolte/upgrade

I’m attempting the same upgrade (herolte 8.1 → q)
Following the upgrade guide all seemed to go well until, after rebooting and decrypting, I was asked to log in (draw pattern).
When the correct pattern is drawn the screen just goes black, and after some seconds the login screen reappears. The loop continues forever, also after new reboots.

adb logcat says (among other things):

9
10-30 22:36:06.808 4663 4950 D LockSettingsService: spBasedDoVerifyCredential: user=0 challengeType=0 hasEnrolledBiometrics=true
10-30 22:36:06.851 3535 3535 I TlcTeeGatekeeper: TEE_Verify:479 mcMap - current_password_handle
10-30 22:36:06.870 4564 4564 D keystore: AddAuthenticationToken: timestamp = 192215, time_received = 200
10-30 22:36:06.879 4564 8512 E keymaster_worker: getAuthToken failed: -5
10-30 22:36:06.886 4663 4950 W System.err: android.security.keystore.KeyPermanentlyInvalidatedException: Key permanently invalidated
10-30 22:36:06.886 4663 4950 W System.err: at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1368)
10-30 22:36:06.887 4663 4950 W System.err: at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1413)
10-30 22:36:06.887 4663 4950 W System.err: at android.security.keystore.KeyStoreCryptoOperationUtils.getInvalidKeyExceptionForInit(KeySt
oreCryptoOperationUtils.java:54)
10-30 22:36:06.887 4663 4950 W System.err: at android.security.keystore.KeyStoreCryptoOperationUtils.getExceptionForCipherInit(KeyStoreC
ryptoOperationUtils.java:89)
10-30 22:36:06.887 4663 4950 W System.err: at android.security.keystore.AndroidKeyStoreCipherSpiBase.ensureKeystoreOperationInitialized(
AndroidKeyStoreCipherSpiBase.java:265)
10-30 22:36:06.887 4663 4950 W System.err: at android.security.keystore.AndroidKeyStoreCipherSpiBase.engineInit(AndroidKeyStoreCipherSpi
Base.java:148)
10-30 22:36:06.887 4663 4950 W System.err: at javax.crypto.Cipher.tryTransformWithProvider(Cipher.java:2980)
10-30 22:36:06.887 4663 4950 W System.err: at javax.crypto.Cipher.tryCombinations(Cipher.java:2891)
10-30 22:36:06.887 4663 4950 W System.err: at javax.crypto.Cipher$SpiAndProviderUpdater.updateAndGetSpiAndProvider(Cipher.java:2796)
10-30 22:36:06.888 4663 4950 W System.err: at javax.crypto.Cipher.chooseProvider(Cipher.java:773)
10-30 22:36:06.888 4663 4950 W System.err: at javax.crypto.Cipher.init(Cipher.java:1288)
10-30 22:36:06.888 4663 4950 W System.err: at javax.crypto.Cipher.init(Cipher.java:1223)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.SyntheticPasswordCrypto.decrypt(SyntheticPasswordCrypto.ja
va:65)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.SyntheticPasswordCrypto.decryptBlob(SyntheticPasswordCrypt
o.java:144)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.SyntheticPasswordManager.decryptSPBlob(SyntheticPasswordMa
nager.java:1137)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.SyntheticPasswordManager.unwrapSyntheticPasswordBlob(Synth
eticPasswordManager.java:998)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.SyntheticPasswordManager.unwrapPasswordBasedSyntheticPassw
ord(SyntheticPasswordManager.java:927)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.LockSettingsService.spBasedDoVerifyCredential(LockSettings
Service.java:2664)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.LockSettingsService.doVerifyCredential(LockSettingsService
.java:1901)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.LockSettingsService.doVerifyCredential(LockSettingsService
.java:1880)
10-30 22:36:06.888 4663 4950 W System.err: at com.android.server.locksettings.LockSettingsService.checkCredential(LockSettingsService.ja
va:1858)
10-30 22:36:06.889 4663 4950 W System.err: at com.android.internal.widget.ILockSettings$Stub.onTransact(ILockSettings.java:527)
10-30 22:36:06.889 4663 4950 W System.err: at android.os.Binder.execTransactInternal(Binder.java:1021)
10-30 22:36:06.890 4663 4950 W System.err: at android.os.Binder.execTransact(Binder.java:994)
10-30 22:36:06.891 4663 4950 E JavaBinder: *** Uncaught remote exception! (Exceptions are not yet supported across processes.)
10-30 22:36:06.891 4663 4950 E JavaBinder: java.lang.RuntimeException: Failed to decrypt blob
[…]

Everything else seems to be there (I get notifications from my apps on the login screen, see my custom background image etc.).

Is there a known problem with unlocking the screen via pattern after upgrading?

Best & thx

Markus

i think you could be

supposed to remove pattern before upgrading

OR

supposed to decrypt the device before upgrading

becauseTWRP don’t manage encrypted partitions

If not working,
Mabe you can try to install the “recovery-e” using TWRP and then install /e/ using the “recovery-e”

Just to repeat: The decryption of the phone during startup works. I get prompted for the pattern, enter it, then android starts.
It’s the login into the running system that’s failing.
I made a backup of the data partition before upgrading.
Could restoring that help?

After searching the “warnings” just before your “error”, this

com.android.server.locksettings.LockSettingsService.checkCredential(LockSettingsService.java:1858)

led to this https://android.googlesource.com/platform/frameworks/base/+/4f868ed/services/core/java/com/android/server/LockSettingsService.java.
line 475:

There’s no guarantee that this will safely connect, but if it fails we will simply show the lock screen when we shouldn’t …

Are you able to do a Factory reset from TWRP?

I find it strange that the quoted upgrade guide does not include Format data – personally, I would expect an OS Upgrade from Oreo to Q to require Format data.

If Factory reset fails, you might consider Format data from TWRP.

1 Like

Thanks for the pointers!
TWRP seems to have been “automatically” replaced by e-recovery during the upgrade …
I had hoped to avoid that, but I was able to reset/format the data partition from there.
Now, after setting everything up again, the phone works, but obviously the data is gone.

Is there a chance that the backup from the old partition is still compatible with the new system?

You need your PC to reinstall TWRP to use the Backup/Restore feature.

Just did the upgrade and have the exact same problem. :worried:

Do you also have an encrypted partition?
Did you format data before the upgrade?

To start from scratch
You could restore e-0.20-o /system and /data using your TWRP’s backup, then trying to decrypt the device, and finally install the /e/ upgrade