Remove All Ads from XDA

[KERNEL]17.02.2012 test-kernels [CM7/MIUI/CM9 preview] platypus;SECURITY,VOODOO,OC/UV

5,188 posts
Thanks Meter: 5,117
By zacharias.maladroit, Recognized Developer on 27th April 2011, 07:00 PM
Post Reply Email Thread



SGS edition of the Platypus Revolutions kernel

This Project is inactive/low activity for a longer period of time


CM7 & MIUI only

NEO series

(since May 24th '11)
Do you want to discuss on this kernel, get the news on the current state of development, or test kernels even fresher than fresh ?

connect via webchat from your browser:
and join #platypus-kernel

Fire up your IRC client, and join via client
the server (for now is) :
port : 6667
Channel : #platypus-kernel
(thanks to Tk for the layout idea )

before you ask for any ETAs:

The first rule of CyanogenMod [and this project]: DO NOT ASK FOR AN ETA!


First step before install & kernel switch:

Always have this cleaning script on your internal SD card ready

If you're
- switching kernels,
- have issues with auto-rotation,
- the cam,
- bootloops
- want to remove init script
- recover from a failed overclock attempt

please give either:

- lippol94's updated cleaning script (apply via CWM recovery):


- WiwiPouPou's SYSTEM CLEANER SCRIPT (also apply via CWM recovery): (

a try

the kernel already applies some cleaning steps during install but sometimes that's not enough ...



Hi guys,

this is my first modded kernel for the SGS (CM7/MIUI only)

I first needed to test it to make sure that it'll be stable & boot at the first place

so far it's very fast & responsive & smooth

This thread shall serve as the center for my testing kernels (stability & functionality-wise)

DISCLAIMER: the kernel (binary) and driver modules are provided as is. If problems occcur they most probably are from upstream and can be fixed with the newest version. Since I'm doing this in my free spare time as a hobby (quenching my thirst for tweaks & performance) updates will occur irregularly as time permits and I see fit (most probably when new features & bugfixes arrive). YOU are responsible for the actions that you take (such as over- or underclocking), etc. You agree that I can not be held liable for any potential damage that arises from your actions in combination with or the usage of this kernel and other related parts.

* Google, Andy Rubin & the whole Android crew
* Linus Torvalds & the kernel hackers for upstream Linux
* cyanogen & all the devs out there hacking on this
* Supercurio for enriching our media experience of this smartphone
* codeworkx, coolya, guiper, atinm - the whole teamhacksung|cmsgsteam crew and all other hackers working on CM7
* laststufo, hardcore, nikademus, existz and all the other kernel hackers on the SGS forum
* zen-kernel team for inspiration to create a kernel, too
* all other contributors (devs, users, etc.) who make this possible

The purpose of these kernels is extensive stability testing addressing the following sticking points:
- overall stability & functioning of the kernel and phone
- call drops, missed calls, etc.
- lags (suggestions for improvements are welcome)
- auto-rotation, sensors, etc.
- Voodoo Control Plus [any crashes ? compatibility problems ?]
- working on CM7 or MIUI ?
- scheduler, sound, video synchronisation & lags: Tap Tap Revenge 4 (especially at the beginning of songs)
- scheduler, sound, video synchronisation and any other issues: doodle dash (while shooting & sound activated)
- proper pmem memory layout & settings: proper functioning of Google Googles

for those who love SAUCE (Source):

old source:


new source:

(fork and 1:1 update to upstream kernel source - changes in different branches)

(latest changes sometimes might not be in [yet] but in the whole repo everything should be available)

current UV & OC stable values:

Recommended apps for OC/UV:

- Pimp my CPU (also available here on XDA for those who don't have a credit card, etc.)

- Xan's VoltageControl

on stability testing:

(start with "Q: I'm new in OC/OV operations so please could you explain to me how to set it in the best way?")

the following OC/UV values are only applicable for kernels with the old OC/UV implementation (max. 1.3 GHz)

my current UV (undervolt) stable Values :

old OC/UV implementation (morfic, bilboa1/kang, TheEscapist):

1300000 0 (haven't tested 1.3 GHz much yet)
1200000 -25
1000000 -50
800000 -75
600000 -100
400000 -100
200000 -125
100000 -150


1200000 -50
1000000 -75
800000 -75
600000 -225
400000 -125
200000 -150
100000 -175

thanks jetcz !

new OC/UV implementation (morfic, bilboa1/kang, TheEscapist - Tk-Glitch):

Originally Posted by Tk-Glitch

Note that these UV settings will be unstable on many devices. It's only informative.

1600 MHz - 1.500v / -> That's high and many devices will fail on this frequency. Find working UV for you if any.
1500 MHz - 1.500v / -> That's high and many devices will fail on this frequency. Find working UV for you if any.
1440 MHz - 1.475v / -75mv
1400 MHz - 1.450v / -75mv
1300 MHz - 1.400v / -75mv
1200 MHz - 1.350v / -75mv
1000 MHz - 1.250v / -50mv - If you have stability issues, try to let this one by default.
800 MHz - 1.200v / -75mv
400 MHz - 1.050v / -100mv
200 MHz - 0.950v / -150mv
100 MHz - 0.950v / -200mv - (can be very different between two devices)

More volts is not always equal to more stability. Try to add more UV (less volts) if the frequency you're trying to achieve is unstable.
Considering all phones will respond differently to OC/UV, to tweak the values to suit your device will be required.

By default, no overclock/undervolt is applied. You'll need to use one of the tools below to adjust the frequencies and voltages.
Note : Never ever use SetCPU with this kernel. You could encounter many stability problems like random reboots or bootloops.

3D performance and games:

recommended apps:

[root] Chainfire3D
The Following 82 Users Say Thank You to zacharias.maladroit For This Useful Post: [ View ]
27th April 2011, 07:01 PM |#2  
zacharias.maladroit's Avatar
OP Recognized Developer
Flag ::1
Thanks Meter: 5,117
Donate to Me
1st backup post (kernels)


kernels are listed in descending order

older -> newer (newest at the bottom - for now)

NEO 09


NEO 10


BFS kernel

(semi-broken: superuser issues, some stability issues, etc.)

NEO 10 diagnostic kernel (logcat + printk)

NEO 11

NEO 09-redux_V5
[Gingerbread bootloader support + access to external (micro)SD - no hourly battery drain anymore !]
(changelog now available - 10.08.2011)

NEO 16 codename: Beast

NEO 17 -r12 codename: Butterfly

NEO 17 -r13 codename: Butterfly

NEO 17 -r14 codename: Butterfly

for those searching kernels:

here are the posts of the 2 latest kernels:

* [2.6.37 kernel-base, Neo XX]

* [Neo 17 r17 + BLN (voodoo color)]


* [Neo 17 r18 [still tagged 16] + voodoo color + BLN]


even newer:

NEO 17 -r18 codename: Butterfly

NEO 18-update1 codename: funky fish

NEO XX.1-update1 codename: mighty rhino

ALL USERS MUST UPDATE (this fixes yet another potential data loss trigger)

CM9/ICS (Android 4.0.x) preview - NEO 3.0.8 alpha3/4

CM9/ICS (Android 4.0.x) preview - NEO 3.0.8 alpha5

(deep idle v2 enabled by default, upstream GPIO fixes) --> probably deep idle v2 not properly working when enabled that way

CM9/ICS (Android 4.0.x) preview - NEO 3.0.8 alpha6

(deep idle v2 disabled by default, some additional RAM testing [not user & system visible - additional stuff once no regressions] --> deep idle2 can be enabled via nstools)
The Following 59 Users Say Thank You to zacharias.maladroit For This Useful Post: [ View ]
27th April 2011, 07:01 PM |#3  
zacharias.maladroit's Avatar
OP Recognized Developer
Flag ::1
Thanks Meter: 5,117
Donate to Me
2nd backup post (Changelogs)

Changelog list:

obsolete right now
The Following 17 Users Say Thank You to zacharias.maladroit For This Useful Post: [ View ]
27th April 2011, 07:02 PM |#4  
zacharias.maladroit's Avatar
OP Recognized Developer
Flag ::1
Thanks Meter: 5,117
Donate to Me
3rd backup post (modems list)



Modems play a crucial role in how much battery drains in standy.

e.g. if you have a good signal area and the modem still has high

"Time without a signal" indicator under Cell standby you still will get bad standby time

make sure you have little to no "Time without a signal" in Cell standby

there also somewhat seems to be a connection between "Time without a signal" and high "Android OS" number in battery use (!)

Following modems are only compatible with new radio (modem) partition layout: (4.29 MB)

md5sum: fb38dbf82daf0720fd2328f5f649013e

For more modems & bootloaders please go to siky_dude's Modem Thread:

[CM7/MIUI][28.08.11] Modems + Bootloaders(MD5)
The Following 16 Users Say Thank You to zacharias.maladroit For This Useful Post: [ View ]
27th April 2011, 07:02 PM |#5  
zacharias.maladroit's Avatar
OP Recognized Developer
Flag ::1
Thanks Meter: 5,117
Donate to Me
4th backup post (results)

Results & FAQ/Documentation


(04/27/2011) Results for platypus-kernel_20110427_18_quorra_r1:
- broken auto-rotation & sensors for some [insert ROM (CM7 ? MIUI ?)]
- stable

(05/03/2011) Results for CM7_SGS_platypus-kernel_20110503_17_quorra-r4_exp
- high battery drain, either due to kernel config or optimization flags, fixed with >= quorra r5 (2nd update)

FAQ / Documentation

@bootloop / boot post victims ^^

Hi guys,

could you please try to replace the existing kernel on your MIUI or CM7 nightly CWM-Package with my kernel, modules and its scripts ?

then install that updated package (with the new kernel, modules and scripts)

after that all should work

the bootloops seem to be an issue with bml_over_mtd (broken sectors on the SSD on your phone)

I'll investigate this and see if anything needs to be rewritten and/or updated in that regard

Thanks !

Overclocking / Undervolting:

Q: I'm new in OC/OV operations so please could you explain to me how to set it in the best way?
A: start with -50 mV (delta from default value) other values probably are too low

my testing includes:

- Angry Birds Rio (several missions)
- Gun Bros (for some time)
- mp3 playback, (flac playback - optional)
- surfing the web via browser, opening up links from cmsgsteam twitter feed
- watching youtube video
- watching video via rockplayer lite or mobo video player
- running benchmarks (Smartbench 2011, quadrant standard, an3dbenchXL, anTutuBench)
- Labyrinth Lite (for gravity sensor), auto-rotation (also for sensor)

when 1 GHz (1,2 or 1,3) is OK - go lower with undervolt value (e.g. -75 mV)
after it gets un-stable - go back to last known stable value

then you can limit max frequency to lower one, e.g. 800 MHz

and repeat testing for that frequency

for more info: checkout shaolin95's Mini Overclocking Guide:


LED Support FAQ

Q: Do LED notification require an app, such as BLN, etc ?
A: No. It uses Android's and Cyanogen settings, other apps are not required, although some that are designed for regular LEDs may work.

Q: How to I turn off LED notifications, scheduled or/and complete turn off?
A: Use Cyanogen's Quiet Hours feature (settings>cyanogen>sound>quiet hours) and check "Dim the LEDs during quiet hours" (in reality it will turn them off on the SGS). If you schedule a complete day, then LED notifications will be off all the time.

Q: How do I setup per app, find other LED settings etc?
A: Settings>cyanogen>interface>LED notifications

Q: What to do with LED color settings?
A: We have only one color, so that doesn't work. Use Green as default setting. Some non-bright colors turn off notification, as it's the equivalent as diming LEDs (note that on real LEDs if you dim them too much they look like off too anyway, the difference is that it's gradual. On the SGS the LEDs can be only on or off, not gradual)

Q: How can I troubleshot my system, I can use ADB but...
A: adb logcat | grep lights (on linux) will show you Android requests to turn LED on or off. "status" tells you what we decide will be interpreted as "turn LED on" (1= on, 0 = off)
adb shell cat /proc/kmsg for live view (or adb shell dmesg if you're using adb after the issues occurs - careful the backlog is limited in size so don't be too slow)
notify_led_on and notify_led_off are requests to the kernel to turn LED on or off.
touch key write/read errors (cypress) are non-fatal failures to ask the touch key to do something (eg lit up the LED), when the hardware goes crazy or there's a logical error in the code (can be both)
touch key recovery routine or "stopped responding" are either hardware errors, either a logical error where the driver would try to write something the touchkey doesnt understand. in some occasion lock&unlock fix those as a work around, of course a permanent fix is required

Voodoo Color settings:

Q: I don't have that nice ice-ish white color on my screen anymore - you suck !

Q: my screen looks like someone pissed on the screen - you suck !

(sorry for the language ^^)

A: I love you too ^^
download Voodoo Control or Voodoo Control Plus

Screen RGB multipliers:

- Red: 321*
- Green: 321*
- Blue: 429*

Screen v1 gamma hack:

- use Alt. settings

- or if you prefer others - use: "Reset to 2.3.3 defaults", "Punchy settings" (punchy could lead to a great screen while locking the screen and having "screen off" animation disabled)

other recommended settings:


Also a lil tip for people who use voodoo color!

1 )Color Profiles: Voodoo Profile V1
2 ) Screen v1 gamma hack :
- 50 red
- 53 green
- 44 blue
3 ) SRB multipliers:
Red ="2300875360"
Green ="2300875360"
Blue ="2709919680"

With those adjustment, black colors are BLACK and white colors are WHITE. Everyone should try this.

SGS CM7 nightlies wiki

Android OS bug, :

(thanks to ceriko ! and his awesome guide for DarkyROM 10.1)

If your battery drains very fast and your battery stats mentions Android OS above 10%, often between 40 and 60%, sometimes more, this is the best to do as far as I know:

- Remove the 2/3 system files as per the beginning part of this guideguide about batterie issues.
- Install WatchDog and open (I set it to "moderate", then I close it, that's all), this app will warn you whenever an app or a process miss-behaves by draining the battery excessively. It will not fix it but just flag it and you will see a notification.
- Reboot usually stops the drain for a while until it naturally comes back, so reboot whenever you see Android OS above 10% and rising or after you see WatchDog mentioning "Suspend" process using too much battery (the suspend process hanging is the Android OS bug).
- Some apps trigger it, most common are Gameloft games (blame Samsung, not the games/apps). No need to use apps or games for this drain to happen, it also happens straight after boot once phone has been fully charged.

This bug can not be fixed by anyone but Samsung. Some never see it, some will experience it everyday no matters what they do... It's just annoying and unfair but that's the same on all Gingerbread releases by Samsung (JVK, JVB, JVO, JVH). Apparently even the SGS2 has this...

screenstate scaling aka my governor won't change after screen locked:

So what is this all about ?

it's an init script that is put in to /system/etc/init.d

and switches between the configured governors in the script

depending on whether the screen is on (AWAKE_GOVERNOR) or off (SLEEP_GOVERNOR)

in most cases your phone is off - in that case it would be good to use a governor which doesn't fire up the cpu frequency too fast since you don't need it (no GUI, smooth scrolling, etc. needed while the screen is off - lol),

so conservative governor is set

when using the phone (screen on) it really depends on what you want to do: e.g. latency & smoothness is crucial: try smartass2, smartass, ondemand;
you're mainly browsing & reading stuff: try ondemandb, conservative (the screen is already burning enough battery so you don't need another component burning yet more)

only use one governor at a time




that means lines with "#" are commented out and not used by the script




also would work (intentionally not filled in any governors)
The Following 12 Users Say Thank You to zacharias.maladroit For This Useful Post: [ View ]
27th April 2011, 07:04 PM |#6  
doccrow's Avatar
Senior Member
Flag new delhi
Thanks Meter: 119
seriously speaking i never got any issues wid any kernel so far. maybe wid two face there was but somehow widout my efforts it got resolved
The Following 2 Users Say Thank You to doccrow For This Useful Post: [ View ] Gift doccrow Ad-Free
27th April 2011, 07:08 PM |#7  
Senior Member
Thanks Meter: 25
Why a new thread?
27th April 2011, 07:11 PM |#8  
Senior Member
Thanks Meter: 8
It's better in a new thread..The other one is getting chaotic Good work Zach Flashing asap
27th April 2011, 07:12 PM |#9  
zacharias.maladroit's Avatar
OP Recognized Developer
Flag ::1
Thanks Meter: 5,117
Donate to Me
Originally Posted by doccrow

seriously speaking i never got any issues wid any kernel so far. maybe wid two face there was but somehow widout my efforts it got resolved

thanks for your feedback

Originally Posted by sideeffects

Why a new thread?

only test releases here

I want to make sure that my kernels achieve maximum reliability and stability for everyone

thanks !
The Following 3 Users Say Thank You to zacharias.maladroit For This Useful Post: [ View ]
27th April 2011, 07:38 PM |#10 guys develop faster kernels then i can flash.
I stay on Alice if you don't minded
The Following User Says Thank You to silitek For This Useful Post: [ View ] Gift silitek Ad-Free
27th April 2011, 08:21 PM |#11  
runedrune's Avatar
Senior Member
Flag Lahore
Thanks Meter: 2,296
well for the first time ever auto rotation isn't working for me. even after a hard reboot. i'm going to try using lippol's script first then reflashing.

EDIT: still no auto rotation. well i'll still continue testing since i hardly use auto rotate. but i guess that means no doodle jump for me

Proximity sensor isn't working either but I'm guessing that's normal when auto rotation doesn't work.

No call dropped or reboot in a 4min outgoing call.

Definitely feels snappier than Alice though.
Post Reply Subscribe to Thread

battery, cm7, miui, scrubs, security, zach braff

Guest Quick Reply (no urls or BBcode)
Previous Thread Next Thread
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes