[ROM][OFFICIAL] CyanogenMod Nightly Builds for d2spr

Search This thread


Anyone who has the 14.1 nightly willing to share a mirror link? Thanks in advance.
Sep 16, 2014
I'm just going to post this here in case it helps someone else in the future.

On Cyanogenmod/LineageOS, my Sprint S3 had a problem where it would use the top microphone instead of the bottom microphone for voip calls, like Hangouts or Skype. The solution I found was to make these edits in the build.prop file and then reboot:


It now correctly uses the bottom mic in voip calls. However, there is no noise cancellation, so the other person will hear a quiet echo. Not loud enough to make it difficult to talk, but still noticeable. I'm not sure if it worked correctly during a Hangouts video call, but I didn't test that much. Also, changes to build.prop are reset whenever you flash an update, so you would have to make the edits again after each update.
  • Like
Reactions: PervyPrincess


Senior Member
Jun 18, 2009
I actually have cm-13.0-20161204-NIGHTLY-d2spr.zip if interested. I thought I lost mines so didn't pay attention to this thread.
Jun 20, 2014
I flashed the 2016-11-17 that @BehindTheMath kindly provided on my mom's phone and she just reported to me that the data doesn't work. Is this normal and if so does anyone happen to have a fix? Also @xdause @madbat99 do the nightlies you have, have working data? Maybe I would be better off flashing a 14.1 build and calling it a day...


Senior Member
Feb 5, 2013

