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

[ROM][UNOFFICIAL][5.1.1]CyanogenMod 12.1 for Samsung Galaxy J5 (2015)

What is the most used Samsung Galaxy J5 (2015) variant?

  • SM-J500FN

    Votes: 144 25.9%
  • SM-J500F

    Votes: 134 24.1%
  • SM-J500G

    Votes: 43 7.7%
  • SM-J500M

    Votes: 109 19.6%
  • SM-J500H

    Votes: 95 17.1%
  • SM-J500Y

    Votes: 7 1.3%
  • SM-J500N0

    Votes: 3 0.5%
  • SM-J5008

    Votes: 12 2.2%
  • SM-J5007

    Votes: 8 1.4%

  • Total voters
    555
Search This thread

Nick Verse

Senior Member
May 29, 2014
411
2,250
Thessaloniki
logo.png

CyanogenMod 12.1 for Samsung Galaxy J5 built from source

DISCLAIMER
Code:
Your warranty is now void.
I'm 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
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.

--------------------------------------------------------------------------
Bugs and changelogs are in 2nd post !
--------------------------------------------------------------------------

Real Battery Life Calculations
Talk Time: Aprox. 18 hours (3G)
Music Playback: Aprox. 62 hours
Video Playback: Aprox. 13 hours
Screen On Time (Idle CPU): Aprox. 20 hours
Screen On Time (Full load CPU): Aprox. 6-8 hours (user-dependent)
Deep Sleep only: Aprox. 70 hours


--------------------------------------------------------------------------

Installation

1. Make sure you have updated to stock 5.1.1.
2. Download the ROM from the direct link for your device in the Downloads section below.
3. Download 5.1.1 ARM GAPPS.
4. Transfer the zip files to your SD card.
5. Reboot to recovery mode. ( Vol UP + Home + Power )
Note: It is highly recommended to use TWRP Recovery
6. Optional: Do nandroid backup.
7. Full wipe /system, /internalsd, /data, /cache, as well as the Android folder from your external SD.
Note: You will have to format data as well if you want to use data encryption
8. Install CM zip and GApps zip.
9. Reboot to system.
10. Setup your device.
Enjoy!

------------------------------------------------------------------

Downloads
SM-J500FN
SM-J500F
SM-J500G
SM-J500M
SM-J500H
SM-J500Y
SM-J5008
SM-J5007

------------------------------------------------------------------​


Source​
Check out the ROM Source available on GitHub.
Feel free to submit any fixes, Just remember to give proper credits when using other people's source.
Kernel Source
---------------------------------------------------------------------------------------------------------------------------------------

Credits
@jackeagle for kernel maintaining.
@TheWisp for the awesome InputDisabler.
@aapav01
@ganesh varma for helping when development needed support.
And last the awesome J500H testing team we have in Hangouts, for being there all this time.​

XDA:DevDB Information
CyanogenMod 12.1, ROM for the Samsung Galaxy J5

Contributors
Nick Verse, ganesh varma, #Henkate
Source Code: https://github.com/Galaxy-J5

ROM OS Version: 5.1.x Lollipop
ROM Kernel: Linux 3.10.x
ROM Firmware Required: Lollipop Modem/Baseband

Version Information
Status: Stable
Current Stable Version: 4.0.0
Stable Release Date: 2016-09-23

Created 2016-09-25
Last Updated 2017-04-29
 

Attachments

  • Screenshot_2016-09-29-05-24-09.jpg
    Screenshot_2016-09-29-05-24-09.jpg
    42.3 KB · Views: 18,864
  • Screenshot_2016-09-29-01-33-47.jpg
    Screenshot_2016-09-29-01-33-47.jpg
    65.3 KB · Views: 18,552
  • Screenshot_2016-09-29-01-40-34.jpg
    Screenshot_2016-09-29-01-40-34.jpg
    72.1 KB · Views: 18,565
  • Screenshot_2016-09-29-01-37-10.png
    Screenshot_2016-09-29-01-37-10.png
    18.3 KB · Views: 18,039
  • Screenshot_2016-09-29-01-36-03.png
    Screenshot_2016-09-29-01-36-03.png
    24.2 KB · Views: 17,691
  • Screenshot_2016-09-29-01-36-45.png
    Screenshot_2016-09-29-01-36-45.png
    68 KB · Views: 17,444
  • Screenshot_2016-09-29-01-39-15.png
    Screenshot_2016-09-29-01-39-15.png
    87.1 KB · Views: 17,132
  • Screenshot_2016-09-29-01-39-51.png
    Screenshot_2016-09-29-01-39-51.png
    63.7 KB · Views: 16,942
  • Screenshot_2016-09-29-01-38-15.png
    Screenshot_2016-09-29-01-38-15.png
    100.7 KB · Views: 16,877
  • Screenshot_2016-09-29-10-36-42.png
    Screenshot_2016-09-29-10-36-42.png
    29.2 KB · Views: 16,649

Nick Verse

Senior Member
May 29, 2014
411
2,250
Thessaloniki
Bugs and Issues


Code:
- No audio through FM Radio.
Let me know if you find other bugs!

--------------------------------------------------------------------------------------------------------------------------------------------

Submitting Bug Reports:
If you find some bugs, report it with logs and detailed information of the issue.
Do not report bugs if custom tweak is done.
Do not report bugs if Xposed is installed!


---------------------------------------------------------------------------------------------------------------------------------------------


Changelog:

Code:
[B]October 11, 2016[/B]
- Final build.
- Fixed all issues with GPS and Wi-Fi.
- Added new frequencies that Samsung had not included for CPU. (200MHz-1401MHz)
- Kernel stability updates.
- Audio low-latency porting to CM.
- Audio FX made the right way. (Audio is loud and crispy now)
- Abandoning FM project to work for CM13. (No audio)
- Merged with latest CM Changes.

[B]September 28, 2016[/B]
- Fixed lagging issues.
- Imported SIP/voIP connection features into ROM. (Needs testing)
- Enabled DSP audio processing by default.
- Disabled GPS logging that was ovehauling our logcats.

[B]September 23, 2016[/B]
- Fixed reboot issues.
- Fixed lags from not needed libraries and kernel commits.
- Fix rmnet (data) issues.
- Dalvik/ART optimizations.
- Removed extra governors/io schedulers. 
(The provided governors in OC kernels for J5 are for Exynos devices, 
so they need extra configuration to be adapted to Snapdragon devices.
Until then, we will use the stock and trusted ones, 
but keep overclocking to be enabled by a userspace application).
- Many kernel fixes.
- Framework fixes.
- Audio enhancements.
- Added audio echo cancellation support (AEC) for in-calling audio.
- Added Wifi-Direct and Screen Cast/HDMI support in kernel. (Needs testing)
- Added Volume wake and Home button wake support. 
(You can enable/disable these features from Settings->Buttons)
- Merged with latest CM Changes.

[B]September 8, 2016[/B]
- Removed On-Screen-Buttons implementation.
(Currently we don't have an implementation for hard disabling touch-keys in kernel.)
- Kernel fixes.
- Attempt to fix reboot issues and data problems for [B]G[/B] and [B]H[/B] variant.
- Removed KernelAdiutor

[B]September 2, 2016[/B]
- Added OC in kernel and fixes for frequency ladder. (0.2 to 1.8 GHz)
- Added a lot of governors and I/O schedulers.
- Added KernelAdiutor as a built-in application for tweaking parameters.
- Added DayDream support by default. 
(It is a screensaver feature for Android. 
You can choose your preference in Settings -> Display & lights -> DayDream)
- PowerHAL fixes.
- Disabled compression of camera images, set quality of Encoder to 100% and increase memCap *4. 
(Image sizes are larger, and have better quality)
- Added On-Screen-Buttons implementation similar to qemu.hw.mainkeys=1. 
(You can use software keys for Back/Menu/Options, by enabling it on the first setup screen. 
Main keys will be permanently disabled)
- Merged with latest CM Changes.

[B]August 20, 2016[/B]
- Excluded InputDisabler from build. (Not needed from now on as we found the root of the cause)
- Screen on/off lag reduction. (WIP)
- Fixed SD Card issues and corresponding folder creations on boot.
- Added option to secure unmount external SD before removal.
- Added option to record in-call voice for all regions.
- CPU speed/responsiveness optimizations.
- SELinux denial fixes for other variants too.
- Switched to SELinux enforcing, minized kernel messages and ADB secure (needs su command from now on).
- Optimized latency for audio HAL. No drop-outs from now on.
- Audio effect optimizations. Sound is more crisp.
- Excluded zRAM.
  (zRAM caused not needed CPU overhead and heat issues when on Full Brightness+Mobile Data+GPS)
- TWRP bug-fixes.
- Kernel fixes.
- Merged with latest CM Changes.
- Updated stable release name to 2.0.0

[B]July 22, 2016[/B]
- Fixed small freeze on screen unlock.
- Fixed Auto Display Color Calibration.
- Disabled Auto Brightness feature. (No light sensor for J5)
- Raised the perceived loudness by 4db on headphones, and 4db on speaker output.
- Fixed audio minor drop-outs when exiting deep sleep.
- Fixed some firmware link typos.
- Enabled zRAM. (512MB)
- Merged with latest CM Changes.

[B]July 15, 2016[/B]
- Fixed NFC.
- Fixed Keymaster firmware detection.
- Merged with latest CM Changes.

[B]July 14, 2016[/B]
- Fixed moving apps to external SD.
- Added option to choose the default install location of applications in Settings.
- Optimized haptic feedback.
- Fixed front flash camera latency.
- Merged with latest CM Changes.
[B]
June 23, 2016[/B]
- Optimized CPU usage.
- Fixed SELinux Denials.
- Fixed audio latency and quality.
- Fixed QR Scanner display errors and camera related problems.
- Kernel updates.
- Merged with latest CM Changes.
--------------------------------------------------------------------------------------------------------------------------------------------------
Tips :
To activate Developer settings : Settings -> About phone -> press Build number 7 times.
To activate 3-way reboot go to Developer settings and select "Advanced reboot".
Root is included and disabled by default, enable it from Developer settings - Root access.
BusyBox is included.

LiveDisplay is a feature for adapting display colors for night usage.
You can enable it by turning on GPS and data/wifi for some seconds.
Then go to Settings -> Display & lights -> LiveDisplay -> Display mode and change from off to automatic.
Then your phone will know when to adjust your display for night usage through your local GMT zone.
You can also adjust Color Temperature for Day/Night modes.
Screen Cast is a feature to cast your screen to a Smart TV.
Enable Wi-Fi and check Settings->Display & lights->Cast screen->Enable wireless display, connect both devices, and play!​
 
Last edited:

abhijeet1331

Senior Member
Oct 17, 2013
228
62
Multi Window Support - J500F

Hi @Nick Verse

First of all, Thank You so much for this awesome rom..

I just have one request..

I'm using J500F (Indian Version)..

Can you add Multi Window Support in the next release of this rom for J500F..??

Thanks in advance.. :)
 
  • Like
Reactions: aarush.chaurasiya

y-c-s

Member
Sep 9, 2014
36
14
Bucharest
Hi there
Who can help me to understand and solve the following situation: i want to add spelling romanian language to stock cm12.1 keyboard. Romanian language is available only just as language, for entire operation system, not for spelling purposes (is not in the spelling languages list when i try to add it). So, how can i add it whitout installing another app like Google Keyboard? Is possible?

I use Nicke Verse CM12.1 version from 15.07 on a J500FN.

Best!
 

Nick Verse

Senior Member
May 29, 2014
411
2,250
Thessaloniki
Hi there
Who can help me to understand and solve the following situation: i want to add spelling romanian language to stock cm12.1 keyboard. Romanian language is available only just as language, for entire operation system, not for spelling purposes (is not in the spelling languages list when i try to add it). So, how can i add it whitout installing another app like Google Keyboard? Is possible?

