[EOL][OP3T][ROM+KERNEL] Unofficial CyanogenMod 13.0 with custom kernel [Apr 30, 2017]

Search This thread

nvertigo67

Senior Member
Dec 28, 2011
5,986
12,252
nice ram management almost 4.2 gb ram gets free..

I've always thought fee ram is just that: unused ram.

I'm curious, because your statement seems to imply free ram is something we want on our devices:

What is an unsed resource good for? Is a max free ram policy (I'm not saying @Sultanxda is following this policy) wasting availible resources? Is sd821's mmu able to poweroff (or at least sleep) not used ram?
 

alesmacht

Member
Jan 12, 2015
16
3
Best rom ever, but If i turn on funkction turn off wifi during sleep. After sleep and turn on phone are wifis invisible and i cannot conect. Must turn of and turn on wifi manualy :( after this i can see wifi again and can connect some fix ?

Next thing is, boeffla kernel have anyone this kernel for 3t ?
Kernel works only with LOS 14.1 firmware ...... 14.1 kernel :) but camera and flashlight are out.
 
Last edited:

reilus

Senior Member
Feb 22, 2011
141
37
Thanx!

Just want to say, this was the greatest ROM ever!

Are you doing a new distro now or are you onto bigger and better things?

I hope to see you on my OnePlus 6T. =D
 

Lou_

New member
Dec 10, 2018
1
0
hi @Sultanxda,

USB Data Corruption

new OP3T. flashed recommended firmware. reformatted data to ext4. wiped system. flashed your current build. boots fine.

now, every time i copy a big file (700+MB) via MTP (from linux mint 17.3), i get no errors but a corrupted copy of the data in the phone.
i read the file back to the PC over MTP and i get a bit-perfect copy in that direction.
this all checked with hashes in PC and phone.

every time i copy from PC to phone i get a new, differently corrupted file.
the length of the corrupted file is always correct though.

THE SILENT CORRUPTION BUSINESS IS AS BAD A THING AS ONE COULD FEAR.

i switch to using adb push, then this happens:

$ adb push xxx.tar.lzo /sdcard/
adb: error: failed to copy 'xxx.tar.lzo' to '/sdcard/xxx.tar.lzo': no response: Success

after some variable amount of file copied, adb push aborts with that message.
after about 10 tries, i give up.

next, i switch the USB cable with a different one. results:
-MTP no longer corrupts files
-adb push succeeds

the original flashing files (firmware, rom, gapps) were pushed via TWRP 3.1.0-1 MTP using the BAD CABLE. flashing did not complain about corruption in zips. maybe TWRP's kernel USB controller driver recovers from USB corruption at the link layer, as it should?

thanks,
L

Cannot thank you enough! Bad usb cable problem almost made me insane.
Can't count the hours wasted searching on solutions to my failed installs when the problem was the cable.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 215
    Code:
    /*
     * Your warranty is... still valid?
     *
     * I am not responsible for bricked devices, dead SD cards,
     * thermonuclear war, or you getting fired because the alarm app failed. Please
     * do some research if you have any concerns about features included in this ROM
     * before flashing it! YOU are choosing to make these modifications, and if
     * you point the finger at me for messing up your device, I will laugh at you.
     *
     */

    This is a unified CyanogenMod 13.0 ROM that works on both the OnePlus 3 and OnePlus 3T. It is based off of the stable CyanogenMod branch instead of the nightly branch, with the main goal being stability with an overall good user experience. This ROM comes with a highly-customized kernel, as well as some other very custom modifications.

    Custom kernels are not compatible with this ROM. I will NOT provide support if you install a custom kernel.

    Changelogs for each update can be found in the 2nd post of this thread.

    ROM features:
    • Supports both the OnePlus 3 and OnePlus 3T
    • Based off latest CyanogenMod 13.0 stable (ZNH5Y) sources (root access is NOT included)
    • OTA updates via built-in CMUpdater
    • Fast fingerprint unlock
    • Pocket mode for the fingerprint sensor (this is always enabled)
    • Improved GPS speed and accuracy
    • Custom camera app featuring:
      -Photo quality comparable to OxygenOS
      -Anti-shake mode (increases the shutter speed to reduce motion blur)
      -Manual shutter speed control (1/5000th of a second up to 30 seconds)
      -Manual ISO control
      -EIS when recording video at resolutions lower than 4k UHD
      -Video HDR mode
      -Antibanding control
      -Exposure control
      -Denoise control
      -Face detection
      -HDR
      -Many other manual controls
    • Many other misc. performance and stability improvements under the hood

    Kernel features:
    • Rebuilt from the ground up using the latest Snapdragon 821 CAF base from Qualcomm (LA.HB.1.3.2)
    • Removed lots of excessive bloat (improves security and performance)
    • Improved stability (several bugs not listed here have been fixed)
    • F2FS support
    • DASH charge
    • Passes SafetyNet bootloader unlock check
    • Dynamic CPU input boost driver I wrote myself (makes the phone feel smooth without destroying battery life)
    • Reduced display power consumption
    • Touchscreen gestures are automatically disabled when the proximity sensor is covered
    • Improved touchscreen processing latency
    • Improved audio jack detection (no more weird buzzing noise and headphones are always detected on the first try)
    • CPU underclocked for improved stability and efficiency (big cluster: 2150 MHz LITTLE cluster: 1516 MHz)
    • Custom thermal control driver I wrote myself (features 9 thermal throttle steps; keeps the phone cool)
    • Westwood TCP congestion algorithm (enabled by default)
    • No placebo patches, features, or compiler "optimizations"
    • Many other misc. improvements not listed here

    Source code:
    Kernel (cm-13.0-sultan branch): https://github.com/sultanxda/android_kernel_oneplus_msm8996
    Local manifest (contains the rest of the sources): https://github.com/sultanxda/android/blob/master/oneplus3/cm-13.0-stable/local_manifest.xml

    Credits:
    • CyanogenMod and its contributors
    • CAF (aka Qualcomm)
    • myfluxi (awesome friend with lots of amazing contributions)
    • Open GApps
    • glassfish777 for testing and helping me pass AP physics in high school
      The people who first brought CM13.0 to the OnePlus 3:
    • Grarak
    • dianlujitao
    • Steve Kondik
    • If your name should be here and it isn't, then make me use an iPhone 4s running iOS 9

    Installation instructions (for first-time installation):
    First, perform a backup of your existing setup, and then perform a clean install (wipe /data and /system; TWRP is recommended). Next, try flashing the ROM and see if it installs; if it installs without any issues then congratulations! Now just flash a Google apps package, SuperSU if you want root access (ONLY v2.65 OR HIGHER), and then reboot.

    If you get an error when trying to install the ROM ("You do not have the correct firmware installed!" error), then go to the Firmware link in the Downloads section and flash that zip file. Once you flash the firmware zip file, you can install the ROM.


    Installation instructions (for updating to a newer release):
    If you are already running my CM13.0 ROM, then you can update to a newer version of the ROM via the built-in OTA updater or by simply dirty-flashing the new ROM build without wiping anything. HOWEVER, do NOT reinstall Google Apps after installing a new update.

    Downloads:
    Firmware (one-time installation): http://oxygenos.oneplus.net.s3.amaz...8_OTA_029_all_1612131737_17e7161d2b234949.zip
    ROM:

    Please read through the installation instructions before installing this for the first time.

    Mirror 1: https://forum.xda-developers.com/devdb/project/dl/?id=24515

    Mirror 2: https://www.androidfilehost.com/?w=files&flid=135376&sort_by=date&sort_dir=DESC

    Google Apps (required): Platform: "ARM64", Android: "6.0", Variant: "micro" or "nano" (I will not provide support if you install a different variant)
    SuperSU (if you want root access): http://forum.xda-developers.com/apps/supersu/stable-2016-09-01supersu-v2-78-release-t3452703

    XDA:DevDB Information
    Unified CM13.0 with custom 3.18.20 kernel, ROM for the OnePlus 3T

    Contributors
    Sultanxda
    ROM OS Version: 6.0.x Marshmallow
    Based On: CyanogenMod

    Version Information
    Status: No Longer Updated

    Created 2016-12-11
    Last Updated 2018-01-20
    74
    Changelog:

    April 30, 2017:
    ROM:
    *Android Security Patch Level: April 1, 2017
    *Camera: Changed default sharpness setting to 2 (this is what OxygenOS uses)

    Kernel:
    *Updated to CAF LA.HB.1.3.2-40600-8x96.0
    *Made CPU governor and CPU boost driver scale up more aggressively (increases overall performance)
    *Fixed power-aware scheduling
    *Fixed random reboot when power save mode is enabled
    *Improved power consumption while the screen is off and reduced latency when turning the screen on (info)

    Old changelogs:

    April 2, 2017:
    ROM:
    *Fixed touchscreen firmware update process
    *Updated touchscreen firmware from the latest OxygenOS Open Beta

    March 25, 2017:
    ROM:
    *Increased the maximum number of background apps allowed in memory back to 60
    *Camera: Reduced the chances of capturing an out-of-focus picture

    Kernel:
    *Fixed memory management issues (the occasional wake-up lag and overall lag are fixed)
    *Fixed several memory leaks
    *Fixed slight noise from the camera lens when exiting an app that uses the camera

    March 18, 2017:
    ROM:
    *Android Security Patch Level: March 1, 2017
    *Camera: Added option to enable/disable refocus on photo capture
    *Reduced the maximum number of background apps allowed in memory from 60 to 32

    Kernel:
    *Updated to CAF LA.HB.1.3.2-37900-8x96.0
    *Updated WiFi drivers to CAF LA.HB.1.3.2-37900-8x96.0
    *Synced with CAF LA.HB.1.3.1.c1-23100-8x96.0 (contains many security fixes)

    February 19, 2017:
    ROM:
    *Fixed VoLTE
    *Camera: Fixed freezing when capturing photos with flash
    *Fixed reboots during H.265 (HEVC) video playback

    Kernel:
    *Added missing cpusets support (cpusets are fully functional now)

    February 12, 2017:
    ROM:
    *Android Security Patch Level: February 1, 2017

    Kernel:
    *Updated to CAF LA.HB.1.3.2-36200-8x96.0
    *Updated WiFi drivers to CAF LA.HB.1.3.2-36200-8x96.0
    *Added missing security fix to camera actuator driver
    *Enabled cpusets (improves battery life and performance)

    January 24, 2017:
    ROM:
    *Camera: Fixed touch-to-focus not working after taking a picture
    *Camera: Fixed shutter button not working once after taking a picture

    January 23, 2017:
    ROM:
    *Updated display auto-brightness configuration from OxygenOS (thanks to @kristofpetho)
    *Camera: Fixed camera not focusing at all sometimes (the actuator would not move at all)
    *Attempted to fix regression from previous build causing the occasional long delay for fingerprint unlocking

    Kernel:
    *Updated to CAF LA.HB.1.3.2-35300-8x96.0

    January 15, 2017:
    ROM:
    *Camera: Fixed distortion at the edges of photos captured in low-light conditions (more info)
    *Camera: Removed focus mode option (didn't provide anything useful)
    *Camera: Removed scene mode button from the front-facing camera (many of the scenes didn't work)
    *Fixed status bar icons not inverting color correctly after a fingerprint unlock (more info)
    *Fixed out-of-sync audio while streaming videos in the Netflix app
    *Fixed buggy long press to turn off the screen for the home button (more info)

    Kernel:
    *Fixed inability to change the CPU's maximum frequency (you can now change the CPU's max. freq. in apps like Kernel Adiutor)
    *Reduced jitter after turning the screen on
    *Synced with CAF LA.HB.1.3.1.c1-20600-8x96.0 (security fix)

    January 7, 2017:
    ROM:
    *Android Security Patch Level: January 1, 2017
    *Updated WiFi configuration from Google Pixel
    *Removed CyanogenMod statistics
    *Updated audio HAL to CAF LA.HB.1.3.2-34600-8x96.0
    *Updated media HAL to CAF LA.HB.1.3.2-34600-8x96.0
    *Camera: Fixed force close when taking photos with the front camera
    *Camera: Fixed force close when face detection is enabled
    *Camera: Improved auto-focus (the camera will quickly re-focus every time you take a picture; this should make it much easier to take clear photos)
    *Camera: Fixed low-exposure bug when recording video with the front camera (videos would look black due to low exposure)
    *Camera: Removed storage location option (it was broken)

    Kernel:
    *Android Security Patch Level: January 1, 2017
    *Updated to CAF LA.HB.1.3.2-34600-8x96.0
    *Fixed random reboots for devices with an s6e3fa5 panel
    *Fixed horizontal line glitch when turning off the screen on devices with an s6e3fa5 panel
    *Fixed sRGB mode on devices with an s6e3fa5 panel
    *Fixed home button unintentionally getting long-pressed (more info)
    *Fixed occasional intense lag when waking the device

    December 27, 2016:
    ROM:
    *Latest upstream (stable/cm-13.0-ZNH5Y) CyanogenMod changes
    *Camera: Fixed photo not getting saved when exiting the camera app before the photo is saved
    *Camera: Added warning message when Anti-shake mode is enabled
    *Camera: Anti-shake mode will automatically turn off every time the Camera app is closed
    *Camera: Fixed low frame rate when recording video (video now records at 30 FPS instead of 24 FPS)
    *Camera: Removed HDR mode from front-facing camera (unstable and OxygenOS does not have it)
    *Updated proprietary libraries from OxygenOS 3.5.4
    *The 'Prevent accidental wake-up' option no longer stops the power button from waking the device
    *Fixed battery capacity being reported as 3000 mAh instead of 3400 mAH
    *Updated AudioFX app from CM nightlies

    Kernel:
    *Fixed support for devices using a different display variant (thanks to @KaZo58 for testing)
    *Fixed 'Prevent accidental wake-up' option never turning off
    *Updated CPU underclock: increased big cluster maximum frequency to 2150 MHz, reduced LITTLE cluster maximum frequency to 1516 MHz
    *CPU underclock cannot be disabled (due to stability issues that are still being investigated)
    *Synced with CAF LA.HB.1.3.1.c1-20100-8x96.0 (security fixes)

    December 11, 2016:
    ROM:
    *Initial release

    Kernel:
    *Initial release
    45
    FAQ:

    1. Why did you underclock the CPU?
    Answer: At the underclocked frequencies, the amount of heat generated by the CPU is quite a bit less, so the CPU is throttled less often (leading to better user experience), and battery life is better as well. The performance difference while underclocked is also not really noticeable unless you use a benchmark application. The CPU is also underclocked due to stability issues at higher frequencies affecting some OP3Ts; because of this, the CPU underclock cannot be disabled.
    24
    New build is up with the VoLTE finally fixed and some other old (but extremely frustrating) bugs fixed. I'm pretty sure VoLTE was broken for everyone using this ROM on the OP3T, so I'm happy it finally works now :victory:
    22
    Underclock experiment

    Since quite a few people seem to doubt the energy savings from underclocking, I decided to perform a somewhat rough test to see if it is really effective. For this test, I booted the phone into recovery (where there are no background processes running) and measured battery current statistics reported by the fuelgauge chip.

    Control variables for the test:
    -Enabled all CPU cores
    -Disabled CPU frequency scaling (so all CPU cores run at the requested frequency without jumping up or down)
    -Made the GPU run at its lowest frequency
    -Disabled thermal throttling
    -Reduced the screen brightness to 1/255
    -Ran this command from inside TWRP's terminal: "while true; do cat /sys/class/power_supply/battery/current_now; sleep 0.5; done"
    -Kept the battery close to or at 100%
    -Charger was disconnected during measurement periods

    I changed each CPU cluster's frequency for a few minutes at a time and observed the average battery current reported by the fuelgauge chip.
    Here are the results:
    Code:
    LITTLE        big           Avg battery current (positive = battery is draining)
    2188800 kHz + 2342400 kHz = 656000 uA
    1593600 kHz + 2342400 kHz = 651000 uA
    1516800 kHz + 2342400 kHz = 649000 uA
    1440000 kHz + 2342400 kHz = 647000 uA
    2188800 kHz + 2246400 kHz = 633000 uA
    [B]2188800 kHz + 2150400 kHz = 609000 uA <-- optimal configuration[/B]
    2188800 kHz + 2054400 kHz = 604000 uA
    2188800 kHz + 1900800 kHz = 603000 uA

    LITTLE = the frequency that the LITTLE CPU cluster was running at, and big = the frequency that the big CPU cluster was running at.

    Although underclocking the LITTLE CPU cluster was not very effective, and did not provide significant power savings, underclocking the big CPU cluster was very effective in this test. Lowering the big CPU cluster's frequency down to 2150 MHz reduced the current draw from the battery by almost 50 mA, which is fairly significant.

    For the next build, I'm going to remove the underclock on the LITTLE CPU cluster and increase the big CPU cluster's max frequency to 2150 MHz.
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone