[Sony Xperia S, Acro S, Ion] mickybart:
nAOSP ROM 5.1 and 6.0 for Xperia S

The purpose of this rom is to provide a rom not so far of the AOSP with some cool features (nAOSP means "near AOSP").

As I'm using some external works to do this rom, I first want to thanks the community and specially billchen1977,ViPER4Android Team ,Cyanogenmod Team , FXP Team

nAOSP 6.0 Marshmallow Changelog (features, issues, etc)

b14

IMPORTANT: temporary removed due to an annoying undetected bug !

android-6.0.1_r70 (October security fixes)

Kernel: security fixes (from nAOSP 7.0)

2D: Support 60 fps + managed by the GPU to reduce CPU load (improve global responsivness)

Previous versions

b13

android-6.0.1_r66 (September security fixes)

Kernel: Quadrooter vulnerabilities fixes [MENTION=6754437]millosr[/MENTION])

Kernel: kcal: fix display corruption with value 256

Settings: Rework of Settings/nAOSProm for a more user-friendly interaction

Settings: Add automatic proximity speakerphone settings for Dialer

telephony: proper shutdown and radio capability support

translation: Russian (WIP, [MENTION=7319709]KGrandly[/MENTION])

b12

Please read the associated post to don't have issues with Superuser

android-6.0.1_r61 (August security fixes)

Superuser: Bye to Superuser, welcome to Superuser with AppOps

su: Support for multiuser and the new Superuser

Ui: Battery styles (see Settings/nAOSProm/More) - compatible with GravityBox (thanks [MENTION=6754437]millosr[/MENTION])

Ui: Optimizing application displays the application name (thanks [MENTION=6754437]millosr[/MENTION])

ROM Updater : Remove download action from notification

Layers: doze invert color is now automatically set by the theme (manual option removed)

Bluetooth: Accept all incoming files

Settings: Display safe entries into nAOSP section (depends on current user, root access ...),battery styles, substratum, root access control per user

SELinux: add missing nfc and mediaserver rules (+ fix selinux denied ioctl by checking binder fd type: sockets using ashmem accessors)

Boot: check f2fs not run anymore

kernel: bma250: more fix about bma250_ic_write issues when motion (pickup/significant) are in use with accelerometer.

Gapps: /persist/gapps-config.txt

b11

android 6.0.1_r52 (July Security patches)

Daydream: supported (see Settings/Display) - disabled by default

Sensors: Significant motion added (Full doze and localization/low power mode support) - disabled by default

Sensors: Pickup sensor implementation reviewed (just a high_g detection on Y axe) - disabled by default

Kernel: accelerometer: merge bma250_ng and bma250_motion drivers to avoid conflict and provide a better hardware managment

Kernel: cpufreq: Fix issues when a cpu goes back online and was clocked to the max frequency of 2.05 Ghz.

Kernel: Color calibration: full support of RGB Multipliers with kcal_ctrl driver implementation.

Kernel: Leds: Store the brightness requested. That permit to better control the requested brightness when thermanager/other changing the max_brightness value.

CPU Hotplug: mpdecision daemon is back (will manage cpu1 online state)

Offline charging: new pictures for chargemon (thanks [MENTION=4902681]Jurn_Software[/MENTION])

Day/night mode: support new kcal_ctrl driver.

Settings: Enable/disable some sensors (pickup, significant motion, ...), Support substratum application

Themes: Full support of Layers 4.0

Dialer/InCall: Automatic spearkerphone (see Dialer/Settings/proximity speakerphone) - disabled by default

Translations: update for uk [MENTION=4902681]Jurn_Software[/MENTION] ), fr

b10

android 6.0.1_r46 (June Security patch)

Settings: Double Tap to sleep can be disabled (thanks [MENTION=6754437]millosr[/MENTION])

Quick Settings: Immersive mode (hide NavBar and/or Status Bar). If you dirty flash, you can add it with SystemUI Tuner. (thanks [MENTION=6754437]millosr[/MENTION])

Dialer: Fix "invalid number" issue (based on [MENTION=4610285]runekock[/MENTION] feedback. thanks)

b09_r43

android 6.0.1_r43 (May Security patch)

Eleven updated

TWRP: 3.0.2+

b09

android 6.0.1_r20 (April Security patch)

kernel: Intermediate security fix of march added

Quick Settings: add Caffeine (thanks [MENTION=6754437]millosr[/MENTION])

ROM Updater: fix a permission issue (thanks [MENTION=6754437]millosr[/MENTION])

b08

android 6.0.1_r17 (March Security patch)

Hw Keys: launch Camera application with Camera key can be configured to Disabled, Long press only or default

Translation: update pt/pt-rBR [MENTION=4537643]ThunderBolt_BR[/MENTION])

b07

TWRP: Flash/Backup/Restore FOTA image supported (recovery.img)

Lockscreen: display Dialer or Vocal Assist shortcut (see Settings/nAOSProm/More)

Quick Settings: quick pull down with one finger can now be disabled (see Settings/nAOSProm/More)

Battery: Display time since last full charge (thanks to [MENTION=6754437]millosr[/MENTION])

ROM Updater: Complete review of OpenRecoveryScript support with a new user-friendly solution to select zip files, set pre and post installation per zip file, change zip flash order, etc (big thanks to [MENTION=6754437]millosr[/MENTION]). (if you want to migrate to the new gui, you will just have to remove the aditional script content and use the new way to redo it.)

Translation: few updates (polish, serbian, french ...)

b06b

Fix /system/.supersu not created

Fix Viper4Android version (2.4.0.1)

ROM Updater: default path changed to Download folder. Support dependency to avoid incremental flash by mistake on a wrong ROM.

b06

ViPER4Android : 2.4.0.1

TWRP: 3.0.0

ROM Updater: Support manual download and additional parameters (don't wipe or execute post update controlled by upstream). Old ROM will be flagged as "Old" or "Old | Downloaded".

Recovery: OTA will automatically flash recovery.img into FOTA

Layers: OTA will preserve theme files when flashing a new ROM

Quick Settings: Add ADB over network support

NavBar: On-screen keys can be enabled/disabled from Settings/nAOSProm/More

SuperSU: force system installation with the new stable version 2.65 (/system/.supersu). Can be overrided by /data/.supersu

Fix offline charging

Fix FM Radio and Bluetooth crash when FMRadio is closed without headphone.

Fix DeskClock crash when trying to view world cities

Fix recent button (dismiss all) overlap NavBar in landscape mode

Translation: en, fr, es (@vayavalla), pt-rBR [MENTION=4537643]ThunderBolt_BR[/MENTION]), uk [MENTION=4902681]Jurn_Software[/MENTION]), it [MENTION=6209407]nicofossa[/MENTION]), pl [MENTION=4528283]A6ekAK[/MENTION]), sr [MENTION=6754437]millosr[/MENTION])). Thanks Guys for your help :)

b05

android-6.0.1_r16

Google Now on Tap : Support with Long press on Home

TWRP: Add Crypto and Battery status

OTA: support (see Settings/About phone/Updates)

Settings: Add About nAOSProm

b04

need a /data Format. See post #3561

GSM: 2G/3G switch fixed

Selinux : Enforcing by default

SuperSU : Supported with Selinux enforcing (Beta 2.52) (For remember the ROM include by default Superuser)

Xposed : Supported with Selinux enforcing

AOSP Camera 2: Fix portrait issue (no more cropping to 3000x3000 px)

Hw Keys: Use Camera button to launch Camera Application (Short press if screen is off and long press if screen is on)

Superuser: Fix text color for theme support

Auto Power Mode : Doze and applications standby enabled by default (see Settings/nAOSProm)

Localisation: support GPS/Wifi/GSM fix with Google GMS

/data: remove inline_data mount option. (Fix Telegram/WhatsApp and some corruption issues)

init rc: complete rework of init process to simplify it (remove some scripts and unused services)

Bluetooth 3.0 Headset: Seems to support HFP and A2DP profiles (thanks to report with your model)

b03

kernel: Overclocking issues fixed

Quicksettings: Add lockscreen control

USB OTG support (thanks [MENTION=2505474]Phantasm4489[/MENTION])

Superuser integration

Developer mode and Tuner UI enabled by default

Theme issues : SuperSU/Superuser and WakeUp use new icons into Settings. (not the best for WakeUp but that will simplify things)

b02

android-6.0.1_r10

Long press on Home : Mapped to Nothing in Modern layout to avoid SystemUI crash. Bug need to be fixed upstream.

Quick Settings: Add Fast Charge tile

NFC: support is back

Night/Day Mode: Available into Quick Settings

Settings: Color Calibration improved to support Night and Day settings. Presets are now available.

Bug to send photo into hangout : fixed upstream (need to have Storage permission)

b01

As this is the initial release, please refer to this post

nAOSP 5.1 Lollipop Changelog (features, issues, etc)

b30

android-5.1.1_r36

Support /sdcard legacy path (fix issue with some apps like ES File Explorer)

Hw Keys: launch Camera application with Camera key can be configured to Disabled, Long press only or default

Previous versions

b29

New partition layout with /data and /sdcard merged. please read the flashing procedure.

New partition layout (merge /data and /sdcard)

ROM Updater: OTA support (see Settings/About phone/Updates) (Thanks [MENTION=6754437]millosr[/MENTION])

OTA: flash recovery.img, preserve RRO Theme

SuperSU: force system installation with the new stable version 2.65 (/system/.supersu). Can be overrided by /data/.supersu

TWRP: 2.8.7.0.1 with new partition layout support + Flash/Backup/Restore FOTA image supported

Settings: Add About, Development settings enabled by default

Quick Settings: Add tiles Fast Charge and Day/Night mode, Quick pull down can be disabled from Settings

NavBar: On-screen keys can be enabled/disabled from Settings/nAOSProm/More

Kernel: KSM disabled by default (see Settings/nAOSProm/More)

Apps: Update ViPER4Android (2.4.0.1), Superuser, Browser and Music

Fake Signature support: come back after commit lost since b28

Hw Keys: Use Camera button to launch Camera Application (Short press if screen is off and long press if screen is on)

b28_r34

android-5.1.1_r34 (Thanks [MENTION=6754437]millosr[/MENTION])

b28

Thanks to [MENTION=6754437]millosr[/MENTION] who's working to apply Google Security Update and more

android-5.1.1_r33 (Thanks [MENTION=6754437]millosr[/MENTION])

Font Size slider into Settings/Display/Font (Thanks [MENTION=6754437]millosr[/MENTION])

WakeUp: Fix language mismatch and add Serbian Translation (Thanks [MENTION=6754437]millosr[/MENTION])

Webview: Webview will be updated by Google when GApps are installed (Thanks [MENTION=6754437]millosr[/MENTION])

b27

android-5.1.1_r24

Fake signature support (see Settings/nAOSProm/More) that permit to use microg/NoGapps

kernel minor update

multiple translation (Swedish [MENTION=2727811]SysGhost[/MENTION], Brazilien [MENTION=4537643]ThunderBolt_BR[/MENTION], Czech [MENTION=5266391]patrol-cz[/MENTION] [MENTION=5258737]frantisekz[/MENTION], Polish [MENTION=4528283]A6ekAK[/MENTION], Ukrainian [MENTION=5836277]Ant_Z[/MENTION], Spanish [MENTION=3952590]enriquettoo[/MENTION], French). Thanks to everybody

bootanimation 720p60 : thanks [MENTION=5075747]guerreromanuel[/MENTION] and [MENTION=6052403]GjorgiDxc[/MENTION]

b26

android-5.1.1_r13

If you come from version less than b25, read this post first

b25 version b

android-5.1.1_r9

SELinux

Layers (support themes with Layers Manager available on the play store; don't confuse with CM Theme Engine)

Settings: Integration of SuperSU, WakeUp, Layers Manager and migration from Developer Options to a dedicated nAOSProm category

Settings: support feature to control Ambient Inversion color

TWRP 2.8.7.0 (recovery.img available under the zip file)

Superuser: materialized embedded part

Translation: Italian (thanks [MENTION=6209407]nicofossa[/MENTION] ), French

to flash b25, read this post first

b24

FMRadio: bug fix (crash when back button pressed on the headphones activity)

UI: Clear Recents App button position fixed when NavigationBar is used

Dex2oat: permit dex2oat to run more than 6 minutes (fix installation timeout issues like with Facebook)

Audio Effect: add ViPER4Android with NEON_HQ mode, QCOM Acoustic Echo Cancellation (aec will be used by default on VoIP)

Audio: review code, enable QCOM Fluence mode and enable double mic (endfire)

If you like ViPER4Android, please go to thanks developers of ViPER4Android and not me. You will find more detail on the section "Good to know :)".

b23

android-5.1.1_r4

Thermal protection: Migration to thermanager with a configuration file located at /system/etc/thermanager.xml. (fix device reboot when too hot). For those who overclock the CPU, please read Overclocking section.

f2fs : patch to support at least TWRP 2.8.5.0

Recents App: close recents app migrate to floating action button style and to a new location on the bottom right

b22

FM Radio: new application forked from AOSP 5.1 FMRadio (support favorites, fm band, speaker ...)

kernel: Better detection of sweep gesture, pickup driver support removed temporary

WakeUp : add Ambient/Doze action. Double Tap and Proximity enabled by default

Notification: Lightbar support. Delay On changed to 500ms. (See Settings/Developer)

GPU: revert low gpu frequencies to stock ones

Next/Previous track: Volume keys can now be used with Ambient Display enabled (media control when screen is off)

Data Roaming: Disable by default (thanks to [MENTION=4900593]mirhl[/MENTION])

Ambient: Adaptive brightness support (default) and fix custom brightness (Settings/Developer)

Adaptive brightness: review lux/brightness (default; custom by end user supported).

Dialer: Material Icon

b21

android-5.1.1_r1

kernel: Add wake gesture (thanks to [MENTION=5107393]ztc1997[/MENTION])

kernel: Touchscreen can power off/on itself based on the proximity sensor state (only in standby mode)

Wake Up: New application embedded to control Wake Gesture and Kernel configuration.

Settings: remove double tap option

Screen will not be turned on if you plug/unplug USB cable anymore

b20

android-5.1.0_r5

Bluetooth fixed

GPU: some corruptions are fixed

Kernel : Merge of OC and standard kernel. By default GPU and CPU use stock frequencies (gpu scaling enabled by default). SmartMax and ROW set by default. mpdecision is disabled (compensate with 192Mhz low frequency, a better governor etc).

Audio FX removed (more in nAOSP spirit)

b19

android-5.1.0_r1

Browser: Incognito mode

USB Fast Charge: Can be enable on Settings/Battery/menu. (disabled by default after a reboot)

Overclocking: OC kernel is replaced by OC Ultra kernel. OC Ultra kernel will start at 1.51Ghz by default and you are free to change the frequency after boot. For those who use OC kernel, change to OC Ultra in developer before dirty flash to b19

some code reworks to easier maintenance with billchen works (regarding last nAOSProm 5.1 alpha1)

b18

After flashing the ROM, please flash the b19-alpha3 kernel or at least change the sdcard read ahead to 128 kB. (For those who use OC_Ultra, flash b19-alpha3)

Brightness: Screen brightness level like stock ROM (als/curve parameters). Lowest brightness can be set to 2% (5/255). Boot brightness is set to 30%

dt2w: Fix touchscreen not responding issue (thanks to [MENTION=5107393]ztc1997[/MENTION])

Screen: Color calibration added (check Settings/Developer)

USB Fast Charge supported (thanks to [MENTION=5107393]ztc1997[/MENTION]) use at your own risk

SD card: Read ahead set to 2048kb by default

Zram: switch to lz4 compressor/decompressor (thanks to [MENTION=5107393]ztc1997[/MENTION]) + Fix random hard reboot when changing zram disk size on developer GUI.

GPU: Dynamic clocking supported. 2d will run at 96Mhz and 3d at 177Mhz by default. GPU governor is set to ondemand by default. The max frequency depend of the kernel used

Overclocking: OC Ultra kernel is set to start at 1.51Ghz for the CPU. You are free to overclock up to 2.05Ghz.

Hotplug CPU: disabled on all OC kernel. It is safe to start it with OC kernel but you shouldn't do it on OC Ultra.

Music/Eleven: bugs fix

b17

kernel: last update from billchen1977 source.

Base: rewrite some code to share the effort with uCyan 12.0 (eg: migration to persist properties)

Developer: Complete rewrite of the code to integrate nAOSProm features. This is clean now and you will not lost settings after a dirty flash (for those who used kernel OC, please read the overclocking section about this change).

Mms: Material style for Mms application (this is not a full materialized application but should be enough :))

Browser: Migrate to CM 12 version (minor change from AOSP, Material support. Stability is not compromise)

Gallery2: Migrate to CM 12 version (beta)

Music: Replaced by Eleven and AudioFX from CM 12 (beta).

b16

kernel: switch to cma by default (thanks billchen1977)

kernel: if you don't want cma, flash boot-b16-nocma.zip after flash of the rom

lightbar: Multiple mode (Always off, on with 5 sec timeout, on/off with the screen). Brightness/Adaptive brightness control supported on each mode (except Always off)

music: control music with long press on volume key when screen is off. long press on camera key to play/pause.

sdcard: support f2fs/ext4/vfat

overclocking: OC Ultra reduce to 1.836 Ghz

Settings: Developer permit to enable/disable "music control", double tape to wake, shake to wake. Wifi permit to support EAP-SIM and EAP-AKA.

shake to wake: disable by default

RIL: update to support conference call (and base support for eap-sim but not tested)

b15

Mainly a repack version of multiple evolution since b14 to b14d kernel.

pickup device integrated (to trigger Ambient display for example)

freeze issues fixed

multi boot f2fs/ext4 supported (for cache and data)

zram set to 192 MiB

Low Memory Killer can be set by the end user (see Settings/Developer)

b14 version b

b14b replace b14. Strange issues fixed by a complete recompilation. (Music player issue fixed too.)

Double tape to wake (in the middle of the screen) (thanks billchen1977)

Double tape to sleep (on the statusbar)

Lightbar : support adaptive brightness, state linked with display (on/off/brightness/dim)

Ambient/Doze : brightness can be set by the user (see Settings/Developer)

Adaptive brightness : speed up the brightness increase when environment become brighter (~1.5s vs ~4.0s previously)

f2fs : supported by the kernel (thanks dennes544/billchen1977) and recovery (mkfs.f2fs)

oom: more free memory will be available to avoid some memory allocations issue

b13

bluetooth: multiple issues fixed (files transfer are now operational in both directions)

b12

Browser: fix crash on Settings

Nfc: add HAL (thanks billchen1977)

Physical buttons : improvement based on comments

- You are now able to use the old layout or the modern one (Go on Developer options). By default the modern one is used.

- Modern layout: Long press on App Switch (ex Menu key) will trigger the menu for legacy app. Long press on Home will trigger assist (same behaviour than Nexus with navbar but without the bubble due to hardware constraint)

b11 version b

b11b replace b11 with webview fix (used by gapps, browser, etc)

android 5.0.2_r1

