- Spectrum Profiles:
- Low Memory Killer settings and Vibration Strength are now per profile rather than being set universally in init.sz.rc.
- Battery v1.4: 20% vibration strength, Franco Kernel default LMK
- Balance v1.3: 20% vibration strength, Franco Kernel default LMK, read ahead cache increased from 512 to 1024 which showed a more clear performance break in synthetic benchmarks.
- Performance v2.3: 33% vibration strength (Franco Kernel default), aggressive LMK preset from Kernel Auditor
- Gaming v1.1: 50% vibration strength, aggressive LMK preset from Kernel Auditor but with very light settings for foreground and visible applications.
- Default Config
- vFAT and NTFS filesystems were already included, but not mentioned in feature lists
- kernel version was not appearing in the Settings app due to spaces in localversion, this was fixed in v20180728b
- userspace and ondemand CPU governors have been removed from build (still included in source code)
- Source Code
- Open Source
- forked from Franco Kernel
- zipped with AnyKernel(also open source)
- Merged Linux Stable upstream 3.10.108
- I/O Schedulers: fiops, zen, noop (default)
- TCP algorithms: Bic, Cubic, Htcp, Hybia, Vegas, veno, Westwood (default), Reno
- Fk Features: disabled verified boot flag for Android Pay (root still breaks), support for FKUpdater performance profiles, support for FKUpdater App (not verified as I don’t use the app myself), KCAL tweaks in init script.
- Reduced wifi wakelocks and wakelock period
- Removed possible bluetooth memroy leak
- KCAL color control support
- KCAL brought to Linux guidelines
- Spectrum profile support: 30 profiles from around the web included in source code.
- Touchboost disabled in spectrum profiles
- Filesystem support: F2FS, EXT4
Download: v20180809 from Android File Host
News & Notes:
- Open Source - Period.
- Follow Linux Stable kernel rules - I like to keep things simple. With this version I’ve removed some things from the default config, however they remain in the source code for testing or personal use. I’m not a fan of “kitchen sink” kernels, but encourage learning, compiling, testing, and sharing information on your own.
- Security and Performance - Security is primary, functionality is essential. I’ve discussed my views on performance and battery life before, but see below for a recap.
- see also Nathan Chancellor’s Flash Kernel Philosophy
Battery Life and Performance:
Maximum uptime means little to nothing since you didn’t by a phone to sit on standby in your pocket all day. You bought a phone to use it. Screen on time (SOT) is a commonly referenced metric, but this too can be decieving and manipulated. For example, if you spend a lot of time staring at a news feed or swiping through your photo gallery, you’ll likely see a high SOT. However, if you stream a lot of music or audiobooks or performing other high load tasks which may not require the screen being on, you’ll see terrible SOT. The sweet spot for me is that my phone should make it through the day with regular usage (we all have extreme days), plus a little extra to make up for odds and ends. Last all day, get stuff done.
This is tricky too. We all have different usage habits and do differnt things with our phones. Performing better means getting that stuff done faster and more fluidly. I have mentioned before that when crafting my personal spectrum profiles that I view “battery” and “balance” to be functional “daily drivers”, but view things like “performance” and “gaming” as situational tasks. That is, you probably don’t need all the GO-GO-GO high octane switches turned on all day; nor are you literally (I hope) gaming more than a couple hours a day. In making the performance profile I valued CPU task benchmarking as well as I/O task completion. For gaming, CPU and I/O tasks were important, but I put more focus on graphics rendering and UX – which makes sense.
Bluetooth / Wifi drain when not connected:
I noticed this with the stock ROM, but it appears to have sorted itself out. Likely I had a rogue app that was miffing things up rather than a sudden bug in wifi and bluetooth that was causing outrageous battery use when turned on but not connected.