Top Liked Posts

  • There are no posts matching your filters.
  • 191
    CyanogenMod is a free, community built distribution of Android which greatly extends the capabilities of your phone.

    #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.

    This is a nightly build of CM for the Galaxy S3 on Sprint.. It may cause all the things in the disclaimer to happen, or steal your girlfriend while you are busy flashing ROMs.

    Please submit a patch to our Gerrit instance if you want to help out.

    Install instructions:
    1. Install ClockworkMod Recovery for "d2spr". Sorry, CM cannot provide support for other recoveries, although they may work fine.
    2. Get the nightly build http://get.cm/?device=d2spr.
    3. Reboot into recovery and install.

    Do not report bug to the bug tracker if you are using this build.
    Regarding the 3.4 kernel

    I have seen some questions about just what the 3.4 kernel is and why the shift was made in the first place. I apologize in advance for the long-winded post. If you are looking for the punch line, skip to "Why should you care?" at the bottom of the post.

    Let me answer a few of these questions.

    First of all, the obvious, the 3.4 kernel is based on a Linux kernel that is about a year newer than the 3.0 edition. It's not an exaggeration that there's probably +1000 individual patches that separate the two linux kernels. Though, if you want specifics about these changes, you will have a hard time finding answers, partly because bug fixes get applied to the stable branches of both long-term-support linux mainline kernels (currently 3.0 and 3.4). So it's mostly new features that were adopted for 3.4 that were left out of 3.0, and even then, the vast majority is code that is not even compiled for our device. There are some things that are relevant: I know for a fact, for an example, that ext4 has evolved quite a bit between 3.0 and 3.4.

    Far more importantly for us: the lineage of this kernel is straight from Qualcomm not Samsung. Let me explain a bit what this means: The 3.0 kernel that we were using until recently came originally from the Samsung source drop (looks like some time later, Steve merged/rebased it on top of some qualcomm sources). The 3.4 kernel was developed a bit differently.

    A little aside, you may have heard of Codeaurora Forum (CAF) - it is an extension of Qualcomm, looks to be some fictitious quasi-partnership with some other non-contributors. I've heard stories that it's an elaborate way to get around the lawyers at QCOM that have a firm choke-hold on open sourcing most of the qcom code. This way, via CAF and under the sham of "venue to share code with their partners", qcom engineering code gets released to the public.

    If you poke around codeaurora you will find the MSM git repo. This is a kernel repo aimed at specifically developing android kernels for the MSM family of devices. It's a very active repository, with dozens of patches/bugfixes going in weekly. The quality of the patches is extremely high (from my limited understanding), obviously because qcom engineers have a very intimate (and often proprietary) understanding of their SOC.

    Right around the holidays in December, I started porting the tip of this tree, their "jb_2.5" branch (labels being mostly meaningless) for our device. The idea was, rather than doing mass merges with the existing samsung kernel (which wouldn't work anyways since the two kernels were worlds apart), be more surgical and only import samsung code if it was absolutely necessary. I think we managed to do this, by the way, and kept the vast vast majority of the msm code unpolluted, and samsung free (modulo perhaps camera, where we had very little choice except to mangle the msm v4l2 layer).

    At some point in January I had a booting kernel, and posted a screen-shot here on XDA. Before that thread got invaded and shut down, invisiblek (d2vzw) had joined the effort and we got the peripherals working (sound, wifi, bluetooth, hd playback, rear camera, front camera video, sensors, gps, fixed various panel glitches, usb etc). A couple of weeks ago we pitched the kernel to cyanogen who jumped on the idea, fixed the front camera snapshot and a few other bugs and the rest is where you guys come in. I should say that in porting this kernel, I (we) are standing on the shoulders on everyone else who committed patches to the old kernel. Obviously cyanogen, but also other CM contributors. In particular mkasick's kexec patches were an invaluable asset.

    Why should you care? The reason why QCOM devices are blessed with early ports of most CM builds, is because of CAF (and many motivated CM contributors, obviously). Not only does qcom share MSM kernel code via CAF, they also share sources for the android (userland ) components that speak with the kernel most directly - the HAL (hardware abstraction layer). If you poke around CAF you'll find "hardware/qcom/display" "hardware/qcom/audio" "hardware/qcom/media" (etc) repositories, all of which we are currently compiling (or are compiling repositories heavily based on these) for d2.

    As newer and newer devices hit the market, these repositories evolve and shift their focus on newer socs. I already see this, 8960 is no longer the focal point, there are a lot of 8974 patches going in, as well as lot of snapdragon 400/600 code that gets committed. This spells trouble for older devices, as QCOM stops supporting older devices on CAF, CM ports begin to die. This is why it is imperative to upgrade our kernel and keep up with the changes. If you want to see android 5.0, 6.0 or whatever on d2 we need to have a kernel that can speak with the most up-to-date HAL repositories on CAF. Devices with 3.0 kernels already are struggling and hacking up both their kernels and userland in order to be compatible with the HAL code on CAF. We, on the other hand, are sitting pretty, since at this time, we are one of few devices (if not the only one) that is running an almost pure CAF "jb_2.5" kernel, compatible with the very latest qcom HAL repos.

    So sit tight, and enjoy the process, if nothing else. If you want to be helpful, look up how to provide relevant debugging output (there's more to it than logcat), and post a detailed description of your problem along with the relevant log. You never know, maybe someone with time/interest/and skills is reading and can take a look. Also, don't assume that everyone can recreate these problems. I am using a kernel that's a bit different than the one in the current nightlies, but I can tell you I have not had a single freeze/random reboot in about a month on this kernel.

    Otherwise, jump back to M2 and enjoy it for what it is.
    I am so sick of people being DICKS on this thread. If you don't have a helpful benevolent answer, don't say anything at all. These answers have been answered in the past, yes, but that doesn't mean that EVERY SINGLE answer has to be said with an aura of smug bordering on prime-time fashionista. If you are one of these people (and I think you know who you are), then just shut the **** up. If someone has a question, why not try and improve the outcomes for ALL of us by offering REAL answers rather than clogging up the thread with bull**** disguised as smugness. What pisses me off more than anything is that I am having to sift through so many pages of argumentative, unhelpful smugness, that by the time I get to the end of it, I'm not only irate, but haven't accomplished anything. These are moments of my life that I will never get back.

    In summary, quit being douche bags, start being helpful. In fact, start living your lives this way fundamentally; we don't need more douche bags, the landfill is full.
    Apparently you only read my statement. Take at look at his statement and you tell me if the pure ignorance on his part doesn't demand this type of statement.

    You showed a pretty high degree of ignorance yourself. Let me spin you a little story. Back in 2008, I bought a G1. Pre-release. I was one of the first people to try the original root method when haykuro and crew cracked it. HARD bricked three phones in the process of testing the first custom roms (there was no odin or anything of the sort back then, and it was entirely possible to brick your phone in the most literal sense that our game has, it wouldnt turn on, it wouldnt bootloop. it was just dead.). I worked on the artwork for the very first themes. I made the first tutorial video for creating startup animations and bootscreens. I was here when the first beta versions of CM rolled off the compiler. I was here when cyanogen got the C&D letter (to which I wrote a scathing response before google clarified their position) which caused gapps to be separately packaged. I've been using it as my rom ever since, so I've got a pretty good handle on whats "well known" and what isnt.

    The fact that you say that it's "well known" that switching between versions will cause problems or bootloops is 100% false. As someone who has been through EVERY SINGLE VERSION OF ANDROID, I cant begin to count how many versions I've jumped between without issue. I havent had a solid bootloop on a device in ages. If I did, its a simple enough fix. But it's certainly not well known, nor is it guaranteed that either one of those things that you attribute to having a new version will happen. Every device will act differently in some aspects, simply due to installed applications, wipes, hardware anomalies, etc. Many will share common issues and flaws as commits get piled on in nightlies (the SVDO fix in tonight's nightly is a good example), but its not always guaranteed. I, for one, had no issues connecting to SVDO on the previous nightly, so the fix wouldnt really apply to me.

    Also, he might not be as experienced as some of the rest of us are, but he had the presence of mind to know a bootloop when he saw it, attempted to fix it the easy way by reflashing (and flashing other roms), and wound up having to go the long way home by using odin to stock the phone and start over. He then closed his statement by saying he'd come back in a month when its stable. This isnt any worse than Cartman from south park saying "screw you guys, i'm going home".

    Now if he had come in and blurted out "EHRMEGERD I FLASHED CYANOGENMODZ AND NOW MY PHONE IS STUCK FOREVER ON THE LOGO, I HATE YOU ALL, BUY ME A NEW PHONE", we might be having a different discussion. As it stands, someone with at least a baseline knowledge came in and told us about his personal experience with the latest unstable build. Fine. Thats not ignorance. Berating someone for being ignorant, while simultaneously ignoring that they're not ignorant and espousing so-called common knowledge and being completely wrong about it, is relatively obtuse.

    So next time you fly off the handle, remember that you're in a community that was founded by people who asked questions and shared our experiences. If you cant say something constructive or help someone along the way, perhaps its best to just not say anything. I'd have a post count in the millions if I spouted off at every single "stupid" post I've seen, every single issue that could have been solved in the search bar, or simply wasted my time in calling someone an idiot. But I kept my mouth shut and only really posted when I could offer a solution to someone or had meaningful (or funny) input on a situation. Maybe you are just having a bad day and felt the need to pipe up, I've read a lot of your posts and just exploding on someone seems a bit out of character. But seriously, before you call someone an idiot next time, consider finding a better way of doing things. You never know who the next great mind of the android community might be, but if we go around calling everyone names for things that we dont agree with, we may never be able to nurture that ability.
    New and enhanced:
    RIL framework is enhanced to support samsung and sprint changes
    external sdcard is back
    GPS fixes

    Camera is black and broken.
    audio is not enhanced for dual mics ( you may get feedback and echoing due to the fact we haven't merge d2 changes over to nexus4's qcom audio HAL)