Note
- Due to an issue with compressed apex, the built-in system updater may fail to install. Please download and flash in recovery directly.
- Formatting data with PE recovery is REQUIRED for clean flash
- DO NOT use any other recovery
- The firmware is included with a different keymaster.img from perseus. DO NOT flash your own firmware.
- Keymaster is bumped to 4.0 for encryption, and cust partition is mounted as /metadata. You WILL NOT be able to boot TWRP/OrangeFox on PE12.
- To switch to other ROMs, format data in PE recovery first, and then install another recovery. You may need to re-flash the required firmware, if the ROM you are going to flash does not include one.
- You can dirty flash from my previous PE 12 builds.
- You cannot upgrade from android 11 directly. Formatting data is required.
PE recovery flash guide
- Download PE recovery from the official PE website
- Boot your phone into fastboot mode. You can either
- hold power + volume down button
- or
adb reboot bootloader
- or use the
Reboot to bootloader
option in TWRP/OrangeFox
- Connect your phone to a computer
- Run
fastboot flash recovery pe_recovery_file_name.img
in your cmd/powershell/terminal - Hold power + volume up to boot into recovery
PE 12 flash guide
- Boot into PE recovery
- Select
Factory reset" --> "Format data/factory reset
. You phone should say that /data, /cache, and /metadata have been formatted. - Go back to main menu and select “Apply update” –> “Apply from ADB”
- Connect your phone to a computer
- Run
adb sideload pe_rom_file_name.zip
in your cmd/powershell/terminal and wait until it finishes - Reboot to system
Device Specific Changes:
- Etude kernel: Op.12 No.2
- Linux 4.9.297 and CAF tag
LA.UM.9.8.r1-04400-SDM710.0
- built with the latest Clang 14 and ThinLTO
- backported optimizations on qrwlock from mainline kernel
- backported optimized spinning loop in osq lock
- reduced cache line size back to 64KB to avoid occasional network packet allocation performance issue
- dropped unnecessary ndelay in kernel timers because we have queued spinlock
- DO NOT use another kernel. Just don’t.
- Linux 4.9.297 and CAF tag
- Enabled Quick Tap
- you can trigger certain actions by double tapping the back of the phone
- enable it in Settings/System/Gestures/Quick tap
- Switched to Skia Vulkan as HWUI renderer
- the GL renderer has memory allocation/deallocation issues that sometimes crash apps like Twitter when you scroll through lots of images and videos. This is also happening on stock Pixel 6
- Vulkan does not seem to have this issue for now, and it has much less jitter. Some apps like Spotify may still not be fully smooth in certain scrolls, due to a combination of app implementation and AOSP android 12 issues
- Went back to audio HAL v5 to match our prebuilt audio HAL
- Fixed a bug in the recovery override process
- PE recovery is supposed to overwrite your current recovery if no change is made to the boot partition
- this is the same stock behavior on MIUI. You can avoid it by making any changes to the boot partition, like flashing Magisk
- Updated DPM, IMS, and RIL system blobs from
LA.QSSI.12.0.r1-05100-qssi.0
- missing ringback tone (the one after a call is connected and before the other side picks it up) in some carriers should be fixed
- Switched to CAF’s latest IMS RCS implementation
- Telephoto lens should be selectable in certain gcam ports
- tested on BSG’s 8.1 gcam; BSG’s 8.3 does not use the aux camera yet, as the time of writing
ROM side updates:
- January security patch
- Unlimited backup for Google Photos should be working again
- Fixed a SystemUI crash when connecting to certain Bluetooth devices or plugging in a headphone
- Fixed the dark notification background bug in certain scenarios
- Fixed the battery saver QS tile being out of sync with the actual battery saver toggle
- Many other misc fixes
Known Issues
- Rounded corners are broken. It does not seem to be an issue on the device side, as debug info reports correct values
Please report issues to jjpprrrr.