Featured image of post PixelExperience 12.1 / 12.1 Plus 20220828-0246 Official Venus Build

PixelExperience 12.1 / 12.1 Plus 20220828-0246 Official Venus Build

Linux 5.4.191, new CL tag, exFAT driver update, vendor and firmware update from the latest MIUI Stable, QTI BT component override sync wiht stock, lots of bug fixes and general improvements in dynamic thermal profile and AOD brightness, user selectable WiFi Calling when roaming, statusbar visual glitch fix (for real), August security patch, Monet color theme in boot animation, and many more fixes.


  • Please follow the wiki for detailed install instructions. I will not provide support if you fail to follow the required steps.
  • If you are on my previous PE 12 / 12 Plus builds, you can directly OTA or dirty flash in recovery. A concise version of clean flash guide for the experienced users:
    • Download the vendor_boot.img (
    • Download PE recovery from the official PE website
    • Boot your phone into bootloader mode. You can either
      • hold power + volume down button
      • or adb reboot bootloader
    • Connect your phone to a computer
    • Run fastboot flash vendor_boot vendor_boot.img in your cmd/powershell/terminal
    • Run fastboot flash boot pe_recovery_file_name.img in your cmd/powershell/terminal
    • Hold power + volume up to boot into recovery, or fastboot reboot recovery
    • In PE recovery, select Factory reset" --> "Format data/factory reset
    • Go back to main menu and select “Apply update” –> “Apply from ADB”
    • Run adb sideload in your cmd/powershell/terminal and wait until it finishes
    • Reboot to system

Device Specific Changes

  • Etude kernel: Op.12 Op.2
    • Linux 5.4.191
    • merged CL tag LA.UM.9.14.r1-20200.01-LAHAINA.QSSI12.0
    • updated the exFAT driver
  • Updated vendor and firmware blobs from MIUI Stable V13.0.13.0 for star and V13.0.9.0 for venus
  • Synced Bluetooth component override with stock
    • Enabled Bluetooth HID Profile
  • Also disable fod hbm on cancel() in the fingerprint HAL. This may help alleviate race conditions that prevent fod hbm being disabled after leaving the lockscreen.
  • Dynamic thermal profile bug fixes and general improvement
    • Fixed the issue of thermal profile getting reset to default if you turn off and then turn on the screen while an app is in the foreground.
    • Fixed the issue of thermal profile app list sometimes not showing all apps and also improved the overall smoothness when scrolling through that list
  • AOD brightness bug fixes and general improvement
    • Fixed the issue where doze brightness may reset to an incorrect value after reboot.
    • The AOD brightness menu now remembers your previous choice after toggling the AOD switch.
  • Allowed users to select WiFi Calling when roaming by default
  • Actually fixed the statusbar visual glitch in landscape mode
    • the glitch was caused by multiple issues, including but not limited to a seemingly incorrect conversion from dp to px and sometimes incorrect paddings after a statusbar burn-in protection shift
  • Fixed an issue of the privacy indocator chip becoming vertically compressed in landscape mode
  • Fixed an issue that sets incorrect doze brightness after a user activity time out on the lockscreen
  • Added some vertical margin to the recovery UI so that text prompts appearing from the bottom of the screen do not get cut off by the rounded corners
  • Set an overlay to prefer 120Hz in keyguard

ROM Side Changes

  • August security patch
  • The boot animation now follows Monet color theme as well.
  • The issue of videos in the YouTube app sometimes gets randomly unpaused should be fixed.
  • Merged fixes that may help address the issue of Google Pixel’s SystemUpdate draining battery and building up heat in the background.
  • Brought back the AOSP haptic strength menu in Settings/Accessibility.

Known Issues

  • One of the gapps update may mess with the haptic feedback strength. I am not sure if it still happens after we reverted back to the AOSP haptic strength menu. If your haptic feedback feels weak after a clean flash, go to Settings/Accessibility/Vibration & haptics and try setting all 3 categories again. You only need to do it once, and the haptic strength will remain normal afterwards.
  • Light sensor reading is affected by the screen brightness. This may cause jumpy auto brightness under low light.
    • We have two light sensors, one in the front under the display panel, and the other on the back. Currently only the front one is reported as an android.sensor.light sensor, of which the auto brightness is based off. The problem is that the light emitted by the display panel also affects the front light sensor, so the sensor reports a high value when the screen is displaying bright white content, even if the phone is actually in a dark environment with little ambient light. (What could go wrong when you put an ambient light sensor directly under a light source?) MIUI uses some algorithm to combine the reading of both light sensors on the system side in, but we do not have such mechanism on AOSP. More work is needed to bring up our own solution in the future.
  • The AOSP Camera2 app may take a severely cropped and blurry photo using the main sensor on the back. This is caused by an incorrect selection of default image ratio and resolution. In the main UI of Camera2, swipe to the right to reveal the photo/video switch buttons. On the bottom right corner, press the small “gear” icon to enter settings. In “Resolution and quality”, change “Back camera photo” to the second option: (4:3) 13.1 megapixels.

Download | XDA thread | Support group

Licensed under CC BY-NC-SA 4.0
comments powered by Disqus
Built with Hugo
Theme Stack designed by Jimmy