I use Nicke Verse CM12.1 version from 15.07 on a J500FN.

Best!
Propably CyanogenMod official developers didn't add the spelling feature for Romanian language in the official repository! You can contribute in GitHub on your own if you want, or PM a Developer!
 
  • Like
Reactions: GDM95

Nick Verse

Senior Member
May 29, 2014
411
2,250
Thessaloniki
Hi @Nick Verse

First of all, Thank You so much for this awesome rom..

I just have one request..

I'm using J500F (Indian Version)..

Can you add Multi Window Support in the next release of this rom for J500F..??

Thanks in advance.. :)

Multi-Window support uses Android API 24, which means you will have to wait for Android 7.0! :)
 

Nick Verse

Senior Member
May 29, 2014
411
2,250
Thessaloniki
Audio Latency

We have noticed some longer than usual audio delays a long time ago in CM builds from source.
The main concept is to make the builds as fast responding as possible.

- Currently the audio.primary.msm8916 module is a proprietary blob, because without it in-call audio breaks. (related to proprietary Samsung RIL blobs)
- Disabled AUDIO_OUTPUT_FLAG_FAST, as it is constantly denied in logs even when set in native 44100 sampling rate.

Sources:
https://github.com/Galaxy-J5/android_device_samsung_j5-common

If anyone is familiar with building sources and is aware of the issue, please contact me.
 
Last edited:

#Henkate

Senior Member
Feb 1, 2012
3,485
3,121
26
フェアリーテイル
@Nick Verse

Thank you for your awesome work! :)
I think I'll test the new version later.

By the way, I think you should mention in OP how to download, because some people use the old XDA theme (2010), including me (but I know how to download) and they can't see the project tabs unless they switch to at least 2013 theme.

EDIT:
@Nick Verse : When you go to downloads tab, there is download link. You can put it in OP as direct download link, but people will still have to switch to at least 2013 theme. Maybe you can put the link of downloads tab too. It's your choice :D

