[Galaxy Note 3 Original Android Development] jcadduono:
I am closing this thread as I no longer have valid download links available, I can't maintain this project anymore, and I'd like to make sure everyone understands that any links uploaded by other users cannot be confirmed to be unmodified. Proceed at your own risk!

This thread is for the N9005, N900A, N900P, N900V, N900R4, N900K, N900L, N900S, SC-01F, and SCL22 variants of the Galaxy Note 3.

You can find the other thread for N900W8 and N900T variants here.

idleKernel is a fork from Imoseyon's leanKernel starting at his v6.3 Touchwiz release.

It adds a few more features, escaping somewhat from the minimalist approach while still staying battery friendly.

It hopes to support many ROMs. You can request support for your ROM through private message or on this thread.

You can also find Imoseyon's leanKernel here, which still has ongoing development.

DOWNLOAD

Current version: 7.1.0 (2016-03-27)

Note that there are both SELinux Enforcing and SELinux Permissive versions.

If you are using a custom ROM or f2fs, you will need the permissive version.

All Note 5 ports are forced permissive, and have no enforcing version due to invalid SEPolicy.

TouchWiz 5.0 kernels cannot have their SELinux mode changed by any means, they are compiled as either enforcing or permissive.

idleKernel is also used in the Kali NetHunter project! For full idleKernel functionality in Kali NetHunter, flash one of the images here before flashing NetHunter.

Please be careful to download the right version for your actual phone model, not your ROM.

N9005: hlte-eur

N900A: hlte-att

N900W8: hlte-can

N900P: hlte-spr

N900R4: hlte-usc

N900T: hlte-tmo

N900V: hlte-vzw

N900K: hlte-ktt or hlte-kor

N900L: hlte-lgt or hlte-kor

N900S: hlte-skt or hlte-kor

SC-01F: hlte-dcm

SCL22: hlte-kdi

DOWNLOAD LINKS REMOVED

RAN INTO AN ISSUE OR BUG?

In order for me to help you, you have to at minimum reply with:

The link to the exact kernel zip/tar you downloaded

Your device model (N9005, etc)

A link to the XDA thread of the ROM you're having trouble with

Optional: A logcat during the duration of when the bug is happening

Optional: A `cat /proc/kmsg > /sdcard/kmsg.log` (su required) during the duration of when the bug is happening

You may be able to fix the bug by updating to the latest bootloader and modem for your device.

See: (Direct Download) Latest Bootloaders & Modems

FEATURES INCLUDED FROM LEANKERNEL

overclockable to 2.72GHz, but limited to 2.2GHz during boot

interactiveX V4 (screen_off_maxfreq), renamed back to interactive for compatibility

/sbin/lkconfig script (via terminal emulator, superuser required)

user adjustable panel temperature: -60 to 0, 0 is kernel default (via lkconfig & sysfs)

user adjustable panel colors: 0 to 4, 2 is kernel default (via lkconfig & sysfs)

fix for purple hue/push at low brightness (via panel temperature or panel colors)

cpufreq modified to play better with thermal-engine

compiled with stable Linaro GCC Cortex-A15 4.9 toolchain

built-in supersu and init.d support

DriveDroid compatibility for USB mass storage emulation

interactive governor updated to latest android source (but ondemand left default)

outdated Samsung code updated to later CodeAurora source (cpufreq, mdss, gpu, msm-bus, etc.)

cpufreq issues fixed

exFAT support

ram console enabled for /proc/last_kmsg for kernel crash debugging

FauxSound 3.0

default USB charge speed @ 1200mA

based on N900TUVUFOB6 (February 23, 2015)

IDLEKERNEL FEATURES

rebased on N900TUVUFOL1 (December 5, 2015) and SC01FOMUGOI4 (September 9, 2015)

updated to latest 3.4 Linux (currently 3.4.111)

tailored individually to support all variants of TouchWiz 5.0, CyanogenMod 12.1 & 13.0, SlimRom 5.1 & 6.0, and Note 5 Ports

ramdisk and kernel compressed with xz-crc

FauxSound updated to 3.6

CodeAurora fixes up until December 8, 2015

new IO schedulers available: sio, fiops (default)

new TCP congestion control available: westwood

cubic (default) TCP congestion algorithm updated to Linux 4.3 sources

f2fs full /system /data /cache support (except in enforcing mode TouchWiz)

f2fs updated to latest kernel.org Samsung sources

ext4 updated to latest kernel.org sources

performance governor included for benchmarking & games

adreno idler updated to latest arter97 sources (now with 27 MHz idle)

forced fast charge support by Yank555.lu

full sysfs & in rom vibration control with extended range

compiled with -O2 optimizations

some kernel errors and logging functions fixed

lkconfig rewritten and extended, renamed to ikconfig

support for KCAL advanced color control by savoca

USB mass storage toggle for external SDcard, open Terminal Emulator and type: ums on.

USB 3.0 is turned on if you add 3 to commands: mtp on 3, ptp on 3, ums on 3.

SuperSU uses system install method even on marshmallow, adjustable via ikconfig (set on first boot)

USB HID keyboard and MIDI gadget support (added in 6.7.1!)

INSTALLATION

You can flash idleKernel from Odin 3.x in AP slot using tar.md5 files.

You can also flash from TWRP 2.8.x.x using zip files.

CONFIGURATION OPTIONS

Open Android Terminal Emulator or adb shell, become superuser by typing su, press enter, and type /sbin/ikconfig (on most ROMs you can just type ik), press enter again.

shell@hltecan:/ $ su
root@hltecan:/ # /sbin/ikconfig

idleKernel configurator (based on lkconfig by Imoseyon)
---
0) display current settings
1) panel temperature
2) panel color
3) cpu max frequency
4) cpu governor
5) gpu governor
6) tcp congestion control
7) io scheduler
8) mmc crc
9) supersu install method
10) check top 10 wake locks (ie. wakeup sources)

please enter a number (or press enter to exit): 0

current settings
----------------
1) panel temperature: 0
2) panel color: 2
3) cpu max frequency:
screen on: 2265600
screen off: 1267200
4) cpu governor: interactive
5) gpu governor: msm-adreno-tz
6) tcp congestion control: cubic
7) io scheduler:
internal memory: noop deadline row [sio] fiops
external sdcard: noop deadline row [sio] fiops
8) mmc crc: disabled
9) supersu install method: system

I recommend the app Kernel Adiutor for control over idleKernel if you are inexperienced in terminal usage, it's very well written and easy to use.

If you want to use the FauxSound controls, please consider buying FauxSound from the Play Store. It's the same developer that wrote the kernel side components to it.

If you want to use KCAL advanced color control, you will need to download the Color Control app from here.

USB 3.0 & MASS STORAGE

idleKernel 6.6.2+ comes with a terminal command called usb, with shortcuts mtp, ptp, and ums.

These commands don't work from adb as running them usually closes the adb session cancelling the command part way through.

They are meant to be run from Terminal Emulator as superuser. If it shows not found, go into Terminal Emulator options and uncheck "Verify PATH entries". There is a bug in Terminal Emulator that causes /sbin to be removed from path sometimes when using su. You could also prefix the commands with /sbin/.

root@hltecan:/ # usb
Usage: usb [mtp|ptp|ums|status] [on|off]
Enables or disables MTP, PTP, and UMS USB modes.

mtp on/off turns on/off MTP mode
ptp on/off turns on/off PTP mode
ums on/off turns on/off UMS mode
default sets USB mode to default
-3, 3 activates USB 3.0, use with on
-i, info, status displays active USB mode
-h, help displays this information
-v, version displays version info

For more help & to report bugs contact <jc@adduono.com>

root@hltecan:/ # ums on 3
Disabling USB transfer protocols...
Unmounting SDcard from /storage/extSdCard...
SDcard unmounted successfully.
Activating USB 3.0 SuperSpeed mode...
Setting up dwc3 storage gadget lun...
Mounting /dev/block/mmcblk1 to lun...
Activating USB Mass Storage transfer mode...
Done. PLEASE USE EJECT MEDIA ON PC BEFORE TURNING OFF UMS!

root@hltecan:/ # mtp on 3
Disabling dwc3 storage gadget lun...
Disabling USB transfer protocols...
Mount SDcard in Android? (y/n): y
Mounting SDcard to /storage/extSdCard...
Waiting for SDcard to be ready....
SDcard mounted successfully.
Activating MTP USB transfer mode...
Done.

