CleanROM v2.0 Released!

Release Date for Patreon Members: 1st January 2019, 6:30AM CET

Public Release Date : 1st February 2019, 6:30AM CET

Main website :

If you enjoy the development that Black-Seraph has offered, please consider joining him at Patreon or maybe just buy him a coffee at Ko-fi page.

Refresh bug squashed!

This will be the last time it will be referred to as the Refresh Bug since the problem did not have anything to do with the GFX driver or the GPU. From here on out it will be referred to as BOB ( because I decided it! ).  So instead of pretending to know how it was fixed or what the problem actually was here is a comment from Black-Seraph:

For those technically inclined, here's an explanation of the issue: in Linux there's two major ways to safe CPU power and improve battery life. Hotplug support and scaling governors. The job of the hotplug support is to evaluate how many CPU cores the system needs right now and enable or disable CPU cores to ensure the system only uses as many cores as are currently required to ensure smooth operation. Scaling governors have the same purpose, but they regulate core frequency without turning them off.

The Hotplug support on the XD+ is bugged though (or badly configured?), turning off CPU cores while they are in active use. After realizing it's mistake it panics and turns the core back on... Resulting in a constant core on / off cycle that causes the stutter we thought was vsync related.

As it turns out the XD+'s HPS messes up because the battery thermal sensor on the XD+ is a fake.
It constantly returns extremely high temperatures forcing the interactive governor into constant minimal cpu frequencies and HPS into a constant emergency anti overheat routine.

Turning HPS off fixes the cpu toggle issue... While the ondemand governor (which CleanROM enables by default) takes care of the rock bottom cpu frequencies.

Summed up:

The "refresh" issue was that HPS (hotplug support driver) was pulling cpu4 (big core #1) away while the apps were still using it. This caused a wait situation on app threads which would in turn cause a dip in fps. The reason multithreaded emulators got away with it was because they moved their cpu loads away from cpu4 (the one that kept getting turned on and off).

So now that BOB has been killed, let's move on to everything else that has changed.


  • "Refresh Bug" has been fixed (Hotplug settings toggle has been added) - BOB
  • TWRP can now make use of MicroSD cards and OTG storage, all partitions can now be backed up and restored.
  • Updates are now rolled out as both SPFlash as well as TWRP packages.
  • HDMI can now be used with the lid closed.
  • Reboot to recovery button has been added to the Power Menu.
  • Status bar icons are now properly themed in light & dark mode
  • Governor has been changed to OnDemand
  • MicroG signature spoofing support has been added ( This means you do not have to use GApps if you don't want )
  • LeanLauncher has been chosen as the new default launcher
  • Headphone jack polarity toggle has been added / v1 and v2 kernels have been merged
  • Factory reset has been fixed
  • Several strings have been translated to German and Spanish
  • Fingerprint cloned from Samsung Galaxy S3 (to pass Google Play Certification)
  • Microphone has been boosted by 100%
  • Broken / Unused settings have been removed
  • CleanROM version is now part of the build string under "About tablet"
  • Back button repetition bug has been fixed / worked around
  • Pre-bundled gapps have been updated


So what changed? ( simple version )

Aside from the biggest change ( the death of BOB ), there are some pretty nice features added to CleanRom.  Here is a small list of the major changes:

  • CleanRom will now be packaged in a TWRP flashable zip as well. This will allow you to update using TWRP and you will not longer need a PC or SPFlashTool to upgrade or update. You can download and install CleanRom all from within your GPD XD+, if you so choose.
  • Upgraded TWRP. It has been updated so you can now use your micro SDCard or an OTG Flash drive to use as a means of storage. This means you can backup directly to a flash drive or your card. Backups will start to become big and having this extra option will come in handy.
  • The GPD XD+ will now allow you to use an HDMI connection while you close your screen. It will save power and extend your battery life all while keeping your device nice and cool. You will no longer have that tiny screen distracting you while you retro game or while you watch "Frozen" for the 250th time.
  • "Reboot to recovery" has been added to the Power Menu to make it easier to get into TWRP. No more special button combos or timings to get into TWRP. Hopefully this will encourage more of you to take advantage of this wonderful too. TWRP is a must for any android device that I personally own.


So please enjoy this feature packed update and remember to recognize Black-Seraph as the developer that made all of this possible.


If you enjoy the development that Black-Seraph has offered, please consider joining him at Patreon or maybe just buy him a coffee at Ko-fi page.