PS: limited to thanks button -_-
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 57
    logo.png

    CyanogenMod 12.1 for Samsung Galaxy J5 built from source

    DISCLAIMER
    Code:
    Your warranty is now void.
    I'm 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
    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.

    --------------------------------------------------------------------------
    Bugs and changelogs are in 2nd post !
    --------------------------------------------------------------------------

    Real Battery Life Calculations
    Talk Time: Aprox. 18 hours (3G)
    Music Playback: Aprox. 62 hours
    Video Playback: Aprox. 13 hours
    Screen On Time (Idle CPU): Aprox. 20 hours
    Screen On Time (Full load CPU): Aprox. 6-8 hours (user-dependent)
    Deep Sleep only: Aprox. 70 hours


    --------------------------------------------------------------------------

    Installation

    1. Make sure you have updated to stock 5.1.1.
    2. Download the ROM from the direct link for your device in the Downloads section below.
    3. Download 5.1.1 ARM GAPPS.
    4. Transfer the zip files to your SD card.
    5. Reboot to recovery mode. ( Vol UP + Home + Power )
    Note: It is highly recommended to use TWRP Recovery
    6. Optional: Do nandroid backup.
    7. Full wipe /system, /internalsd, /data, /cache, as well as the Android folder from your external SD.
    Note: You will have to format data as well if you want to use data encryption
    8. Install CM zip and GApps zip.
    9. Reboot to system.
    10. Setup your device.
    Enjoy!

    ------------------------------------------------------------------

    Downloads
    SM-J500FN
    SM-J500F
    SM-J500G
    SM-J500M
    SM-J500H
    SM-J500Y
    SM-J5008
    SM-J5007

    ------------------------------------------------------------------​


    Source​
    Check out the ROM Source available on GitHub.
    Feel free to submit any fixes, Just remember to give proper credits when using other people's source.
    Kernel Source
    ---------------------------------------------------------------------------------------------------------------------------------------

    Credits
    @jackeagle for kernel maintaining.
    @TheWisp for the awesome InputDisabler.
    @aapav01
    @ganesh varma for helping when development needed support.
    And last the awesome J500H testing team we have in Hangouts, for being there all this time.​

    XDA:DevDB Information
    CyanogenMod 12.1, ROM for the Samsung Galaxy J5

    Contributors
    Nick Verse, ganesh varma, #Henkate
    Source Code: https://github.com/Galaxy-J5

    ROM OS Version: 5.1.x Lollipop
    ROM Kernel: Linux 3.10.x
    ROM Firmware Required: Lollipop Modem/Baseband

    Version Information
    Status: Stable
    Current Stable Version: 4.0.0
    Stable Release Date: 2016-09-23

    Created 2016-09-25
    Last Updated 2017-04-29
    40
    Bugs and Issues


    Code:
    - No audio through FM Radio.
    Let me know if you find other bugs!

    --------------------------------------------------------------------------------------------------------------------------------------------

    Submitting Bug Reports:
    If you find some bugs, report it with logs and detailed information of the issue.
    Do not report bugs if custom tweak is done.
    Do not report bugs if Xposed is installed!


    ---------------------------------------------------------------------------------------------------------------------------------------------


    Changelog:

    Code:
    [B]October 11, 2016[/B]
    - Final build.
    - Fixed all issues with GPS and Wi-Fi.
    - Added new frequencies that Samsung had not included for CPU. (200MHz-1401MHz)
    - Kernel stability updates.
    - Audio low-latency porting to CM.
    - Audio FX made the right way. (Audio is loud and crispy now)
    - Abandoning FM project to work for CM13. (No audio)
    - Merged with latest CM Changes.
    
    [B]September 28, 2016[/B]
    - Fixed lagging issues.
    - Imported SIP/voIP connection features into ROM. (Needs testing)
    - Enabled DSP audio processing by default.
    - Disabled GPS logging that was ovehauling our logcats.
    
    [B]September 23, 2016[/B]
    - Fixed reboot issues.
    - Fixed lags from not needed libraries and kernel commits.
    - Fix rmnet (data) issues.
    - Dalvik/ART optimizations.
    - Removed extra governors/io schedulers. 
    (The provided governors in OC kernels for J5 are for Exynos devices, 
    so they need extra configuration to be adapted to Snapdragon devices.
    Until then, we will use the stock and trusted ones, 
    but keep overclocking to be enabled by a userspace application).
    - Many kernel fixes.
    - Framework fixes.
    - Audio enhancements.
    - Added audio echo cancellation support (AEC) for in-calling audio.
    - Added Wifi-Direct and Screen Cast/HDMI support in kernel. (Needs testing)
    - Added Volume wake and Home button wake support. 
    (You can enable/disable these features from Settings->Buttons)
    - Merged with latest CM Changes.
    
    [B]September 8, 2016[/B]
    - Removed On-Screen-Buttons implementation.
    (Currently we don't have an implementation for hard disabling touch-keys in kernel.)
    - Kernel fixes.
    - Attempt to fix reboot issues and data problems for [B]G[/B] and [B]H[/B] variant.
    - Removed KernelAdiutor
    
    [B]September 2, 2016[/B]
    - Added OC in kernel and fixes for frequency ladder. (0.2 to 1.8 GHz)
    - Added a lot of governors and I/O schedulers.
    - Added KernelAdiutor as a built-in application for tweaking parameters.
    - Added DayDream support by default. 
    (It is a screensaver feature for Android. 
    You can choose your preference in Settings -> Display & lights -> DayDream)
    - PowerHAL fixes.
    - Disabled compression of camera images, set quality of Encoder to 100% and increase memCap *4. 
    (Image sizes are larger, and have better quality)
    - Added On-Screen-Buttons implementation similar to qemu.hw.mainkeys=1. 
    (You can use software keys for Back/Menu/Options, by enabling it on the first setup screen. 
    Main keys will be permanently disabled)
    - Merged with latest CM Changes.
    
    [B]August 20, 2016[/B]
    - Excluded InputDisabler from build. (Not needed from now on as we found the root of the cause)
    - Screen on/off lag reduction. (WIP)
    - Fixed SD Card issues and corresponding folder creations on boot.
    - Added option to secure unmount external SD before removal.
    - Added option to record in-call voice for all regions.
    - CPU speed/responsiveness optimizations.
    - SELinux denial fixes for other variants too.
    - Switched to SELinux enforcing, minized kernel messages and ADB secure (needs su command from now on).
    - Optimized latency for audio HAL. No drop-outs from now on.
    - Audio effect optimizations. Sound is more crisp.
    - Excluded zRAM.
      (zRAM caused not needed CPU overhead and heat issues when on Full Brightness+Mobile Data+GPS)
    - TWRP bug-fixes.
    - Kernel fixes.
    - Merged with latest CM Changes.
    - Updated stable release name to 2.0.0
    
    [B]July 22, 2016[/B]
    - Fixed small freeze on screen unlock.
    - Fixed Auto Display Color Calibration.
    - Disabled Auto Brightness feature. (No light sensor for J5)
    - Raised the perceived loudness by 4db on headphones, and 4db on speaker output.
    - Fixed audio minor drop-outs when exiting deep sleep.
    - Fixed some firmware link typos.
    - Enabled zRAM. (512MB)
    - Merged with latest CM Changes.
    
    [B]July 15, 2016[/B]
    - Fixed NFC.
    - Fixed Keymaster firmware detection.
    - Merged with latest CM Changes.
    
    [B]July 14, 2016[/B]
    - Fixed moving apps to external SD.
    - Added option to choose the default install location of applications in Settings.
    - Optimized haptic feedback.
    - Fixed front flash camera latency.
    - Merged with latest CM Changes.
    [B]
    June 23, 2016[/B]
    - Optimized CPU usage.
    - Fixed SELinux Denials.
    - Fixed audio latency and quality.
    - Fixed QR Scanner display errors and camera related problems.
    - Kernel updates.
    - Merged with latest CM Changes.
    --------------------------------------------------------------------------------------------------------------------------------------------------
    Tips :
    To activate Developer settings : Settings -> About phone -> press Build number 7 times.
    To activate 3-way reboot go to Developer settings and select "Advanced reboot".
    Root is included and disabled by default, enable it from Developer settings - Root access.
    BusyBox is included.

    LiveDisplay is a feature for adapting display colors for night usage.
    You can enable it by turning on GPS and data/wifi for some seconds.
    Then go to Settings -> Display & lights -> LiveDisplay -> Display mode and change from off to automatic.
    Then your phone will know when to adjust your display for night usage through your local GMT zone.
    You can also adjust Color Temperature for Day/Night modes.
    Screen Cast is a feature to cast your screen to a Smart TV.
    Enable Wi-Fi and check Settings->Display & lights->Cast screen->Enable wireless display, connect both devices, and play!​
    21
    heads up on CM 13!!

    Hello everyone!!
    After some discussion and suggestions from @Nick Verse i have used cm12.1's blobs and we now finally have a booted cm13 built from source. The UI is smooth without any lags,but still have to fix audio and ril's which will be easy to fix. I'll start a new devDB project once we feel like it's ready for testing. :D

    This is just to inform you guys as many of you are asking for cm13,so don't start asking for ETA's and stick around with cm12.1's latest build(which will be uploaded shortly). :good:
    20
    GApps/GPS Issue

    The errors will be fixed soon enough. We have identified the issue. Some patience I have to ask from you since we have tons of load on CM-13.0, and we are working constantly there.
    20
    Hello guys! I had some serious issues with my old PC setup, so I bought some new hardware to work.
    I'm also seeing some random reboots on my device, related to modem, and another issue about CPU frequencies staying on 1190 MHz constantly, which is a major problem.
    I will ask Ganesh Varma to build for our devices as soon as possible, because my SSD is limited to 110 GB, so I can't have both sources together.

    I am downloading the CM13 source right now to make new device trees from the beginning or fix the existing ones on GitHub.
    We will see, as Samsung has done serious changes from older version of Android to the new one.
    Thank you for your support!