root@hltecan:/ # usb default
Disabling USB transfer protocols...
Deactivating USB 3.0 SuperSpeed mode...
Setting USB mode to default...
Done.

TEAM WIN RECOVERY PROJECT

You will probably notice that in the downloads area there is also a TWRP 2.8.7.0 download option.

It uses idleKernel instead of the kernel prebuilts from Omni.

MTP and USB Mass Storage R/W now works in recovery mode, allowing you to plug phone in and easily transfer zips and backups/restores to and from your phone and sdcard. It also fixes some file system bugs that caused ext4 broken backups that couldn't restore to f2fs partitions, and other small bugs like brightness adjustment not working.

On top of that it allows me to support TWRP for variants that aren't officially supported, such as the Japanese and Korean variants.

You can also use ikconfig in TWRP from adb, allowing you to fix settings like unstable CPU overclocks from recovery.

It also has a really cool boot splash and gold theme, that's cool too right?

GOING TO F2FS FILE SYSTEM

See step-by-step guide here:

http://xdaforums.com/galaxy-note-3/...ekernel-leankernel-fork-t3241582/post64014959

KNOWN ISSUES

Screen sometimes turns on while charging from PC. (wake event sent from PC?)

Some ROMs refuse to flash in TWRP idleKernel edition. (tell ROM maintainer to fix flash model assert or remove assert yourself)

Streaming audio may occasionally stutter when screen is off. (increase screen off max frequency using ikconfig)

exFAT and f2fs formatted SDcards don't work in CM13. (not a kernel issue, wait for CM team to fix it)

Aroma Installer doesn't work in TWRP idleKernel edition. (it's not compiled with LP driver support? flash original TWRP to use Aroma)

If you are affected by a new issue, please follow ALL of the instructions above and post in the thread or pm it to me.

ROM DEVELOPERS

You have my permission to include idleKernel in your ROM. By doing so, I recommend that you give me the permission to try to work with users on your ROM thread to fix bugs that may possibly be kernel related. On important idleKernel updates, I may visit your thread and notify users of the changes and give them a link back to this thread.

You may also recompile idleKernel with your own changes, and give it a different name if desired. Credit to me is not necessary, but you must keep a branch with the complete source code on a publicly visible site like GitHub, and link to that from your thread. I have a guide in the post underneath this on how to do that.

If you wish to change the default settings of ikconfig when distributing the kernel in your ROM, the easiest way would be to mount /data in your recovery flash script, check for existence of /data/data/idlekernel, if it doesn't exist, create it and write values to a file for every setting you wish to change. Valid files are:

/data/data/idlekernel/paneltemp - values: -60 to 0 (default 0)
/data/data/idlekernel/panelcolor - values: 0 to 4 (default 2)
/data/data/idlekernel/scaling_max_freq - values in Hz: 652800, 883200, 1267200, 1574400, 2265600 (default), 2496000, 2726400
/data/data/idlekernel/screen_off_maxfreq - values in Hz: 652800, 883200, 1267200 (default), 1574400, 2265600
/data/data/idlekernel/cpu_governor - values: ondemand, interactive (default), performance
/data/data/idlekernel/gpu_governor - values: msm-adreno-tz (default), powersave, performance, simple_ondemand
/data/data/idlekernel/tcp_congestion_control - values: cubic (default), westwood, reno
/data/data/idlekernel/io_scheduler_internal - values: noop, deadline, row, sio (default), fiops
/data/data/idlekernel/io_scheduler_external - values: noop, deadline, row, sio (default), fiops
/data/data/idlekernel/use_spi_crc - values: Y, N (default)
/data/data/idlekernel/supersu - values: SYSTEMLESS=detect/true/false (default)

XDA:DevDB Information

idleKernel, Kernel for the Samsung Galaxy Note 3

Contributors

jcadduono, Imoseyon, arter97, faux123

Source Code: https://github.com/jcadduono/idleKernel-note3

Kernel Special Features:

Version Information

Status: Stable

Current Stable Version: 7.1.0

Stable Release Date: 2016-03-27

Created 2015-11-05

Last Updated 2018-07-12