• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

[ROM] [7.1.1] [NOUGAT] CyanogenMod 14.1 for Nexus 5 [CAF]

Not open for further replies.
Search This thread



About CyanogenMod:
CyanogenMod (pronounced sigh-AN-oh-jen-mod), is a customized, aftermarket firmware distribution for several Android devices (See above for supported devices & how to install CyanogenMod on said devices). Based on the Android Open Source Project, CyanogenMod is designed to increase performance and reliability over Android-based ROMs released by vendors and carriers such as Google, T-Mobile, HTC, etc. CyanogenMod also offers a variety of features & enhancements that are not currently found in these versions of Android.

CyanogenMod members or anyone else on this website is 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 the products you find here before flashing it! YOU are choosing to make these modifications, and if you point the finger at us for messing up your device, we will laugh at you. Your warranty will be void if you tamper with any part of your device / software.

If you have a repaired Nexus 5 this ROM may not boot on your device. Allegedly certain replacement display units / panels have issues with higher tick-rates. Read this thread for more information.

1. Make sure you're using the proper bootloader and radio version. Extract them from the latest Marshmallow factory image from Google and flash them via fastboot!
2. Update recovery [Recommended -> TWRP for hammerheadcaf. Recoveries for hammerhead work as well.]
3. Factory reset if coming from another ROM.
4. Install ROM
5. Install GApps (optionally) [Recommended -> Open GApps (arm) (7.1)]

What is CAF?
Code Aurora Forum, a Linux Foundation Collaborative Project, is a consortium of companies with projects serving the mobile wireless industry. The projects provide the tested code needed to bring innovative, performance optimized, open source based products to market and also serves as a staging area for code that is submitted to upstream projects such as the kernel and Android. Code Aurora Forum welcomes the participation of projects for multiple architectures. QuIC, as one of the members of Code Aurora Forum, provides support for Qualcomm hardware via the code it contributes to Code Aurora Forum. Code Aurora Forum also mirrors key upstream projects for use by the community.

Sources & Changes:
Source | Changes | CyanogenMod
Source | Changes | Device tree
Source | Changes | Kernel tree

  • Personal builds:
    ...my Google Drive

    Dependencies / local manifest:
    <?xml version="1.0" encoding="UTF-8"?>
      <project name="CyanogenMod/android_device_lge_hammerheadcaf" path="device/lge/hammerheadcaf" remote="github" />
      <project name="CyanogenMod/android_kernel_lge_hammerhead" path="kernel/lge/hammerhead" remote="github" revision="cm-14.1-caf" />
      <project name="CyanogenMod/android_device_qcom_common" path="device/qcom/common" remote="github" />
      <project name="myfluxi/proprietary_vendor_lge" path="vendor/lge" remote="github" />

...my CyanogenMod threads for the Google Nexus 5:
CM-12.x AOSP | CM-12.x CAF
CM-13.x AOSP | CM-13.x CAF
CM-14.x AOSP | CM-14.x CAF

Note to users: I'm not responsible if you brick your phone. See the disclaimer above.
Note to admins/moderators: I'm not a developer / contributor of CyanogenMod and not associated with Cyanogen, Inc. in any way. If this thread is inappropriate, please move/delete it.

XDA:DevDB Information
[ROM] [7.1.1] [NOUGAT] CyanogenMod 14.1 for Nexus 5 [CAF], ROM for the Google Nexus 5

ROM OS Version: 7.x Nougat

Version Information
Status: Nightly

Created 2016-08-24
Last Updated 2016-12-12
Last edited:


There is not an official download yet. However, I'll add links to sources and other things later and pm Perseus and you when I'm ready. Thanks a lot!
EDIT: Thanks @ simplicio11 :)


Senior Member
Mar 7, 2013
Los Angeles
There is not an official download yet. However, I'll add links to sources and other things later and pm Perseus and you when I'm ready. Thanks a lot!
EDIT: Thanks @ simplicio11 :)

Hi! Is this going to be a proper cyanogenmod ROM with theme manager and other features or like the other early builds that are basically similar to AOSP? In either case, thanks for taking out the time to keep this device alive! :good:


Hi! Is this going to be a proper cyanogenmod ROM with theme manager and other features or like the other early builds that are basically similar to AOSP? In either case, thanks for taking out the time to keep this device alive! :good:
Every CM build mainly uses CyanogenMod sources from their GitHub. That's what we currently have. It takes some time to implement all CM features into the new code base but yes, it will be a 'proper' CM ROM. Give it a few more months.

Could you try to implement kexec-hardboot patch? For Multirom usage ;)
Most likely never going to happen. Fork the project and do it yourself.
Last edited:


May 15, 2012
Thanks for your job!
The rom work fine but the camera is still broken in 02/10/16 release.


Aug 16, 2010
If you flash the ROM and Gapps in one-go, Settings app and Play services keep force-closing. Unlike other ROMs I cannot exit setup wizard to give them permissions.
Not open for further replies.

Top Liked Posts

  • There are no posts matching your filters.
  • 70
    Haven't tested thoroughly but first impressions are that previously experienced scrolling stutters on google+ are gone and Youtube video rotation and changing from fullscreen to regular is pretty smooth now. Thanks!
    This time I'm actually a bit proud of myself because the display abstraction layer is a beast. It took me about 8hs to nail it, here is how it went and it would be handled comparably at QCOM:

    There is that bug report and the bug is easily reproducible, which is good. You try to find out where it all starts, there is the kernel, HAL and framework (surfaceflinger). I initially suspected a framework bug because our chipset got dropped by QCOM and I saw they even reverted workarounds for hardware-bugs because hammerhead is now abandoned. That kind of lead to nothing. I also saw they cured a suspected framework-bug by a fix in the kernel where several mutex locks were in a bad order but that was not our bug. On the positive side, we have all these fixes on board as well now.

    So the HAL remains and I went through commit histories of 5 different branches, AOSP hammerhead, shamu and newer devices plus two current CAF branches. You can see where the old ass HH branch was left during stone-age. In newer HALs like hhcaf's they introduced some intelligence to layer handling and this is where our first-generation Snapdragon 800 fails. Interestingly it took QCOM 4 attempts to finally make their routines work.

    I started to analyse frame by frame and something was weird, hidden layers appeared visible. So I looked at frame by frame and layer by layer. Having our music player's track list for reliable testing was invaluable here, thanks for the hint whoever posted it here. I noticed that there are cached dropped layers that are not in the backgroud, very ugly, this is what's causing the visual lags. So I used the observed pattern to create a filter for the last but one layer that is supposed to be hidden.

    Because this error is very visible to the user, the QCOM engineer would open a ticket for the hardware team and have them check if it was a hw bug or limitation. In our case the answer would probably be it's a limitation of our hw revision. This would be good news for the engineer because his work was finished now. In this case a workaround like ours is fine; in the other case (and on showcase chipsets) he had to dig deeper and had to investigate why the layer was handled like it is.

    The rest was cleaning up and optimizations to minimize the scope and footprint of this patch. Basically we're rendering that single bad layer on the GPU while the rest of the layer in handled by HWC in the framebuffer cache.
    Please, no drama, it's all good.

    I cannot spend any more time trying to fix this. There is a bug in the chipset where the attempt to change the state of a clock happens during the retention phase on the target cpu. Krait does not like this and dies. First I removed the spinlock that deadlocks, then I ported an old fix by a QCOM engineer for us (Matt Wagantall and his wife were or or still are with Cyanogen, btw). I'm pretty sure this bug was fixed with the 801 version, our old Snapdragon 800 has a different kernel-space clock-handling. I have neither the skills or equipment to fix this, especially because I never had any issues with my device(s) for over 3 ys. now.

    On friday I started from zero with the latest available msm8974 branch, added our boad and device tree files plus all drivers. It felt like ****, it crashed in various places, it was a mess. Our ancient version is a *****, when I was playing with the Oneplus One that has the 801 revision, it was a walk in the park: pull CAF, enable all the fancy tweaks, rock stable. On hh I had to fight with everything.

    My learning is: it's not worth it. Given how long it took for LGE/Google to fix the N5 when it was new (daily kernel panics and everything) or Motorola with all of their amazing people working on the N6, I have to pull the plug now. I know what I'm capable of and I know what I will never be able to do. Just yesterday I learned how the facebook app kills our batteries and how QCOM messed up certain settings for the interactive governor but it's too late now.

    I am already late with my training for the coming bike racing season, I need to catch up quickly if I want to top my last season with 4 wins (my goal is 10 wins in 2017 ;)). Catch ya all later and I guess I'll at least keep sources up to date.
    Are these fixes going to be included in the oficial nightlies?
    The kernel and framework side is already there, I'll merge the HAL fix later today (I just cleaned it up earlier before the morning run to work ;)).
    I'm pretty sure I fixed HWC for us, butter is back and battery will be even better.

    Please throw some games, videos, youtube and general stuff at it. Look for anomalies and catastrophic failure.
    I thought, it's time to catch up since nightlies will start tonight. And if you believe it or not, hammerheadcaf N is smoother than the ****ing brand new Oneplus 3 with N that I own as well. In fact it's so smooth that it hurts! :)

    Please note: This is the very first build, I quickly threw together the SELinux policy updates so that cam works etc. Since we use camera HAL2 we do not even need the wonky framework hax. Google and CAF rock :)

    Have fun. I will push the sources to my git as always.


    Edit: HDR+, photoshere and all that works with Google's cam.