[ROM] [4.4.4] [JFLTE] Mahdi-Rom 2.9 Final

Search This thread


Senior Member
Aug 24, 2011


Been running the sprint s4 Mahdi ROM version 2.7 2014-0717. It's been rock solid in performance and battery. Only thing not working for me is wifi hotspot however the wifi bluetooth tether does work. Not a deal breaker as I don't use it that much and can live without it all together. I am considering upgrading to the latest verson (2014-07-27). Is it recommended to start over wiping everything or since it's a new version of the same rom can I just install over it? I took a long time customizing everything to my liking and may just leave it as is. Just looking for some friendly advice.;)

Have a great day!



Senior Member
Jan 14, 2009
I don't understand :) The build 27.07 is the last or not?

---------- Post added at 06:50 AM ---------- Previous post was at 06:33 AM ----------

Trying out this ROM. Why does it say "DC" in the mobile data icon in the status bar. DC = data connected??? Btw, why is my navigation bar disabling itself on every boot? Odd

Also, custom boot animations doesn't seem to be looping properly. I'm using the android L boot animation, and it's supposed to loop until just before it completes boot sequence. It just disappears 3-4 seconds after first coming up.

Sigh, this is like the 5th rom I'm trying already.
C-Rom = freeze & unstable
SOKP = no support for Viper4Android, sound distortion, weird black bar under Clock in Notification Drawer
BeanStalk = no new cm theme engine
Team Asylum = no theming at all
Mahdi = navigation bar not sticking after reboot, boot animation issues
And what about MoKee? ;)


Senior Member
Jun 16, 2010
I seem to have lost root priviledges when updating to the latest build (07/28). I still have ADB and Apps enabled under Superuser in settings. Any way to re-enable root?

Thanks in advance...


Senior Member
Jul 4, 2013
Thanks for the kind words guys, thanks to everyone who downloaded the ROM. I had to sell the s4 to have enough funds for the oneplus otherwise I would have kept it, really liked this s4.

Anyway I'm looking to slowly close this whole project down and take a rest for a while before L is released, if someone is making private builds and can maintain the device trees for the s4 everything is on my git, just let me know. if I don't hear from anyone I'll close the thread within a week.

Thanks everyone.

This is really sad to hear. Mahdi Rom has been my absolute favorite rom since I discovered it in December. At the beginning, I tried out other roms but always came back to Mahdi. It became my daily driver because it worked so reliable and smooth.

You are an awesome dev and I thank you for sharing this rom with us for so long! :highfive:
  • Like
Reactions: kenshiroSG24

Top Liked Posts

  • There are no posts matching your filters.
  • 103


    #include <std_disclaimer.h>
     * Your warranty is now void.
     * 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. Hard. A lot.

    Review by TechXero: here


    GAPPs get them HERE

    Installation instructions
    Installing Mahdi-Rom for the first time, or coming from another ROM:
    - Make sure you're running a proper working ClockworkMod-Recovery/Team Win Recovery Project
    - Copy GApps and ROM ZIP to your SDCard
    - Boot into Recovery
    - Flash Mahdi-Rom zip from SDCard
    - Flash GApps zip from SDCard
    - Reboot
    - Don't restore system data using Titanium Backup!

    Upgrading from an earlier version:
    - Copy the ROM ZIP to your SDCard
    - Boot into Recovery
    - Flash the ROM zip from SDCard
    - Flash GApps zip from SDCard
    - Reboot


    A special thanks to my friends:
    Moose0704 who maintains the Nexus 5 thread and also done the graphics
    dsmitty166 for OTA and helping build this amazing ROM when needed

    Also thanks to:
    Slim ROM
    Omni ROM

    Thanks to all who donated, I appreciate it a lot.
    Casperi, Troy (x100), Torsten, Javier, Matteo, Scott, Robert, Francisco, drdoulittle, Stefano, Stella, Dirk, Brady, Tingone, Bronyr,
    lomniom, Blaze11, GalaxyHeart, Jose Manuel, Stefan, Joachim, Roberto, Jen Steffen, Torsten, Lawrence, Christopher, Erhan,
    Danielle, Quynh, Paul, Farooq, James, Mark, Jerome, Armando, Nikolaos, James F, Susan, Dirk, Paolo, Paren, Mikhhail, Favian,
    Miguel, zoobaar, PolishPrince, Luke, Mohd Zhafran, Rick, Jakob, Paul, Bumjin, Kevin, Paolo Teodosio, Alexander, Evan, Sahil, Max
    Rene, Francesco, Faris, Krystyna, Sean, Pierre, Michal, Gadgetmania, Daniel, David, Eservants, Konstantinos, Jacopo, Gideon, Erhan,
    Ben Pyett, Lori, John, Abdullatif, Juan Antonio, Kjell, Byron, lagoskon, Derick, Anil, Vincenzo, Diona, Charles, Sosykin, Christian and Thomas.


    GITHUB: here


    Detailed: here Short: here
    So here it is, final build is up. This is v2.9, this means there has been 9 versions of this kitkat ROM and always improving with every version. I'm very proud of this final version as its been nearly a years work which has gone into it. Enjoy everybody and please no bug reports because I wont be looking into them any more..

    I've updated the links to simple and detailed changelogs which are in my dropbox now and are linked in the OP.


    -Theme chooser: Let ThemeService handle all theme processing
    -Added Tinted system bars by Yanuar Harry and Omni
    -Immersive mode: options to disable navbar or statusbar gesture
    -Jellybean style slim portrait battery
    -Option to disable status bar ticker preference
    -WiFi: show devices behind a firewall that are connected to the WiFi hotspot
    -Fixed keyboard emoticons issue
    -Screen Recorder: increase max screen recording time to 1 hour
    -Option to reduce volume to safe level when headset is connected
    -External/skia updates
    -Bionic updates
    -Lots of fixes and clean ups in Settings
    -Lots of translations for apps from CM
    -Fixed data usage wierdness for Sprint users -thanks to @thom_bjork for testing
    -APNs updates
    -Other stuff, read the detailed changelog

    -Removed Updater as its not needed now
    -Reverted "Upgrade to SQLite 3.8.6" - Breaks some apps
    -Reverted "Contacts provider: add fb sync"

    -Tanslation updates thanks to @Pixelase, @stmay30, @blazze11, @bankai03, @michaelz93, @senses! and @seilogeo
    New is up build, check the changelogs here to see whats changed since 09/03 to 10/01 http://files.mahdi-rom.com//ota/changelogsimple.txt
    I don't know what works and what doesn't because I don't own the device any more.


    From 10/01 to now
    -Theme chooser: Let ThemeService handle all theme processing
    -Immersive mode: options to disable navbar or statusbar gesture
    -WiFi: show devices behind a firewall that are connected to the WiFi hotspot
    -Fixed keyboard emoticons issue
    -APNs updates
    -Other stuff, read the detailed changelog

    -Tanslation updates thanks to @stmay30, @blazze11, @bankai03, @michaelz93 and @senses!

    -All device trees, hardware-caf projects up to date with CM
    -Major work has been done to GPS
    -Kernel updates

    Detailed changelog

    Mahdi-Rom Project name: android_vendor_mahdi
    - black - Update APNs for b-mobile (440,10,Japan)
    - Merudo - added Truphone UK apn
    - Merudo - added TeleCable/Truphone/Mtel, fixed Lyca/Orange
    - Merudo - added Voiceworks Mobile BV / MVNO NL APNs
    - Merudo - Added missing line for Verizon APN (mcc 311 mnc 480)
    - black - Update APNs for docomo and SoftBank (MCC:440 Japan)
    - Tony Layher - Stop allowing other APNs overriding Sprint LTE.
    - Merudo - added 13 Lycamobile APNs, combined TMI APN, added 48months APN
    - Merudo - corrected Smarts RU APNs

    Project name: proprietary_vendor_samsung
    - Drew Davis - jf: nh7 gps

    Mahdi-Rom Project name: android_hardware_cm
    - Tom Marshall - power: Rename perf flag

    Project name: android_hardware_qcom_display-caf
    - Ethan Chen - display: Use project pathmap

    Project name: android_hardware_qcom_media-caf
    - Ethan Chen - media: Use project pathmap

    Project name: android_hardware_qcom_audio-caf
    - Mahdi-Rom - Merge remote-tracking branch 'cm11/cm-11.0' into kk-4.4.3
    - Steve Kondik - hal: Output latency optimization
    - Steve Kondik - policy_hal: Update offload restrictions
    - Ricardo Cerqueira - Fix the build on 8960
    - Mahdi-Rom - Merge remote-tracking branch 'cm11/cm-11.0' into kk-4.4.3
    - Naresh Tanniru - audio: remove build varient check in audio daemon
    - Aravind Kumar - hal: msm8939: use mixer paths mtp xml for 8939 mtp
    - Walter Yang - hal: Add 8916 qrd skuhf sound card detection
    - Meng Wang - hal: 8939: add support for 8939 skuk device
    - Walter Yang - hal: Add the missing 'else' for mixer_paths filename selection
    - Ethan Chen - audio: Use project pathmap
    - Dhanalakshmi Siddani - Audio: Fix for FM off/on delay post SSR
    - Venkata Narendra Kumar Gutta - hal: Enhance voice concurrency support for 8916
    - Karthik Reddy Katta - hal: Fix for no audio on BT headset till waiting call is ended.
    - Satya Krishna Pindiproli - hal: msm8916: Fix no Tx issue during multi party HFP calls
    - Yamit Mehta - hal: Add support for 8939 sound cards
    - Walter Yang - hal: msm8916: seperate device support for qrd skuh/skui
    - Dhananjay Kumar - hal: add support for dolby license validation
    - Ravi Kumar Alamanda - hal: fm: Fix incorrect routing of fm audio to speaker
    - Asish Bhattacharya - hal: msm8916: seperate device support from other flavors
    - Naresh Tanniru - policy_hal: Null check for output profile types
    - Naresh Tanniru - Audio: voice concurrency support for 8916
    - Walter Yang - hal: Add 8916 qrd skui sound card detection
    - Satya Krishna Pindiproli - hal: Update EC reference for HFP usecase
    - Satya Krishna Pindiproli - hal: Change device IDs of HFP
    - Karthik Reddy Katta - hal: Add support for VoWLAN feature
    - Avinash Vaish - hal: add incall music uplink2 pcm id
    - Narsinga Rao Chella - hal: add support for Fluence Broadside
    - Walter Yang - hal: Add 8916 qrd skuh sound card detection
    - Mingming Yin - hal: update playback channel mapping for USB headset
    - Shiv Maliyappanahalli - hal: add support for device mute
    - Helen Zeng - hal: update voice2 pcm device id for APQ target
    - Naresh Tanniru - Audio: Bear(8916) Audio HAL bringup changes
    - Naresh Tanniru - Audio: 8916 Audio HAL bringup changes
    - Naresh Tanniru - Audio: 8916 Audio HAL bringup changes
    - Vidyakumar Athota - hal: update hw_info with tomtom sound card
    - Satya Krishna Pindiproli - hal: Add chipset specific HFP device IDs
    - Naresh Tanniru - Audio: 8916 Audio HAL bringup changes
    - Jitendra Singh Naruka - hal: send custom stereo state to driver
    - Naresh Tanniru - Audio: Bear family(8916) audio HAL bringup changes
    - Naresh Tanniru - Audio: Bear family(8916) audio HAL bringup changes
    - Ethan Chen - audio: Use project pathmap

    Project name: android_hardware_qcom_camera
    - Tom Marshall - camera: Use project pathmap

    Project name: android_hardware_qcom_gps
    - Ethan Chen - gps: Expect build system to always have a default QCOM variant
    - Tom Marshall - gps: Use project pathmap

    Project name: android_hardware_libhardware_legacy
    - Pavan Chikkala - audio: primary desc check for sonification
    - Mingming Yin - audio: update srcOutputs based on current outputs
    - Amit Shekhar - audio: Fix to update devices for all non-primary outputs

    Project name: android_hardware_samsung
    - JustArchi - samsung: Correct macloader values
    - Dheeraj CVR - omx_core: fix heap corruption when unregistering component

    Project name: android_system_netd
    - Ravinder Konka - netd: Add support for ipv6 tethering when using dun.
    - sanketk - Netd: remove redundant deletion for IPv6 mark rule.

    Project name: android_bionic
    - Pracheer - libc: Add cortex-a53 bionic code

    Project name: android_build
    - Ethan Chen - build: Set QCOM variants for non-QCOM_HARDWARE defined targets
    - Steve Kondik - build: Add "dtbs" target when building the kernel
    - Tom Marshall - build: Introduce project pathmap and use it for qcom variants

    Project name: android_kernel_samsung_jf
    - Mahdi-Rom - update defconfig
    - Mahdi-Rom - Merge remote-tracking branch 'cm11/cm-11.0' into kk-4.4.3

    Project name: android_frameworks_av
    - Steve Kondik - stagefright: Resolve turf war between FFMPEG and mm-parser
    - Chaithanya Krishna Bacharaju - audio: Audio resampler support for 192Khz playback
    - Steve Kondik - stagefright: Use multiaac decoder for multiaac :)
    - Steve Kondik - stagefright: More high-resolution audio support
    - Steve Kondik - audioflinger: Allow FAST tracks for any supported sample rate
    - Tom Marshall - av: audioflinger: Fix SRS build
    - Tom Marshall - fw/av: Use project pathmap
    - Steve Kondik - stagefright: Enable 24-bit mode for DTS audio
    - Lajos Molnar - stagefright: Fix seeking in MPEG4 container - do not merge
    - Bertil Akesson - Correct the time returned by AudioPlayer::getMediaTime
    - Arulselvan M - Audio stops after seeking AVI clip with MP3 audio (special contents without proper key samples)
    - Suresh Choudhary - libstagefright: Adds some parsing capability
    - Christopher R. Palmer - stagefright: Allow devices to use older widevine blobs

    Project name: android_frameworks_native
    - Steve Kondik - omx: Add nBitsPerSample parameter for FLAC
    - Ethan Chen - Use project pathmap

    Mahdi-Rom Project name: android_frameworks_base
    - Hanumantha Reddy Pothula - wlan: Modify sequence of events sent during DHCP phase.
    - Arif Hussain - Wifi: Handle P2P-REMOVE-AND-REFORM-GROUP event in GroupNegotiationState
    - Nalla Kartheek - Wi-Fi: Set BTCOEXMODE_DISABLED irrespective of BT's connection state
    - Nalla Kartheek - P2P: Disable 5GHz channels in 2.4 GHz only mode
    - Hu Wang - Wifi: fix auto connect policy for forgetNetwork
    - Arif Hussain - Wifi: wifi not connecting, once the APN gets disabled state
    - Paul Zhang - WIFI: FIX wifi not auto-connect issue.
    - Hu Wang - WiFi: Fix data2Wifi caused not enableAllNetworks.
    - Nalla Kartheek - P2P: Change supplicant scan intervel during WFD session
    - luxiaol - Wifi: Add a feature to control wifi auto connect.
    - c_vhchin - P2P:initiate provisioning on persistant group removed.
    - michaelz93 - SystemUI: Updated Spanish Translation
    - blazze11 - Keyguard: Updated german translations
    - Ricardo Cerqueira - Add a HAF access permission
    - Matthias Yzusqui - wifi: show devices behind a firewall that are connected to the WiFi hotspot
    - Abhisek Devkota - Revert "SystemUI: Fix missing top task in recent panel."
    - Mahdi-Rom - Disable forced navbar: reworked
    - Amit Shekhar - frameworks/base: Fix delay in sending AUDIO_BECOMING_NOISY intent
    - Clark Scheff - Themes: Let ThemeService handle all theme processing [1/3]
    - Danny Baumann - Code cleanup.
    - Mahdi-Rom - [1/2] Immersive mode: options to disable navbar or statusbar gesture

    Project name: android_frameworks_opt_telephony
    - Adnan - Telephony: Scrub debug messages for identifiable information.

    Mahdi-Rom Project name: android_packages_apps_ThemeChooser
    - Clark Scheff - Themes: Let ThemeService handle all theme processing [2/3]
    - Michael Bestas - Automatic translation import
    - Michael Bestas - ThemeChooser: Remove unused string

    Mahdi-Rom Project name: packages_apps_Settings
    - Altaf-Mahdi - Settings: Updated german translations
    - Xacom - Updated Italian traslations
    - Altaf-Mahdi - Disable forced navbar: reworked
    - Adnan - Settings: Update button backlight summary always.
    - Altaf-Mahdi - [2/2] Immersive mode: options to disable navbar or statusbar gesture
    - Altaf-Mahdi - Button settings: add enabled/disabled summaries for all navigation options
    - Altaf-Mahdi - Settings: update Spanish translations thanks to @SensesXda
    - blazze11 - Settings: update German translations
    - Renaud - Settings: update French translations

    Mahdi-Rom Project name: android_packages_apps_Dialer
    - Andrea Fagiani - Add reverse lookup provider "PagineBianche" (IT).
    - Adnan - Dialer: Scrub debug logging for identifiable information.

    Mahdi-Rom Project name: android_packages_apps_Mms
    - Adnan - Mms: Scrub debug logging for identifiable information, fix codestyle.

    Mahdi-Rom Project name: android_packages_apps_Camera2
    - Arne Coucheron - Camera: Fix histogram on/off states
    - Michael Bestas - Automatic translation import
    - Dave Daynard - Camera2: Headset shutter mode
    - Michael Bestas - Automatic translation import
    - Michael Bestas - Camera2: Remove unused strings
    - sssemil - Camera2: Fix video button size

    Project name: android_packages_apps_BluetoothExt
    - Altaf-Mahdi - Merge remote-tracking branch 'cm/cm-11.0' into kk-4.4.3
    - Tony Layher - Handle multiple paths in the SECONDARY_STORAGE variable.
    - Michael Bestas - Automatic translation import

    Mahdi-Rom Project name: android_packages_apps_MahdiCenter
    - Renaud - MahdiCenter: update French translations

    Mahdi-Rom Project name: android_packages_providers_ThemesProvider
    - Clark Scheff - Themes: Let ThemeService handle all theme processing [3/3]
    - Michael Bestas - Automatic translation import

    Mahdi-Rom Project name: android_packages_services_Telephony
    - Andrea Fagiani - Add reverse lookup provider "PagineBianche" (IT).

    Project name: android_device_samsung_jf-common
    - Dante Russo - Remove reduntant clearing of GpsLocation memory
    - Pandari Sabhapathi - Migrating XTRA from gpsonextra.net to cloud based izatcloud.net
    - Kevin Tang - Changes for External DR enablement feature.
    - Linto Paul - Platform:ADPES2,Chip Info:APQ8064 Automotive
    - Kevin Tang - Fix for CR 692085, error mapping incorrect in one of the cases
    - Kevin Tang - loc timer util fix to handle the race condition
    - Kevin Tang - fixing the SSR recovery race condition
    - Tushar Janefalkar - Add support for XTRA_VERSION_CHECK QMI LOC msg
    - Kevin Tang - KW warnings
    - Arne Coucheron - camera: Update HAL API versions and fix warnings
    - Drew Davis - jf: CameraWrapper: clean up stuff left over from d2
    - Altaf-Mahdi - Mahdi bring up

    Project name: android_device_samsung_jf-common
    - Mahdi-Rom - dependencies: add back qcom-common
    - invisiblek - proprietary-files: move libsensirion_j1 to jf-common
    - Spegelius - Added jactivelte devices to Android.mk
    - Spegelius - Moved stuff to jf-common

    Project name: android_external_sqlite
    - arter97 - Upgrade to SQLite 3.8.6
    - Steve Kondik - Revert "Fix world-readable permissions due to sqlite race condition"
    - arter97 - Regenerate Android.patch

    Project name: android_external_stagefright-plugins
    - Steve Kondik - stagefright-plugins: Allow use of HW codecs for Windows Media
    - Steve Kondik - stagefright-plugins: Audio output port reconfiguration support
    - Steve Kondik - stagefright-plugins: Handle 32-bit floating point sample formats

    Project name: android_external_ffmpeg
    - Ricardo Cerqueira - ffmpeg: Add license notice files

    Project name: android_external_exfat
    - Tom Marshall - exfat: Fix symlink generation

    Mahdi-Rom Project name: external_cyanogen_cmhomeapi
    - Matt Garnes - Synchronize access to pending updates to Cards.
    - Matt Garnes - Add null check for CardDataImage on insert.
    - Matt Garnes - Add documentation for sort order of published cards.
    New build is up,


    -Theme chooser: upstream fixes
    -AppOps: fix checking user permissions before enabling/disabling wifi
    -Add persistent notification when USB OTG is connected
    -Fix slim recent panel defaulting to white on clean flash
    -Add reverse lookup provider "Das Telefonbuch" (DE)
    -Setup wizard cleaned up, much cleaner experience
    -Fixed a bug in quiethours qs tile which caused high battery drain
    -APN updates

    *Frameworks and settings clean up
    -spent some time looking through these projects and cleaned up things
    in services, keyguard, systemui and settings

    *Lockscreen notifications improvements and fixes
    add option to:
    -enable/disable if notification is actually dismissed
    -force enable low priority notifications
    -fixed nullpointers

    -not being able to add short numbers
    -force close when blacklist button was pressed in in-call ui

    *Enabled some options by default on a clean flash and fixed some options which shouldnt have been enabled
    -circle battery
    -double tap status bar to sleep
    -notification count
    -quicksettings quick pulldown to the right

    -screen on led
    -flip tiles and vibrate tiles
    -recents clear all
    -navbar ime cursor

    *Removed options:
    -custom lockscreen color options
    -quiethours auto sms, call bypass
    -battery saver led and vibrate option

    -Tanslation updates thanks to CM, @seilogeo, @toyr99, @Pixelase, @The Tox, @michaelz93,
    @Alberto97 and @jbnitro
    -Big Japanese translation update (not sure if your a user on xda but good work)

    Surprise!! New build is up. I had some time yesterday to merge cm's latest changes to device trees, vendor blobs and kernel (major changes), if you guys are keeping up with cm nightlys you will know already that cm has re-based the kernel on caf, update vendor blobs including gpu drivers and major changes in the device trees. I had some time yesterday night to merge these changes and make build for you guys since others are struggling. I haven't tested it but there's nothing experimental in there.


    -Major kernel, device tree and blob updates
    -Theme chooser updates from cm
    -Apn updates
    -Removed lock screen custom color options
    -TrafficMeter: fix monitor visibility when wifi or mobile data is disabled
    -Smal fix in Mms for theming background
    -Blacklist: fix not being able to add wildcards and short numbers
    -Big French and Japanese translation update thanks to @The Tox and others

    You guys have missed a few builds so refer to this simple changelog to catch up http://files.mahdi-rom.com//ota/changelogsimple.txt

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