• If you are experiencing issues logging in, we moved to a new and more secure software and older account passwords were not able to be migrated. We recommend trying to reset your password, then contacting us if there are issues.
  • Nearly done! Migration cleanup is mostly done. There are a small number of issues left that we continue to work on, but all the heavy lifting is done. We still would love to hear feedback over at this thread and also check out the new XDA app! Thanks and we hope you enjoy the new forums, and thanks for your support of XDA <3

[ROM][6.0.1][AOSP][OPTIMIZED] UltimateROM [Stable][FINAL #2][21.08.2018]

ChronoMonochrome

Elite Member
Jan 29, 2014
2,276
4,896
113
Stavropol
The Prehistory of UltimateROM

About a month ago I decided to set out to improve the performance of my phone with a more optimized build. I had already begun building OmniROM 5.1.1 with a some set of optimizations based on the work of OptiPop Team, and shortly after some the major issues on Marshmallow on our devices were resolved, this idea to create an ultimatively optimized AOSP-based ROM has born.

Why Should You Use UltimateROM? What makes it different?!

Honestly, I don't necessarily care, how many users or downloads my ROM has. Most importantly, and what I do care about is people liking and enjoying their phone; if you try UltimateROM and you like it, great! I'm glad you enjoy it. If you don't, maybe leave some feedback on how I can improve it, and go try something else in the meantime. If you'd like to know, what I've done that makes this ROM unique, here is a list:
  • Highly optimized. similar to Linaro(and in many ways, better than), build, resulting in a smoother Android
  • Compeletely developed in the open, everything I do is right on my GitHub for anybody to use and improve upon.
  • A unique kernel which attempts to balance features, stability, and of course, performance
  • Almost the sources, excluding apps, the SystemUI and some more, are based on CyanogenMod ones, which means there are more fixes and support for our legacy devices (even though CyanogenMod itself doesn't really support any devices like our, anyway google doesn't even do that minimal support as CM Team does)
  • Disabled SELinux. Looking backward on how many issues SELinux was causing and still causing for people that use it on MM, it seems to me a ridiculuos how google promotes and implements it everywhere, without any proof of improving anything rather than making worse.

Current Information

Everything I do with UltimateROM I always test personally on my phone, but anyway...
Code:
#include <disclaimer.h> 
/*
 * I am not responsible for bricked devices, dead SD cards, thermonuclear
 * war, or the current economic crisis caused by you following these
 * directions. YOU are choosing to make these modifications, and
 * if you point your finger at me for messing up your device, I will
 * laugh at you.
 */
Please also note that currently I don't test installation with the Gapps. So far installation is only tested as dualboot ROM - though, the uploaded build is an usual one, - please let me know if the uploaded build has issues with booting, even though normally this should not happen.

What's working:
  • RIL (phone/SMS/3G)
  • Video (playback & recording)
  • Audio (playback & recording)
  • Wi-fi
  • Bluetooth
  • Camera (Front and rear)
  • 2D/3D HW Acceleration
  • USB, MTP, ADB
  • all native tethers (Wifi/BT/USB)
  • external storage

What's not
  • Formatting SDcard as adoptable storage will screw it up (don't format / encrypt)
  • MTP bug with doubled folders in sdcard root folder


ROM features:
  • Dark Marshmallow Theme
  • long volume press to skip track
  • PA Pie control
  • SlimRecents / improved AOSP recents
  • Re-added task manager
  • Navigation Bar
  • System UI tuner
  • expanded desktop
  • storages are swapped by default
  • extended reboot menu
  • customizable button backlight settings
  • Viper4Android FX
  • superuser embedded

Download

UltimateROM

Installation


Before installation, make sure that you have enough free space on partition /system. AT LEAST 540 Mb is required for this build if installing WITHOUT any Gapps. If you don't have enough space, follow repartition manual. (at your own responsibility for any kind of possible damage. Be sure to measure twice and cut once!). There is a CWM ReParted zip that was tested by @Culateralligator.

  • wipe cache
  • make sure you're using TWRP 2.8.6.0. All the below is only tested on this recovery. Philz is not supported by this ROM and not planned to in the near future. Note that TWRP from the linked topic requires preinstalled chrono kernel.
  • install ROM first
  • install latest chrono kernel
  • install gapps (optional), if you do so, make sure you are not running of space on /system ( about GApps )


Sources:


https://github.com/UltimateROM/android_manifest

Thank Yous

SergeyL - many-many thanks for an initial set of patches, device tree and TWRP 3.0.0.0! Also thanks for helping me implementing some features to this ROM.
JDCTeam, BenzoROM - thanks for great cherry-picks!
MWisBest - this project was heavily inspired by his FML (Fork My Life) ROM
OptiPop - an initial set of optimizations that the currently used by me is based upon

@Meticulus - thanks for his great contributions on our devices!
@AGONTUK - thanks for an initial Marshmallow bring up!
@nieltg - Sources for Galaxy Ace 2 device
@golden-guy - thanks for great cherry-picks !
@TeamCanjica - vendor and hardware sources
@Unjustified Dev - Audio fixes

Google
CyanogenMod

AOKP
SlimROMs
EuphoriaOS
OmniROM
AOSPA

Viper4AndRroid Team

And many other devs, I could forget (please write me if I did so).

Special Thanks
@shaqman89 - for providing the build server
@S.AMU - for providing FTP server

XDA:DevDB Information
UltimateROM, ROM for the Samsung Galaxy Ace II

Contributors
ChronoMonochrome, SergeyL, JDCTeam, OptiPop Team, BenzoROM, OmniROM, AOKP, CyanogenMod, SlimRoms, AOSPA, Temasek.
Source Code: https://github.com/UltimateROM

ROM OS Version: 6.0.x Marshmallow
ROM Kernel: Linux 3.4.x
ROM Firmware Required: Stock 4.1.2 ROM or up + kitkat-compatible recovery
Based On: AOSP, CyanogenMod

Version Information
Status: Stable

Created 2016-03-20
Last Updated 2018-08-20
 

ChronoMonochrome

Elite Member
Jan 29, 2014
2,276
4,896
113
Stavropol
Changelogs

Changelog

20.08.2018 - build #13
  • sources update
  • switch to opensource sensors
  • switch more device libs to open source base
  • unified codina / janice build

02.12.2017 - build #12
  • fixed native moving apps to SDcard
  • APP2SD and similar apps now should work correctly *
  • fixed second incoming call not to crash rild (not tested, needs confirmation), thanks to @SergeyL
  • small RIL fixes
NOTE: installation method was updated. Flash latest chrono kernel build after this ROM install.

02.04.2017 - build #11
  • kernel updated to r5.0
  • sdcard mount fixes
  • integrated an unofficial build of the Xposed framework
  • ported the utility mtools *
* for repairing the broken sdcard label you can move the file /system/bin/mtools to /system/xbin folder, then type in the terminal emulator mlabel/i]. It will show the current sdcard label and will prompt to type the new one.

27.02.2017 - build #10
  • updated sources to 6.0.1_r78
  • added an initial support of the PowerHAL *
  • ported some changes from Resurrection Remix 7.1.1 build (thanks to SergeyL for patches)
  • updated kernel to r5.x.x (mostly updates from google android-3.4 kernel)
  • changed recovery to TWRP 3.x.x
  • unstable MySQL optimizations are reverted
  • changed buttons backlight mode - backlight is only enabled when buttons are pressed
  • experimental change scheduling policy of the surfaceflinger to FIFO
  • maybe, something yet
* at the moment there's no support of changing the PowerHAL profiles from the Settings, however, you can change profile in a file /system/etc/init.d/999powerhal
Proceed installation of this build only with data wipe.


20.09.2016 - build #9
  • Fully switched to an opensource RIL! Many thanks to Meticulus for finding the working RIL sources and fixing it, also I'd like to thank millosr and mickybart from Nozomi (Xperia S) forum for fixing the crash when performing a call and providing patches for debugging the proprietary libril!
  • More libs now are built from source - credit goes to Meticulus
  • Added sdcardfs support (requires at least build r4.8 of Chrono Kernel)
  • Added home key press to accept the incoming call and power key press to end the active call features from CyanogenMod - thanks to SergeyL for helping with finding those patches
  • Changed LowMemoryKiller tunables to the more aggressive + increased zram size to 400Mb - multitasking should be (hopefully) better
  • Changed Dynamic governor tunables to be more aggressive
  • Various minor fixes that improves the stability of ROM
  • We've also finally got rid of all shim (i.e. interposed) libraries that were needed in order for some features (camera, GPS etc) to work


30.05.2016 - build #8
  • updated wifi autoconnection fix (fixed the battery stats)
  • fixed SystemUI FC when switching USB mode via status bar notification
  • fixed GSM / WCDMA preferred / WCDMA Only switching
  • fixed soft reboot when switching 2G/3G with an enabled mobile data
  • added Pie Control from Paranoid Android
  • added SlimRecents
  • updated AOSP recents implementation ("clear all" button doesn't properly work, so don't enable it or use SlimRecents)
  • added task manager
  • allowed disabling of brighness slider disabling
  • revert AOSP camera to 5.1.1 (fixed the photo cropping issue)
  • added FAT images mounting via UMS support (use
    sys.config.opt_sd0device=full_path_to_the_image.img build.prop setting to override the device mounted as Sdcard0 or sys.config.opt_sd1device for Sdcard1)

26.05.2016 - build #7
  • Work around wifi autoconnection issue
  • Fixed video encoding issue by some apps (instagram video upload etc) - thanks to Meticulus for the original patch
  • Added LockClock back
  • Added option to show the weather in the status bar
  • Various small improvements, tweaks etc.

23.05.2016 - build #6
  • More ROM modules compiled with GCC instead of Clang (GCC supports more optimizations)
  • Almost ROM modules compiled with Link Time Optimizations
  • Enabled graphite optimizations for more ROM modules
  • Added autovectorization optimization on per-modular base
  • More modules built in ARM mode
  • Allowed disabling of FC notification
  • Added time-context custom header images feature
  • Added customization of the carrier label
  • Added SystemUI tuner
  • Added display autorotation setting

19.05.2016 - build #5
  • updated kernel to r4.4.1
  • added and enabled by default UMS (USB Mass Storage) mode
  • re-added some default AOSP optimizations
  • added navigation bar
  • added battery level icon customization setting
  • added long back press to kill app feature
  • remove 3 secs delay in Superuser before to give the app permissions
  • added feature of disabling mediascaner at boot
  • added Sqilte performance improvements
  • disabled an unnecessary debug
  • another fixes / improvements
  • fixed graphical glitches in some apps caused by new UMP lib
  • resized bootanication (thanks Lemu @ 4pda.ru)
  • fixed init.d scripts
  • added aggresive Dynamic governor settings

13.05.2016 - build #4

  • cleaned up the default google optimizations, removed unnecessary flags
  • disabled forcible ARM mode optimization - until I revisit this again
  • added performance settings from OmniROM
  • added CM Filemanager
  • added a few more opensource code to libUMP, replacing calls to old library
  • fxed up an inadeqate CPU time consumption caused by logd process

6.05.2016 - build #3
  • updated sources to 6.0.1_r30
  • kernel update to r4.3.1
  • switched to GCC 5.3 toolchain by UBER
  • enabled graphite, fast math, loop nest, unsafe loop and some more optimizations
  • entire build is compiled in ARM mode
  • switched to opensource RIL libraries (based on CyanogenMod repos)
  • UMP (Unified Memory Provider) library now is mostly opensource - based upon CM sources
  • Attempt to fix storage permission issues in some apps such as browser - not tested
  • fixup for RIL java code - thanks to @SergeyL
  • disabled scrolling cache
  • SQLite code optimizations
  • Reduced various delays
  • many other fixes and improvements - thanks to SergeyL for patches

20.03.2016 - build #2
  • fixed APN editor crash
  • added removed fonts back
  • removed Gallery, Calendar and PrintSpooler
  • Viper4Android driver post-install (no need to install manually anymore)
  • Fixed busybox related issues

20.03.2016 - build #1

  • initial release
 
Last edited:

fim5646

Senior Member
Jan 6, 2016
125
54
0
Beijing
Take some time to try this ROM, and now there are some issues
1.there are lost 4 opentype fonts (compared with Sergeyl's CM13)(JP,KR,SC,TC-Regular),so Simplified Chinese display likes XXX
2.V4A needs to works with busybox, lol...
But ROM works smooth ;)
 
Last edited:

ChronoMonochrome

Elite Member
Jan 29, 2014
2,276
4,896
113
Stavropol
Take some time to try this ROM, and now there are some issues
1.there are lost 4 opentype fonts (compared with Sergeyl's CM13)(JP,KR,SC,TC-Regular),so Simplified Chinese display likes XXX
These are removed, because of overly sized ROM. Are these fonts only that support these languages? If so, I'll of course re-add them. I was comparing this ROM to my OmniROM and haven't found these fonts, so I thought they can be safely removed.

2.V4A needs to works with busybox, lol...
I guess, it's common 6.0.x problem, as busybox has got partially replaced by toolbox and toybox from AOSP, thus making some apps confused.
 
Last edited:

fim5646

Senior Member
Jan 6, 2016
125
54
0
Beijing
These are removed, because of overly sized ROM. Are these fonts only that support these languages? If so, I'll of course re-add them. I was comparing this ROM to my OmniROM and haven't found these fonts, so I thought they can be safely removed.
Yeah,these 4 fonts only support Janpanese,Korean,Simplified Chinese and Traditional Chinese,(lastest outdated AOSP 6.0 has same problem...)Maybe OmniROM has different font files
I guess, it's common 6.0.x problem, as busybox has got partially replaced by toolbox and toybox from AOSP, thus making some apps confused.
Yeah....
 
Last edited:
  • Like
Reactions: ChronoMonochrome

ChronoMonochrome

Elite Member
Jan 29, 2014
2,276
4,896
113
Stavropol
phone says sandisk sd card is corrupted. I tried to format from phone but it didn't work. Also i can't use my camera without external sdcard. And why extsdcard is sdcard0

"Sorry for my english if a have a fault"
Did you format your sdcard as adoptable(internal) storage? This is something you actually shouldn't do and it's explicitly mentioned in the issues list as it doesn't work properly on our devices. SDcard should normally work without formatting (in case of M - which also performs encrypting of it), thanks to @SergeyL work. Now you have to format sdcard from Windows / *nix / whatever other OS; if even this won't help, we'll probably need a volunteer to test it. Personally for me sdcard works, but you may want to try SergeyL's CM13 to see if it's working there.
 
Last edited:
  • Like
Reactions: Fake2Dead

Pastorious

Member
Feb 23, 2016
9
2
0
WiFi is unstable, lost connection from time to time, Web Browser is crashing. And any of gapps do not work - do not fit in system. Yes, i readed first post, i have orginally partitioned internal card and do not want touch it. SergeyL's CM13 work with smallest gapps
 

Fake2Dead

New member
Mar 20, 2016
4
0
0
Samsun
Did you format your sdcard as adoptable(internal) storage? This is something you actually shouldn't do and it's explicitly mentioned in the issues list as it doesn't work properly on our devices. SDcard should normally work without formatting (in case of M - which also performs encrypting of it), thanks to @SergeyL work. Now you have to format sdcard from Windows / *nix / whatever other OS; if even this won't help, we'll probably need a volunteer to test it. Personally for me sdcard works, but you may want to try SergeyL's CM13 to see if it's working there.
Thank you so much for help. I tried to format from windows(exfat) and it worked!

Edit: Don't try to format sdcard as fat32 it didn't worked on me
 

Culateralligator

Senior Member
Mar 28, 2015
587
241
0
Málaga
WiFi is unstable, lost connection from time to time, Web Browser is crashing. And any of gapps do not work - do not fit in system. Yes, i readed first post, i have orginally partitioned internal card and do not want touch it. SergeyL's CM13 work with smallest gapps
I can confirm Web Browser is unstable.
I haven't those WiFi problems yet, but I'm testing for little time.

What do you mean with smallest GApps?
I've tried no repartition + SergeyL GApps and I get ERROR CODE 70 -not enough system space-.
 

ChronoMonochrome

Elite Member
Jan 29, 2014
2,276
4,896
113
Stavropol
New build is 20.03.2016(#2) UP!

Changelog


  • fixed APN editor crash
  • added removed fonts back
  • removed Gallery, Calendar and PrintSpooler to free up some space
  • Viper4Android driver post-install (no need to install manually anymore)
  • Fixed busybox related issues

Might fix GApps not being fitted on /system issue in the future, but I'll need a volunteer to test the new partition scheme. If anyone knows how to modify CWM repartition scheme zip and create a new one with ~700-750Mb on /system, it would be even much great, because right now I have absolutely no time for this.

Enjoy!
 
Last edited:

Culateralligator

Senior Member
Mar 28, 2015
587
241
0
Málaga
Something weird... I've connected phone to PC 5-6 times.
Last 2 times appears sdcard1 with 1,09GB (real internal sd).
However, I have access to files of real external sd. But when I try to paste a file, it says I have no space for it.
 

ChronoMonochrome

Elite Member
Jan 29, 2014
2,276
4,896
113
Stavropol
Something weird... I've connected phone to PC 5-6 times.
Last 2 times appears sdcard1 with 1,09GB (real internal sd).
However, I have access to files of real external sd. But when I try to paste a file, it says I have no space for it.
Indeed, it seems that I have misapplied one fix to the vold binary. Does this issue also appear on CM13?
P.s. it's possible that vold from CM13 will also work, because UltimateROM use same sources as CM. Can anyone try replacing /system/bin/vold and check if it helps?
 
Last edited: