1. Are you ready for the Galaxy S20? Here is everything we know so far!

[Virgin Mobile] All-In-One Custom ROM User Guide

Discussion in 'Android Devices' started by struckn, Nov 6, 2013.

  1. struckn

    struckn Android Expert
    VIP Member Thread Starter

    Hello everyone! Decided to put together a thread which I hope will be helpful for those looking to flash custom ROM's on the Virgin Mobile Samsung Galaxy S3 (VM SGS3). I do not claim credit for "inventing" any of the methods and tips I will go over, this is more the result of reading all the threads in this forum, along with a lot of internet research. My goal is to make this thread more of a one-stop shop, as some of the info found here on this forum and elsewhere is outdated, for those looking to truly customize their VM SGS3 with the ROM of their choice. Definitely need to give credit to MopedRyder for all of his hard work, his info, especially in his thread on fixing the APN's for MMS and LTE, has been invaluable and I would say he is the reason I have been able to do what I have with my phone. Be sure to post a "like" or a "thanks" on that thread if you find this one helpful at all. The other forum member whose work got me pointed in the right direction is other gus and his thread on installing CM 10.1, give him a "like" or a "thanks" as well.

    Update 12/16/2013:

    So now that I have a bit of experience on this forum under my belt, extra special thanks to the following users of the combined VM and Boost SGS3 Experience:

    First off, _inKredible_ for giving me the encouragement to even do this tutorial in the first place, and then following up with tons of positive reinforcement!

    TheBritton, whose guidance, advice, leadership, and friendship has become indispensable not just to me but to every single user of these forums.

    Wetbiker7, my brother from another mother, you are an inspiration to me and a constant source of awesome information and great humor.

    jdsingle76, for really truly caring about moving development forward and always having great advice. Above all else, sir, I thank you for your service to this country, I would love to meet you in person sometime! Everyone please visit the sticky thread for his wonderful, Knox-free ROM; this is one of the few ROM files I keep on my phone at all times, along with two backups for a rainy day.

    Stock/rooted 4.3 ROM by jdsingle76

    All forum members who have helped catch my mistakes, bravely flashed zips on their phones to "see what happens," and in general have provided me with a "Like" or a "Thanks" to help make me feel like I'm contributing something positive, I consider you guys my new circle of friends. Standing invitation to all of you if you are ever in my part of the world, first round of beers is on me at any one of the fine craft breweries I enjoy here in northern Colorado!

    A couple of tips and helpful advice:

    First, when starting a new thread or making a post that is designed to get some help for an error or issue of any sort, the more info the better. Also, learn to communicate. It is an unfortunate sign of the times that massive grammar and spelling issues are widely tolerated, especially on internet forums. But guess what-spelling, punctuation, and grammar still matter. If a post has to be deciphered because it is unintelligible, and then we have to start the twenty questions game on top of that, frustration and confusion will ensue. While I will never call anyone out on their inability to use the English language like an adult, chances are I will just ignore something that looks like my six year old nephew wrote it (he's pretty damn smart actually, and I am pretty sure he is more advanced than some of the people who are allowed to use the internet in the first place, so I guess I shouldn't insult him!). Vague posts that abuse the English language cause the experienced users who are willing to give up their valuable free time (don't EVER forget that part, or take it for granted by posting snotty replies when that help is offered) to have to play twenty questions to get at the heart of your problem. PAY ATTENTION to what you have flashed, don't just post that "I flashed something and now you all need to fix it." That ain't happening. If you do expect help in that scenario, you will get linked HERE and HERE and will deserve it. READ READ READ, and then proceed carefully, as ultimately everything in the world of root is 100% the responsibility of the end user. Period. This just happens to be a very helpful forum, but there are limits to the generosity of the experienced users, and tolerating downright stupidity is definitely not a requirement of this unpaid job.

    Second, you are more likely to get a timely response if you know how to get the attention of the experienced users. A lot of us use Tapatalk, or have various alerts set up for subscribed threads, post quotes, and mentions. If, for example, I have posted a response to a question or issue, quoting my response as part of your next reply will cause Tapatalk to notify on my phone that I have been quoted. Ditto for mentions; place an "@" sign (without quotes) in front of my username (EXACT spellings only, a misspelling won't work) and I will get an alert. That being said, patience is still a virtue. A lot of the users here are quite busy juggling school, work, family, etc., etc. If you don't receive an immediate response, don't worry. Don't "bump" a thread or make multiple posts referencing the lack of a response to your original question. Regardless, nothing is so urgent it can't wait in the first place. Luckily, there are enough users paying attention to this forum that responses are usually going to happen sooner rather than later. Same thing goes for PM's. My philosophy is that any user can PM me at any time, for any reason, especially if they don't want to post publicly about an issue that they fear will make them look dumb in front of everyone else. I always respond to PM's, but if I am at work or busy, it may take a while. Again, just be patient.

    Finally, please avoid clutter. Redundant threads and posts don't do any favors for anybody. Search and read before deciding to start a new thread especially; if the topic is already available, just post (hopefully something meaningful) in that thread, and please refrain from posting new threads for every insignificant little thing. Also, any thread started here needs to be pertinent to the world of root; if it isn't, then there is a general forum available as well. Chances are it will get moved there sooner rather than later anyway, but save the guides and mods some trouble and post in the appropriate sections.

    Since I first posted this tutorial, access to current rooting information has caused havoc for some members. The arrival of Knox has complicated that even further. If you don't know about Knox, stop right now and do some research, starting with the sticky thread from Britton found here:

    Myths and Truths About Knox

    Britton also has an excellent sticky thread on the subject of rooting, the material I have below is mainly a retread of his work in case you don't want to bounce from thread to thread. While his thread is titled to attract the attention of newer users, the methodology is universal for all users of the SGS3. Plus, it doesn't hurt to have something this important in more than one location!

    WARNING! It has recently come to my attention that Virgin Mobile uses other carriers for their "umbrella" in Canada (Sprint for VM USA, AT&T for Canada); therefore, I am adding the disclaimer that all methods and files from here on down are intended only for SPH-L710; if you don't have that specific phone designation, then this info may or may not be useful, however that is where it ends! I am not responsible if something goes extremely sideways and you are using a phone designated anything other than SPH-L710! Additionally, bricked phones, from any carrier, are NOT my problem/responsibility, everything done while rooted, and especially any of the following methods/tips/customizations etc., etc., are done AT YOUR OWN RISK!! I am a firm believer in personal responsibility, as in nobody should really need a warning that their coffee is hot!!

    First, a link to Britton's tutorial: Rooting MK5 for Newbies!


    1. Download Philz Touch 6.19.3 .tar file to your computer (current version as of this update)
    2. Download latest SuperSU update .zip file (version 1.93 as of this writing)
    3. Download Samsung drivers to your computer so it will recognize your phone when you plug it in with USB; downloading Kies will install the drivers as well, and then Kies itself can be uninstalled afterward (I find it to be a pretty useless program in general, and 100% worthless if you are rooted)
    4. Download Odin version 3.07 to your computer
    5. Plug in phone with USB, and transfer SuperSU .zip file to the phone, internal or external memory doesn't matter, as long as you know where to look for it; you will then need to unplug your phone prior to doing the next step
    6. Make sure your USB cable has been disconnected, then place phone into download mode (volume down, home key, power button all at same time, wait through the vibrate until message appears on screen); on your computer open Odin v. 3.07, uncheck "auto reboot" and then click button labelled "PDA" and then browse to the file location for the recovery .tar file you downloaded (I just put them on the desktop for ease of locating); select that file and it will show up in the dialog box next to the PDA button
    7. Plug phone back in via USB, you should get a message in Odin indicating it recognizes the connection; press "Start" and about two minutes later Odin will give you a "Pass" message
    8. Unplug USB (very important!), and then remove battery from your phone (holding down power button until phone shuts off generally does the same thing, but battery pull is recommended method); replace battery after about 5-10 seconds, then hold, at the same time, Volume Up, home key, and Power button, keep holding until after the phone vibrates and blue script appears in top left corner saying "Recovery booting"
    9. Navigate to location of .zip file containing SuperSU and flash that file
    10. Boot into system, go to the app drawer, and open the SuperSU app. Choose to update the binaries and disable Knox (if applicable), and you should now be rooted. There are several Root Checker apps available in Play Store that can be run after reboot to confirm root status. Alternatively, open Titanium Backup and it will let you know if you are rooted or not (Titanium is quick and easy, and avoids the need for a program like Root Checker which serves no other purpose)

    Link for Philz is further down this page.
    Link for SuperSU v. 1.93: SuperSU Download

    Update 12/16/2013:

    So it is now virtually unanimous here at the forums, Philz Touch Recovery is the ONLY way to go (sorry TWRP); it is the only recovery for which I have seen ZERO issues reported, and it has handled all my needs exceptionally well, especially now that Android 4.4.x KitKat is a going concern. TWRP was solid until version was released, which was supposed to allow flashing of 4.4.x ROM's (version failed to flash them due to changes in the KitKat builds) but that version was a disaster on my phone; as far as CWM, it just seems downright incompatible with this particular phone. If you haven't installed Philz yet, don't complain that something didn't flash or mount properly, which will happen at some point with the other two recoveries. Head over to my man JD's sticky thread and follow the links:

    Philz Touch Recovery (Thread by jdsingle76)

    Files in .tar format are available as well if you need to install Philz via Odin instead of flashing from current recovery (custom recovery that is, stock can't perform this function).

    Update 1/3/2014:

    Philz Touch is now being hosted on Goo.im, link is here Goo.im Downloads - Browsing CWM_Advanced_Edition

    Here we go!

    To reiterate, the standard disclaimer applies: I am not responsible for bricked phones. However, as long as you follow the steps, do your research, and choose a ROM intended for the Sprint variant of the SGS3, you should be fine. Also of high importance, be sure to always make a Nandroid backup of your current working ROM so you will have a fallback in case something goes south. There is plenty of storage available on this phone if you add a 32 gB SD card, so I keep backups of each ROM I like to use once I have them up and running and customized; basically, any time you flash something new or upgraded, make a backup first! Additionally, I will be referring to the programs/software I prefer throughout this guide, that does not mean that other programs/software of a similar nature will not work. Finally, I am assuming that you have already installed a custom recovery and are rooted; if you aren't, then what are you waiting for?!

    One final disclaimer, and then on to the important stuff! With the advent of the unified d2lte builds that some ROM's are now using, the following method is only necessary if you want to flash a ROM that was built specifically for Sprint, or if it is an early version of the unified builds (which started on 2/17) that didn't yet include our device (d2vmu) as "approved."

    What you will need:

    Two programs on your computer, one to unzip/zip the ROM .zip file, and one to use as a text editor. For the zip access, I use WinRAR, found here: WinRAR. You can download a free trial version, but I use this program so much that the license key was worth the purchase. 7zip should also work, found here: 7-Zip. For text editing, you will want Notepad++, found here: Notepad++ Home. This is a free program. I have both WinRAR and Notepad++ set as defaults on my computer; your computer may need to be directed to which program to use when opening a .zip file or editing text if they are not set as defaults.

    Choose a ROM you would like to use on your phone and download to your computer. XDA has a thread for the Sprint variant of the SGS3 (known as d2spr, make sure this designation is in the file name of whatever ROM you choose) which is a really good starting point. From this point on, it is assumed that you are going to choose a Jelly Bean 4.3.x (or higher, now that KitKat 4.4.x is available) ROM; that is what I use, I find no reason to use anything significantly lower than the current Android build. My favorite, hands down, is Carbon, but Hellfire, AoCP, JellyBAM, PACman, and Cyanogen are all awesome. 4.2.2 is quite nice as well, and is stable; I currently don't go lower than that build, as I like using DashClock widget on my home screen, among other features available for 4.2.x and up.

    Open the .zip file using WinRAR. You will see several folders; the one we are interested in is META-INF. Double-click that folder and then the following ones: com, google, android, so that the file path is META-INF/com/google/android. You will now see two files, "updater-binary" and "updater-script". We need to modify "updater-script". Double-click to open; there will be two sets of commands called "asserts." What these do is prevent your phone from flashing incompatible software by specifying bootloaders. You will notice several allowed bootloaders listed, in the format "L710VPxxxx"; ours is "L710VPAMG2" and you will also notice that it is not listed. Therefore, we need to modify or remove these assert lines so that the .zip flash can proceed. This is fine to do because the Sprint version and ours are identical for the things that matter. Right-click on this file, choose "Rename" and then add ".txt" (quotes are mine, do not include in the actual file name), so that the file is now called "updater-script.txt". The file is now in text format and is therefore able to be edited.

    There are now two possibilities for modifying this file. The first is to change one of the allowed bootloaders to ours (L710VPAMG2). The second is to remove the assert lines altogether, so that the first command in the script is "mount ["ext4"......" (external quotes are mine). I have tried and confirmed both of these methods, so either one is fine to use.

    Update 11/28/2013:

    After the release of the official 4.3 Touchwiz update, some users may have bootloader L710VPUBMK5, referred to as "MK5" on their phones. Same rules still apply when modifying a single line to match the bootloader if you don't want to delete all the asserts.

    After modifying with either method, close that window, choose "yes" to save changes to script, then "yes" again to save changes to the .zip file. After doing so, the last step is to rename "updater-script.txt" back to "updater-script"; this is very important-if you do not, the .zip will not flash since recovery programs will ignore a text file (.txt). Additionally, but not necessary, I rename the .zip file to something more recognizable than the default file name (i.e. Carbon Nightly 20131106 if I am modifying the nightly file for Carbon ROM downloaded on 11/6/2013).

    Update 12/16/2013:

    So apparently the age and OS on your computer will play a role in which procedures and programs are best for modifying the updater-script. My desktop is ancient, in computer years, and the version of Windows on it is equally old. This has necessitated the use of renaming to "updater-script.txt" whereas on my laptop, which was new last year and has Windows 8 (which I despise, but that is another story for another forum!), no renaming is necessary, as I can open up the updater-script file directly with Notepad++. Use what works for you in your situation. Also, I am now aware that it is possible to modify one "master copy" of the updater-script, save it on your computer desktop, and just drag it into the window which shows "updater binary" and "updater-script" in order to replace the original updater-script file. This should work for any AOSP ROM.


    Update 1/2/2014

    Easier method than changing to "updater-script.txt" and back: simply drag the updater-script to your desktop, open it with the file editor of your choice (again, recommend Notepad++), then delete/modify the asserts. Close that window, "yes" to save changes, drag updater-script back into the ROM archive window, choose "yes" to replace existing version with modified version, and done! The updater-script file that is still on your desktop can also now be used over and over if you desire, every AOSP ROM just uses the same updater-script for each nightly/version within an Android build series, with the exception that some developers add extra visuals that will show up on your screen while flashing, such as the name of the ROM. These will show up as "ui_print..." in the script, and can be deleted if you want, they do not affect the functionality of the actual script.





    Connect your phone via USB, and place the ROM .zip onto either internal or external storage. I use external storage, with a folder called "ROM Folder" which is divided into subfolders for ease of use-a folder for Carbon, a folder for GApps, a folder for custom kernels, etc. Unplug USB, boot into recovery, and flash your modified .zip file. I would recommend flashing just this file to make sure everything works OK (remember, always backup before performing a major function or change), and then once your phone has booted and settled in, go back to recovery and flash GApps, custom kernel (if desired, not necessary but I do prefer to use one in order to tweak battery life), and definitely one of MopedRyder's APN fixes: APN Fixes by MopedRyder (the fix you choose needs to be flashed every time you upgrade or change ROM's, otherwise you will have potential issues with MMS and/or LTE).

    Update 12/16/2013:

    With the current versions of CM 11, I have not had to flash the APN fix with each dirty flash of a new nightly, rather, the APN settings have "stuck" through each flash. This was definitely not the case with 4.3.x builds of any ROM. Also on 4.4.x, if you need to access your APN settings, it is done through the Voice Dialer app, open the app and then say, slowly and clearly, "Open APN."

    Update 4/9/2014:

    The amazing @MopedRyder has started a new thread which contains APN fixes geared toward the d2lte "unified" builds which have become pretty much the norm. These builds, however, were presenting a lot of data issues for users on all carriers, not just Virgin. Therefore, he has presented us with a new round of fixes, which include the proper edits to make "Virgin Mobile" show as the carrier, not "Sprint." While the APN's should stick through dirty flashes of your ROM of choice, some of the edits to build.prop and the eri.xml file won't, so flash every time you change ROM's, whether it is a dirty flash or changing ROM's entirely. And be sure to post a "Thanks" and a "Like" in his OP before you download, none of us would be using our phones the way we currently do without his hard work!


    Happy flashing and enjoy your new ROM!


  2. struckn

    struckn Android Expert
    VIP Member Thread Starter

    OK, so here goes "round two!" Now that you have a modified ROM .zip file that can be used to flash a custom ROM to the VM SGS3, further modification and tweaking is possible. For starters, I will detail what else I modify on the ROM .zip, some GApps info, then a little about custom kernels, and finally general customization once the ROM is up and running on your phone.

    So if you're like me, you probably use Titanium Backup to do a lot of things, including removing unnecessary programs from your phone (bloatware if you are running stock rooted, unused programs on custom ROM's). As a quick note, if you don't have Titanium Backup (Pro version) yet, definitely get it, I consider it to be THE must-have app for rooted users. That being said, a lot of those system apps can be removed from the ROM .zip itself, prior to loading it onto your phone and flashing. It is about the same difference to remove these apps on the front end (file modification) or the back end (Titanium), I just like to make the .zip files as "lightweight" as possible since I store a lot of them permanently on my SD card in case I need to make a clean flash of a ROM. However, not all files are safe to remove ever, and others are needed on the front end but can be deleted on the back end. A good example of the latter is the Trebuchet launcher that comes with CM based ROM's. I never use it as I find Nova to be far and away the best launcher available; it needs to be available upon flashing though, since otherwise you will have no home launcher to proceed from once the ROM is up and running (yes, it will boot and load, but there will be a black screen and no access to anything) if you are not dirty flashing over a previous version of your ROM with a third-party launcher already installed. Therefore, I leave it in the .zip and remove using Titanium once I have Nova up and running. Here is a basic list of files that can be safely removed, and how to get to them:

    When opening the .zip file on your computer, instead of META-INF, this time we want to choose "system" and then "app". This will show a list of .apk files that the ROM developer has included to be flashed to the system partition. Right-click on file to bring up menu which includes "delete" option.

    Apollo.apk-I never use this, prefer Amazon MP3 app instead.

    Browser.apk if you prefer to use another browser like Lightning or Chrome; unlike the launcher file (Trebuchet) this one is not necessary for a successful flash

    Live Wallpapers (these will vary based on the ROM, but most of these are pretty standard inclusions in CM based ROM's). I remove these because they tend to be battery hogs. Kind of fun to look at for a minute or two sometimes, but I find them totally useless. Look for these files: BlueBalls.apk (yes, I know; this one is found only on Carbon as far as I know by the way. Wish they would rename it.), Galaxy4.apk, HoloSpiral.apk, LiveWallpapers.apk (don't delete LiveWallpaperPicker.apk, as it is needed to enable any apps that function as live wallpaper. I use one called Null Black to make the screen entirely black, and another called Wallpapyrus which eliminates photo cropping-your picture shows up just the way it looks in the gallery), MagicSmoke.apk, NoiseField.apk, PhaseBeam.apk, and VisualizationWallpapers.apk.

    Email.apk and Exchange2.apk can be safely removed if you use GMail exclusively or don't do any email at all on your phone. These are used to enable email accounts besides GMail.

    GooManager.apk (not always included, but will sometimes show up). This will constantly nag you about updates being available for your ROM, but it has no idea that you are using a modified d2spr ROM, so the "update" it is trying to push on you will not flash because it is going to look for specific bootloaders (see post number one). Basically worthless for VM users.

    BasicDreams.apk if you don't use the "Daydream" function included for when the phone is idle or docked or charging.

    Finally, a file to NEVER be deleted but which you should modify on the front end is LatinIME. This is the file for the keyboard, but it is bloated with multiple language packs, so if you only need English taking out these files saves close to 20 megabytes of space. Double-click to open the .apk, then choose folder called "res" and then the folder called "raw"; there will be a bunch of files named "main_xx.dict" where "xx" is an abbreviation for the language (en for english, de for german, etc.). Delete all except for "main.dict" and "main_en.dict", you should now have these two files, plus one named "empty.dict" and sometimes two other files with "setup_welcome" in the file name, these are for the tutorials when first opening the app. Close window, choose "yes" to save modifications.


    Basically, these complete the Google experience. Without them, there will be no access to Play Store for starters; while Google has moved towards more and more of their apps being available in the Play Store for easy updating across platforms, if you can get them via flashing GApps so much the better. Make sure you choose GApps which correspond to the build number of Android in the ROM, otherwise they will not work. Period. 4.2 GApps cannot be flashed in conjunction with 4.3.x ROM's for example. Additionally, most recent set is also usually preferable. The developers behind Paranoid Android maintain an excellent thread on XDA, link is here: Paranoid Android 0-Day GApps, they update every time Google updates. Other GApps packages are also available on Goo.im.


    Any modem designed for Sprint, as well as all versions for VM/Boost, can be flashed to your phone if you are looking for better phone signal or data connectivity. Remember, modem does not equal bootloader, even though we use the same letter/number combination to refer to them (MG2, MK5, etc.); this is especially important to remember in the context of Knox. To reiterate, modems are not bootloaders! They are also independent of ROM .zip files, so flashing a new ROM or an updated version of your current ROM will not affect your modem.

    VM/Boost Modems (big thanks to jdsingle76 for making these available as flashable .zip files!!):

    MD7 and MG2 Modems

    MK5 Modem

    Sprint Modems (thank you to CNexus at XDA):

    All Sprint Modems Prior to MK3

    Sprint MK3 Modem

    Custom Kernels

    These are not truly necessary, as the kernels provided in custom ROM's function just fine. However, if you want to tweak the performance options in "Settings," a custom kernel will provide more options in terms of governors and schedulers. Also, you will be able to undervolt to save on some battery. Overclocking is also available, but totally unnecessary on a device like ours. My kernel of choice is dkp kernel. Keep in mind, and this is very important, that kernels are similar to GApps in that you must choose your build carefully, as kernels are updated to reflect important changes in source code for ROM's. For example, Cyanogen implemented a change to the video drivers on October 20th, so flashing a ROM from after that date and a kernel from before that date results in very funky color and graphic issues due to incompatibility issues. As a rule of thumb, choose a kernel build which corresponds as closely as possible to the date of the ROM build. BMS kernel is also functional on our devices, but it gave me bootloops and I have read about users having mixed experiences with this one; in general, flash any custom kernel at your own risk. If unsure, just stick with stock and you should have no problems. That being said, I am currently getting about 36 hours between charges due to using dkp kernel and choosing freelunch governor and zen scheduler.

    dkp kernel

    Download Page for dkp kernel

    XDA Thread for dkp kernel

    BMS kernel

    XDA Thread for BMS kernel

    Update 3/17/2014:

    Introducing my new favorite kernel, Quantum Kernel. Stumbled across this in the AT&T forum for the SGS3; since it is part of the new unified builds, it is flashable on any S3 using a carrier in the United States. Only been using it for a little while, but it is very nice, and my battery barely drains while the phone is idle. Having a ZeroLemon 7000mAH doesn't hurt either!

    Also, latest version of LeanKernel has proven to be quite nice on LiquidSmooth; LeanKernel is very minimalistic, so if you like lots of governor and scheduler options, this one probably isn't for you.

    Quantum kernel

    Quantum Kernel Downloads

    XDA Thread for Quantum (ROM and Kernel)


    LeanKernel Downloads (Unified/d2lte)

    XDA Thread for LeanKernel

    Update 4/9/2014:

    Two more kernels for you guys. First up is Deathly kernel, this one comes by default on the amazing LiquidSmooth, and is also now included as the stock option on OSE and Validus. This kernel is AMAZING, I have never seen so many options included in a kernel before, and my battery has virtually no drain while the phone is idle. Absolutely loving it. Fortunately for those who want to try it, the kernel is available as a separate download, but be warned that there may be incompatibility issues with some ROM's, depending on how those ROM's were compiled and what "stock" kernel they use.

    Deathly Kernel Downloads

    Second one is Majestic kernel. Been aware of this one for a little while, found it while browsing the AT&T forums on XDA, as part of my quest to find more unified/d2lte options. Only posting about it now because the previous builds, for me at least, would flash just fine but WiFi was borked completely. However, that is not the case on version 1.09, so I feel confident linking it now. Yet another kernel from another forum, called Harkness, still presents the WiFi issue, so when that is resolved I will link that kernel as well.

    XDA Thread for Majestic Kernel

    Finally, once a ROM is up and running on your phone, I absolutely love these two options for customizing:

    First, Xposed Framework and the modules that can be used in conjunction with it, link here: XDA Thread for Xposed Installer. Simply awesome, use it and play around with the modules to see what works for you. XBlast Tools is the best module available, very cool customization available with this one. Once Framework is installed, modules are available for download within the app. No harm is possible to your device as far as I know when using this; if something turns out "wrong" or "weird" reflashing your ROM or a backup will eliminate the problem.

    Update 3/17/2014:

    While I still think Xposed is an amazing concept, most of the things I used it for are now included in custom ROM's. I am of the belief that the fewer third-party intrusions, the better your phone will perform. This has also allowed me to start using ART instead of Dalvik as the default runtime; for a work in progress, ART does seem to deliver on its premise.

    Second, Team Black Out has done an amazing job modifying apps to have transparent or black backgrounds, which look very sweet on this phone. Link is here: Team Black Out. Again, play around with it and see what works for you; backing up regular version with Titanium will allow you to return to that version if you don't care for the Team Blackout version you just flashed.

    Honorable mention to AdAway for removing ads from unpaid apps, link here: XDA Thread for AdAway

    Want to customize your notification sounds? I use an app called Ringtone Maker, available in Play Store, to create custom ringtones (approximately 30 second bits for ringtones and 3-5 second bits for notifications) out of songs I have downloaded to my SD card. If you then create a folder on your internal memory for each (one named Ringtones and one named Notifications; the files cannot be named any other way for this to work) the ROM will detect these files and make them available for use as default ringtones and notification sounds.

    For more tips, tweaks, and themes, check out the All Things Mods! thread by my friend @ajnycguy:

    myalias, WayneMC, CMO8019 and 4 others like this.
  3. struckn

    struckn Android Expert
    VIP Member Thread Starter


    While this will not be anywhere near a complete listing, I will list here, with appropriate links, as many ROM's as I feel are pertinent to the VM SGS3 community. This will include several 4.3 TouchWiz based ROM's as well as a large selection of 4.4 KitKat ROM's. I will also indicate what I have flashed personally, along with opinions where needed. Remember, they are just that-opinions-so if I knock a ROM that you like, don't take it personally! Also, any ROM on the XDA Sprint SGS3 forum, under Android Development and Original Android Development, should be flashable as a general rule of thumb, some will just need more modification than others.

    4.3 TW ROMs

    I am just going to list what I consider the three main TW ROM's here; TW is definitely not my style of choice (I actually find TW to be more abhorrent than any of the other ridiculous OEM skins like HTC Sense; it makes me kind of sad to think, based on how many units Samsung has sold to regular users, that TW is probably synonymous with Android for millions of people when nothing could be further from the truth), and like many users, one of the main reasons for rooting is to get far away from stock. However, a stock based ROM is necessary for certain things, like updating PRL and Profile, so these are good to have around.

    Stock/Knox-free from @jdsingle76

    This one is a must-have, especially for the users (like myself) who will never allow Knox on their phone. You never know when you will need a stock ROM, and JD was kind enough to provide our version, minus Knox.


    Wicked Sensations

    This one is actually pretty amazing for being TW based. Dazed has done an awesome job of customizing this ROM, and there is a lot of support for it on XDA. Unfortunately, the recently released version 0.5 is the final version, as Dazed has poured so much of his life into this ROM and needs a break. Plus, official KitKat being on the horizon means a lot more work for any developer who works with TW.

    Wicked Sensations XDA Thread


    Similar to Wicked Sensations in terms of customization; Rompnit has done a great job making TW much less atrocious!

    MOAR XDA Thread

    Update 3/25/2014:

    As of 3/24/2014, there is another stock-based ROM available called Project X from Team Rejectz. This ROM is advertised as being "Wiz-less" as the developer has removed a ton of Samsung/TW crap and has instead added a ton of features that make this one worth adding to the list. Haven't flashed it myself, as I find it next to impossible to tear myself away from 4.4 KitKat even for a little while just to test, but thought I would include this one as it looks like a quality ROM.

    Project X XDA Thread

    Update 4/7/2014:

    Project X has now been combined with Wicked Sensations, due to the "retirement" of Dazed from maintaining Wicked. Developer behind Project X didn't want to see all of Dazed's hard work go to waste, so received permission to carry on with the mods and themes that are heavily integrated into Wicked. XDA thread link remains the same.

    4.4 KitKat ROMs

    Personally, this is where it gets fun! Also included in this section will be links to the respective Google+ communities; I have found that these communities are usually a better source of information than XDA, as issues and tips are posted in more of a real-time format, and without some of the restrictions and stigmas associated with XDA. I will also add the disclaimer that out of all the ROMs available for KitKat, there is a lot of redundancy, to the point that XDA is cluttered with tons of ROMs that only differ in the fact that they have a fancy name; otherwise, most of these ROMs aren't bringing anything new to the table. Yet they always seem to garner the same reactions of "Sweet-something new!" when they are just a look-alike to so many other ROMs out there. So the bottom line is, pick a ROM or two that works well for you and go with it, as always, most of the ROM preferences are not a lot more than personal opinion, and no two phones are identical!

    LiquidSmooth 3.0

    I am listing this one first because it is the reigning champion of KitKat builds in my opinion. Whereas Carbon was my favorite JellyBean ROM, LiquidSmooth has proven to be extremely reliable from one build to the next on Android 4.4.x/KitKat, with nice customizations, snappy performance, and responsive devs. Especially in light of the recent growing pains associated with the d2lte ROMs (more on that in the sections for some of the other KitKat ROMs), LS just keeps putting out builds with none of the "unified" problems. There are a lot of very nice customization options built in, so I recommend ditching Xposed and switching the runtime to ART. Keep in mind though, that ART is still a work in progress, and not all apps are compatible (ditto for certain GApps packages), so if an app you like misbehaves when ART is the runtime, switch back to Dalvik. I also recommend Quantum kernel with this ROM, see post #2 for links.

    LiquidSmooth G+ Community

    LiquidSmooth XDA Thread

    LiquidSmooth Download Page

    VM SGS3 LiquidSmooth Thread on Android Forums


    Carbon is still very near and dear to my heart, but their recent KitKat builds have been disappointing, especially after such a promising start. The team chose to not release builds until KitKat was fairly established, with the intention of releasing superb nightlies. This notion held true for the first month they were available, and then "upstream" source issues brought problems with the unified builds that caused a long delay between builds; when the builds resumed, data connectivity was a major issue. Carbon team also seems to be about a step or two behind LiquidSmooth in terms of feature implementation. They are fairly active and responsive on their G+ page, but seemingly simple requests like the ability to hide the battery icon in the status bar, which is possible on most other ROMs, have been acknowledged but not implemented. If you want a solid nightly, I can only recommend those from the month of February at this point. Website could also use a lot of work, it is still hyping features from JellyBean 4.3.x, such as the utterly worthless Halo, and the News tab never gets updated. Really only good for accessing the downloads.

    Carbon G+ Community

    Carbon XDA Thread

    Carbon Website/Downloads


    Probably the most well-known custom ROM available, definitely one of the forerunners, especially since they forged the way for the unified/d2lte builds. Their early KitKat builds were really nice, and the two Snapshot builds for d2spr (prior to the start of the unified builds) are truly solid. However, too many recent problems (March of 2014) revolving around the unified builds and data connectivity, which has also caused problems for the custom ROMs that depend on CM for their source. Carbon and CyanFox are at the front of the pack of ROMs that claim CM is the source of any negative issue, particularly why certain builds fail or the complete lack of builds in over a month (CyanFox). Personally, it's getting a little old, and I have zero desire to run CM or any of the ROMs that depend on it, like the aforementioned Carbon and CyanFox; LiquidSmooth continuing to put out one solid build after another, without making any excuses, is certainly a factor as well. Stable JellyBean builds are available for those who would like a solid CM experience without the hassle of the problems that come with nightlies (versions 10.2 and 10.2.1).

    CyanogenMod Website (includes downloads)

    CyanogenMod XDA Thread

    CyanogenMod G+ Community


    CyanFox is a ROM that didn't impress me on JellyBean 4.3.x, but was surprisingly good in the early days of KitKat. However, they haven't released a build in over a month (as of this update), using the same tired excuse as Carbon that any problem isn't really theirs but is instead "upstream" issues, i.e. "blame CyanogenMod, we're just cherry-picking off of them." Can't currently recommend this ROM, but maybe that will change if they get some unified builds going. Would be nice if they spent some of their down time overhauling their website; similar to Carbon, it is really only good for accessing the downloads page.

    Edit: Due to CyanFox becoming a complete joke, I am removing the relevant links. Leaving the rest of their section intact because of my always witty commentary.

    Vanir and Commotio

    Vanir is another ROM that I didn't care for on JellyBean 4.3.x (actually I hated it, so much was broken that it wasn't usable), but their 4.4.x builds have been really good. Commotio is now along for the ride, it is essentially the same ROM but with some different theming. Plus, Vanir bills itself as "Heavy Metal Android Development" which I can definitely dig! Only problem I have had on their recent builds was excessive battery drain, and I didn't really dig into the possible causes or run it long enough to give it a thorough shakedown.

    Vanir and Commotio Website

    Vanir and Commotion XDA Thread

    Vanir G+ Community


    This one is really nice, lots of features and very smooth. Unfortunately, had the same battery drain issues that I had with Vanir. Will probably give this one a more thorough run in the near future, since I suspect the battery drain may not have been directly related to the ROM (ditto for Vanir), but possibly due to the GApps I used instead (Complete Stock package from Paranoid Android installs Google Keyboard as a default, and it was showing up as the number one user of the battery, even though I switched to a different keyboard; I have since switched to the Full Modular package, which doesn't include the Google Keyboard). However, other users made similar observations about running Beanstalk and having their battery life just get destroyed, so we'll see.

    Beanstalk XDA Thread (AT&T Forum/unified build; more frequently updated than the thread on the Sprint Forum)

    Beanstalk G+ Community

    Beanstalk Unofficial Builds From GideonX (developer of BMS kernel; these builds are semi-frequently updated)


    One of the legendary ROM's, now officially available for d2lte as of 4/6/2014. Very influential on most of the other ROM's listed here in terms of features that have been cherry-picked. Still looks like it needs a few more feature tweaks in order to be a heavy hitter on KitKat, but I'm sure that will come sooner rather than later.

    Download Site for AOKP (d2lte version)

    Android Ice Cold Project (AICP)

    This is a recent addition to the d2lte KitKat lineup, and one I like quite a bit, it is on my current short list along with LiquidSmooth and Beanstalk. Based on AOKP and Omni, it has none of the CM-based data issues, and includes some nice extras like the Ribbons feature that Carbon used in their 4.3 builds (Ribbons is a Sidebar/Appbar swipeable dock that hides on the side of the screen until activated, making it easy to keep an uncluttered home screen).

    AICP G+ Community

    AICP Download Site


    One of the benefits of the unified builds is that now we have access to ROMs from other carriers; this one was previously available to users on AT&T and T-Mobile, and if the thread on the XDA forum for AT&T is any indication, is probably one of the most loved ROMs on that forum. Quantum is very closely based on CM, but tweaked and optimized. Only downside currently is that the data issues regarding 3G connectivity (and for some users LTE, but I have only experienced the 3G issues, LTE has connected fine) are present in the current crop of builds, but once those are worked out, I would certainly prefer this over straight CM. Quantum also uses, naturally, the kernel of the same name which is available as a separate download (I LOVE the Quantum kernel, it has worked great for me on LiquidSmooth), and the dev is very active on his XDA thread, which is a huge plus in my book.

    Quantum ROM and Kernel XDA Thread

    Quantum ROM Download Site

    Update 4/28/2014:

    Quantum now has a thread on XDA, Sprint sub-forum for the SGS3. It has now also been updated to 4.x builds (the devs numbering system, separate from Android) and is based on Slim as of the change to 4.x, not CM.

    New XDA Thread for Quantum ROM


    Another ROM now available from the AT&T side, thanks to "unification," is this one from Team OSE (Open Source Evolution). Based on Slim, reported to run very well.

    XDA Thread for OSE

    Downloads for OSE

    Update 4/28/2014:

    Due to issues with supporting devices not owned by team members, support for the d2lte has been dropped. OSE team is willing to help anyone who does own an S3 and is willing to compile and maintain for our device, but until then, no more official builds (last one was on 4/16/2014).


    One of the more popular ROMs, this is an "All In One" that includes cherry-picked features from Paranoid Android (P), AOKP (A), and CyanogenMod (C), hence the "PAC." They were one of the last major dev teams to release a KitKat build, and loyal users about lost their minds over it, which was actually pretty funny to watch. A lot of those users have reported PAC as being very nice on 4.4; despite their bias (like myself with Carbon on 4.3 and LiquidSmooth on 4.4), it seems that these claims are legit. Personally, I thought the 4.3 builds ran well after a fresh install, but then became laggy and buggy shortly thereafter, which was enough of a turnoff that I have little desire to run PAC ever again. However, as I mentioned, 4.4 seems solid enough, so don't hesitate to give it a try!

    PAC ROM G+ Community

    PAC ROM XDA Thread

    PAC ROM Website


    Slim is another ROM with a hugely loyal fanbase. The dev team does come up with some innovative features, and I have liked using those features when they have been included in other ROMs, such as their version of the Recent Apps switcher that is currently included in LiquidSmooth. However, I cannot stand their default custom DPI; I realize this can be changed rather easily, but that is still somewhat of a hassle. Didn't like Slim on a previous phone (4.2.2 Android build at the time), so just like PAC, it is not one I choose to run. Additionally, that fanbase tends to be fairly annoying in their over the top love for this ROM. However, my understanding is that on 4.4, it is quite comparable to LiquidSmooth in terms of features and stability, so there should be plenty to like about the 4.4 version.

    Slim G+ Community

    Slim Website

    Slim XDA Thread


    Originally for the S4, this ROM now has official support for the S3. Seems very promising, the dev team formed and created this ROM out of frustration over some of the elitists in the ROM dev community, although development has stalled of late, with no builds since the third of March as of this writing (3/3/2014 is kind of a "special" date where it seems a lot of things got borked pretty badly with source code and unified build issues for a lot of ROMs, so a general rule of thumb for users looking for more stability on ROMs that rely on the CM/unified source would be to choose from this date or earlier). Don't know if this ROM is going to go the unified route, their builds are currently carrier-specific, so assert lines will have to be modified or removed.

    OctOS G+ Community

    OctOS Website

    Schism ROM

    Kind of a new ROM, as of this writing. They are still in Alpha stages, and are based on Mahdi, which is one of the myriad ROMs available for the Nexus line. Their claim to fame is an all-white UI, and their setup is fairly refined for being an alpha build (as of 4/28/2014). The all white comes from a misinterpretation of Google's current direction; contrary to popular belief, Holo has not necessarily been killed off in favor of white, but white was a necessary change to the status bar elements in order to accommodate the transparent status bar without having gradient issues. Personally, darker/blacker is always better, so this is not a ROM I will be choosing to run (not that it even matters, there is only LiquidSmooth for me at this point, no other ROM even compares, especially at a time when they have mostly become interchangeable-nobody is really bringing anything "new" to the table currently, see the section on "Look-Alike" ROMs. In most cases now, all that's different is the fancy name that makes users feel they are getting something shiny and new).

    Downloads for Schism ROM

    Schism ROM G+ Community

    "Look-Alike" ROMs

    For the sake of being semi-complete, here is a listing only for the ROMs that don't seem to bring anything to the table, just a different name to make users believe they are getting something "Sweet and New!" Sometimes it is all I can do to refrain from posting sarcastic comments in their threads on XDA, asking "Why do we need this ROM?" Fortunately, ROMs like these disappear from the first page of the XDA forum pretty quickly, and for good reason. If anyone really wants to look these up, Google will be your friend. A quick disclaimer: several users in the G+ communities I frequent do really like Validus, and I respect those members a lot; however, any ROM that makes clowns a central point is simply a "no go" for me. Just makes me think of children in the bodies of adults who think Insane Clown Posse is a great band. Ugh.

    Resurrection Remix
    Blue Lightning
    Codename Lungo
    Nameless ROM

    A final two cents: I will never, ever run or discuss (besides this little rant) MiUi or MoKee. Why? Chinese communist garbage. MiUi even has some stupid little cartoon character wearing a Mao hat with pinko commie star on it as their mascot. Might as well be wearing a Che Guevara T-shirt to be complete. Like I said, my two cents.

    I cannot stress enough, that no matter which ROM (or ROM's) you choose to play with, read, read, read and then read some more on the various threads to get familiar with the pros and cons and to see what other people have already experienced.

    Happy Flashing!
    WayneMC and Photonik like this.
  4. redrunner1985

    redrunner1985 Member

    A little info, when I went to open the updater script, I didn't have to change it to a .txt. it opened without doing that.
  5. struckn

    struckn Android Expert
    VIP Member Thread Starter

    You can open it in a "read only" type of mode just by clicking it, the issue is that you need to be able to edit the file, and that is where the renaming with the ".txt" extension come in.
    WayneMC and destroynirvana like this.
  6. redrunner1985

    redrunner1985 Member

    I think it's the way my computer is set up, but I only have to double click on it and notepad++ opens. If I add the .txt notepad opens instead and doesn't modify the files right.....
    Velcer likes this.
  7. XAL2

    XAL2 Android Enthusiast

    I just want to say then you so much for making this thread! I did this last night and now I'm happily touchwiz free! With everything working.
  8. upconvert

    upconvert Well-Known Member

    Fantastic thread! Thanks for patiently explaining everything. I've been flashing ROMs for years, and I still learned a bunch from this.
  9. Velcer

    Velcer Newbie

    I had to edit with Notepad++ as well. Editing with Windows Notepad did not work and failed every time I tried to install. Notepad++ worked the first time and install instructions were super easy to follow :)

  10. struckn

    struckn Android Expert
    VIP Member Thread Starter

    Gotcha! The important part is to be able to edit the file so as long as you have that capability that is all that matters!
    WayneMC likes this.
  11. redrunner1985

    redrunner1985 Member

    Right. Just letting people know I had to do it just in case they have the same issue.
    struckn likes this.
  12. struckn

    struckn Android Expert
    VIP Member Thread Starter

    Forgot to mention in OP #1, for those of you not too familiar with regular flashing and "dirty" flashing-when regular flashing a new ROM, you will need to first wipe several partitions from recovery (dalvik-cache, cache, data, and system). In TWRP, I choose to manually select these four as opposed to the default "Factory Reset" option. This prevents incompatible data from your current ROM from corrupting the flash of your new ROM, otherwise you may get either a "failed" message or your boot-up will hang on the boot screen. Dirty flashing however, refers to not wiping any partitions when updating the same ROM to a newer version, and is usually OK, I have personally never had any problems with this method. Occasionally a dev will recommend a clean install when they release a major version change, even if you are already running a previous version of that ROM; I figure the devs know way more than I do, so if they recommend in these instances, go ahead and do it.
    WayneMC likes this.
  13. XAL2

    XAL2 Android Enthusiast

    Do you dirty flash the nightlies? Also what custom kernel do you use? I'm experiencing not to good battery life.
  14. struckn

    struckn Android Expert
    VIP Member Thread Starter

    Always-dirty flashing nightlies has never given me any problems. Just make sure to do a proper wipe when changing ROM's entirely i.e. going from Carbon to Hellfire, otherwise changing one Carbon build to another, for example, should require just flashing the new .zip file. I have been using dkp kernel for about three weeks straight now, link is in OP #2. Undervolted by 50 across the board (ROM Toolbox Pro is the app I use for this, there are others that work just as well; make sure to NOT check the "Apply at boot" option until you are sure your settings are stable), and using freelunch governor and zen scheduler (noop is also pretty nice). No need to overclock, standard setting of dual core at 1512 mhz is more than enough. Regular usage of my phone gives between 24 and 36 hours consistently with these settings.
    WayneMC likes this.
  15. Velcer

    Velcer Newbie

    What is the deal with these? Are they just nightly updates to the ROM?
  16. XAL2

    XAL2 Android Enthusiast

    So you're saying that I don't have to modify a new nightly if I just dirty flash it? Also, with flashing a new kernel I don't have to wipe dalvik cache or anything like that?
  17. _inKredible_

    _inKredible_ Member

    Pretty sure that you'll need to edit or delete the assert lines even on nightlies, because you're still flashing a new Rom even though it's just an update. The updater-script would still need to be modified to reflect your device. I'd recommend wiping cache and dalvik cache before flashing anything. It won't harm anything.
    struckn likes this.
  18. _inKredible_

    _inKredible_ Member

    Can we vote on this thread/guide being stickied?
  19. XAL2

    XAL2 Android Enthusiast

    I second this.
  20. XAL2

    XAL2 Android Enthusiast

    Okay sounds great. Thanks for the help.
  21. struckn

    struckn Android Expert
    VIP Member Thread Starter

    _inKredible_ is correct in his reply to this-you always have to modify the .zip file; this is why using the GooManager app is not too useful for VM SGS3 users, because it only knows that you are using a d2spr ROM and will try to get you to update when an update is available, not realizing that you need to modify the asserts first. To clarify, dirty flashing in our scenario means that you are running a ROM, let's say Carbon nightly 11/7/2013 build, and want to flash the 11/8/2013 nightly build-you need to download the 11/8 build, modify, and then you can flash the .zip without wiping anything. He gave good advice about dalvik-cache and cache wiping as well-it never hurts. If you are so inclined, you can wipe those both before and after. Nowadays, however, ROM design is intelligent enough that a wipe of dalvik and cache will occur automatically if the developer thinks it is necessary, it will be included in the code for the ROM.
    As far as kernel flashing goes, you just need to be aware that if you like a certain kernel, you will have to re-flash it every time you update a ROM or change ROM's, as the built-in kernel for each ROM will automatically flash and override the current kernel. This is similar to MopedRyder's APN fixes as well-flash every time. However, GApps only need to be flashed once if you intend to stay on the same ROM and just update on the nightlies (or "semi-nightly" like I do-I am a self-admitted flashaholic, but I don't see the need to flash every single nightly, more like just once or twice a week with Carbon since it is so reliable across all builds) This is where TWRP is really nice, because you can queue up to ten different .zip files for flashing in one session. I typically queue, in this order: updated ROM .zip, dkp kernel, APN fix #1 and then flash away!
    WayneMC likes this.
  22. struckn

    struckn Android Expert
    VIP Member Thread Starter

    Correct. The goal is to release nightly versions (even if they don't come out every single night they are still called "nightlies"), fix problems with each successive build, and then eventually release a "stable" version once the bugs have been worked out. Flashing junkies or people who are very technically inclined will basically function as testers for each build in order to help identify problems so that they can be corrected in later builds. I have not yet experienced any major problems when running nightlies, they are usually stable enough for my purposes; some people experience WiFi issues, camera issues, data issues, etc., with certain builds based on what I have read in other forums. This is why following the various forums is a good idea, I figure let other people report what problems they are having and then decide which builds to flash and which builds to stay away from. This is especially true of Cyanogen, as some of their recent builds are rock-solid, and others have very funky issues for some users.
  23. XAL2

    XAL2 Android Enthusiast

    Do you have a link to the version of twrp that you are using? I wouldn't mind being able to queue what I want to flash. Also how to install it? But okay everything that you are saying makes sense. Thank you for the response.
  24. struckn

    struckn Android Expert
    VIP Member Thread Starter

    Here is the link: Techerrata Downloads - Browsing d2spr; scroll to the bottom of the list (highest build number equals most recent build, and you will always want the most recent build when it comes to recoveries), choose the .tar version of build number, (most recent build as of this writing) and flash via Odin. This is a touch-based recovery, and very intuitive; if you are coming from a version of CWM that requires use of volume buttons and power buttons, I think you will like the interface better. There is also a .img file for those that know how to push a recovery using the command shell, but if the command is typed slightly wrong the possibility exists to do bad things to your phone, so I definitely prefer Odin as a more "foolproof" installation method.
    WayneMC likes this.
  25. peter counias

    peter counias Android Enthusiast

    need help flashed omnirom an deactivated my phone prl say 1 can anyone help?

Samsung Galaxy S3 Forum

The Samsung Galaxy S3 release date was May 2012. Features and Specs include a 4.8" inch screen, 8MP camera, 1GB RAM, Exynos 4412 Quad processor, and 2100mAh battery.

May 2012
Release Date

Share This Page