developer: zram/lightbar/kernel parameters can be set with developer options (section nAOSProm).

button: Menu key press will show recent apps. Long press on home will trigger menu key for legacy app (Android <= 2.3).

Adaptive brightness : Fix black screen when too low. Review of lux/britghtness. Slide the light control to adjust as you want (variation based on the auto brightness configuration defined)

Ambient/Doze : Fix brightness/readable notification. (display doze when pick up the device need some improvement)

memory: oom/zram tuning again

b10

Overclocking supported but by default a NON-OVERCLOCKED KERNEL will be flashed. See the Overclocking section

kernel: new governor smartmax (set by default)

kernel: new io scheduler SIO and ROW (ROW is set by default)

overclocking: 2 kernel available (OC and OC Ultra) see the Overclocking section

memory: tuning zram/lowmemory (swappiness to 100, ...) see the ZRAM section

kernel: bug fix (OTG, random reboot since b09c) (thanks billchen1977)

Ambient Display (consume some power so you can disable it on Settings/Display) (thanks billchen1977)

lightbar: turn off support (set sys.lightbar.enable=false on build.prop and reboot)

graphic: bootanimation and default wallpaper from Lollipop

b09

Update: zram management - flash boot-b09b.img kernel (possible fix for random reboots)

Memory management improvement

kernel: zram patch for ARM compatibility + swap support

enable swap with 1 zram device set to 100MB by default (zram is a compressed device in memory)

revert to more conservative oom/lowmemory values

kernel: bug fix

battery.capacity set to 1750

b08

Android 5.0.1_r1

kernel : cleanup pmem deprecated API, fix clock for msm mercury

b07

update to be inline with billchen1977 test7 (kernel update for cpu gouvernor, ksm, multi user crash fix)

Multi users supported

b06

Android 5.0.0_r7

Switch to [MENTION=5064452]billchen1977[/MENTION] kernel_msm

Superuser (embedded into Settings)

Clear all recent apps (add button on the top right)

Quick Settings : One finger pull down when trigger from the right of the status bar

Advanced power menu with reboot support (normal, safe, recovery, bootloader)

Email : Fake security for exchange (no pin, no remote erase, etc need to be set)

GSM / Wifi / Bluetooth / GPS / Camera

Auto brightness

Lightbar

FM Radio

Busybox (Full)

Recovery support with FOTAkernel

b04-01

see my previous post

Download

Release available under :

https://www.androidfilehost.com/?w=files&flid=49217

Overclocking

Overclocked kernel are tested on my own device BUT I won't be responsible for any damages on yours

Please don't enable mpdecision on OC kernel and b20+ version except if you know what you are doing.

Since b20 kernels are merged so the overclocking is available in the default kernel. By default the ROM will use stock frequencies.

Thermanager

By default if the device is too hot it will reduce the screen brightness and CPU clock. When the device will be cool enough it will restore brightness and CPU clock but at 1.5Ghz only.

If you want to force thermanager to restore the clock to a specific value defined by an external overclocking tool, you can edit /system/etc/thermanager.xml.

See http://xdaforums.com/showpost.php?p=62419397&postcount=2465

ViPER4Android

All credits go to ViPER520 and the amazing works.

You should read detail and go to thanks developers.

xda : http://xdaforums.com/showthread.php?t=2191223

website: http://vipersaudio.com/blog/?page_id=31

Layers

Themes are supported with Layers Manager.

This is not a CM Theme Engine so you can just use Layers themes.

Howto flash

6.0 and 5.1 procedure

(OLD) 5.1: Read and thanks UlvarinPL

Translation help

6.0 translation files

Known issues

6.0

Source

nAOSP 5.1

nAOSP 5.1 noemulated

nAOSP 6.0

Release

Kernel: 3.4.0

Android: 5.1.1 and 6.0.1

Thanks

- billchen1977

- ViPER4Android Team

- Cyanogenmod Team

- FXP Team

- TWRP Team

- All the community around Android

FAQ