• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Root I want to bring CyanogenMod to the Samsung Galaxy Centura, is it cool to ask for help?

Hey folks. I have an interest in porting more Open-Source ROMs to affordable, accessible, preferably prepaid phones. had been been experimenting with porting CyanogenMod and Replicant to non-official devices for a while on the ZTE Force and the LG Optimus Logic, when my buddy came over with his new Samsung Galaxy Centura, took a glance at it, and realized I had been making my own life way harder because this device had almost none of the complications that had arisen in my previous attempts to port. It was pretty exciting. I'd like to port CyanogenMod to this phone, and if possible even gain official support.

//removed IndieGoGo stuff which was no longer relevant.

I've created a website where I'm putting all the components of the ROM as they are developed. Right now I have a working recovery(CWM v6.0.36), a stock recovery, a kernel which will build with CyanogenMod, a stock kernel, and I've nearly got a ROM based on CyanogenMod 4.2.2. You have to flash using Odin or Heimdall, but I'll make a flashable zip soon(but I think you'll still have to flash the recovery using Odin or Heimdall).

Currently Finished:
CWM Recovery
Kernel
system.img(Still being tweaked, but close enough to done for the adventurous)
userdata.img

CyanogenMod on the Centura

I'm still going to keep an eye on this thread.
 
  • Like
Reactions: franklesby
I appreciate your support. I'll have a phone to work with on Tuesday, hopefully I'll have some luck with the IndieGoGo thing. I think it's crazy that there are so few inexpensive phones that work with CyanogenMod. Who wants to pay 2-400 bucks for a phone and turn around to risk bricking it? Newbies aren't going to do that. Nah, I think the world needs a burner that can run a recent CyanogenMod for people to learn on. People can get a Centura in a convenience store for like 50 bucks. Seems nearly ideal to learn on.
 
  • Like
Reactions: franklesby
Upvote 0
It's an MSM7625A-based phone. The closest one with an official port is the LG Optimus Dynamic which is supported by CyanogenMod 9. I will be able to start with that tree, but it does have some differences from that hardware, in particular the Dynamic, I believe, uses a Broadcom Wi-Fi chipset, but the Centura I know uses the Ath6kl Wi-Fi chipset. But very doable. Thanks for your contribution.
 
  • Like
Reactions: franklesby
Upvote 0
That's totally why I've started working on the CM port. I think that if more people could try Android modding on a phone that costs less than 50 bucks, a huge barrier to entry could be removed. I'll keep working on this for as long as I have access to the phone, but for right now I have to prioritize paying gigs. If the crowdfunding campaign succeeds it will be my full time job for at least a month, which will be plenty of time for me to produce a stable ROM and submit a version to the official project for approval.
 
  • Like
Reactions: franklesby
Upvote 0
No man, I've got a bunch of paying gigs right now and I need to take them to keep my internet on. I'm doing it in my free time, but I haven't got much of that right now. I'll have some more during the weekend. If you want to follow along, I'm going to be pushing the trees here https://github.com/cmotc I guess today, but not right now because I've been working since 5:30 this morning and I need to get a some sleep.
 
Upvote 0
Doesn't seem like crowdfunding is going to work out, but I'm making some progress on the ROM anyway. I might have something functioning in the morning, for now, if you want to try it you can build from source by adding the manifest file to your .repo/local_manifests folder.

from the root of your CyanogenMod source code

wget -O .repo/local_manifests/SCH-S738YBATFN.xml https://raw.githubusercontent.com/c...fests_SCH-S738CBTFN/master/SCH-S738YBATFN.xmlhttps://github.com/cmotc/manifest_sch-S738c/blob/master/SCH-S738YBATFN.xml
 
  • Like
Reactions: franklesby
Upvote 0
.img files for the version I'm testing now. If you want to use them, you'll need to flash them using dd within the terminal. The recovery layout is pretty easy to get at on this phone though, with just su -c "cat /cache/recovery/last_log" you can find this information:

[collecting table information] recovery filesystem table
=========================
0 '/tmp' 'ramdisk' '(null)' '(null)' 0
1 '/boot' 'emmc' '/dev/block/mmcblk0p8' '(null)' 0
2 '/cache' 'ext4' '/dev/block/mmcblk0p17' '(null)' 0
3 '/data' 'ext4' '/dev/block/mmcblk0p18' '(null)' -16384
4 '/misc' 'emmc' '/dev/block/mmcblk0p21' '(null)' 0
5 '/recovery' 'emmc' '/dev/block/mmcblk0p12' '(null)' 0
6 '/sdcard' 'vfat' '/dev/block/mmcblk1p1' '/dev/block/mmcblk1' 0
7 '/system' 'ext4' '/dev/block/mmcblk0p16' '(null)' 0
8 '/persist' 'ext4' '/dev/block/mmcblk0p11' '(null)' 0
9 '/efs' 'ext4' '/dev/block/mmcblk0p19' '(null)' 0
10 '/modem' 'ext4' '/dev/block/mmcblk0p3' '(null)' 0
11 '/hidden' 'ext4' '/dev/block/mmcblk0p22' '(null)' 0
12 '/param' 'ext4' '/dev/block/mmcblk0p13' '(null)' 0

Still not ready for a flashable zip yet, but progress is being made. Test at your own risk.
 
Upvote 0
I should add that this is *not* regular CyanogenMod, this is Replicant 4.2 with some backports, one library replaced, and necessary evils that aren't usually included with Replicant, which makes it more-or-less CyanogenMod 10.2. The reason for this is primarily because it is what I already had downloaded, but I really think it won't be hard to do ports based on my trees. The location of the manifest backup has changed, though, so to download it go to the root of your source code and execute:

wget -O .repo/local_manifests/SCH-S738YBATFN.xml https://raw.githubusercontent.com/c...fests_SCH-S738CBTFN/master/SCH-S738YBATFN.xml
 
Upvote 0
Well it was such an easy target. It supports download mode, I know more-or-less how Ath6kl works, it just kinda sticks out there like a sore thumb. I've not got a working system.img yet, after the first few test builds completed(you definitely don't want to use that one) my computer started overheating and shutting down before it could finish, but I can build recoveries and kernels like nobody's business. Super annoying, I've even tried to do it headless. Unfortunately this laptop is the best of a bad situation for this project(all the other machines I own have SSD's with limited space and the CyanogenMod source is about 33 GB) In about an hour I'll have access to EC2 for a while so I'm going to try and build it up there. I figure I can use that until I get a better home machine.
 
Upvote 0
#!/bin/bash
echo "Install the Ardroid SDK to continue https://developer.android.com/sdk/index.html?hl=i"
read -p "Press any key after is finished installing"

echo "Installing needed Packages"
sudo apt-get update
sudo apt-get install bison build-essential curl flex git gnupg gperf libesd0-dev libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-6-jdk openjdk-6-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev g++-multilib gcc-multilib lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev openjdk-7-jdk

echo "Creating the bin and source directories"
mkdir -p ~/bin
PATH=~/bin:$PATH
echo 'if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi'>>~/.profile
mkdir -p ~/android/system

echo "Downloading the Cyanogenmod Source Repositories"
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
cd ~/android/system/
repo init -u https://github.com/CyanogenMod/android.git -b cm-11.0
repo sync
wget -O .repo/local_manifests https://raw.githubusercontent.com/c...fests_SCH-S738CBTFN/master/SCH-S738YBATFN.xml
cd ~/android/system/vendor/cm
./get-prebuilts
cd ~/android/system
source build/envsetup.sh
lunch cm_schS738c
read -p "finished"

"Installing Cyanogenmod to your device, please plug it in before continuing"
read -p "Press any key to continue"
mka
read -p "press any key to exit"
 
Upvote 0
That looks good, except earlier I mistook the behavior of wget slightly. My fault. Here's a version with the minor correction, it just needs a filename to save it under.

#!/bin/bash
echo "Install the Ardroid SDK to continue https://developer.android.com/sdk/index.html?hl=i"
read -p "Press any key after is finished installing"

echo "Installing needed Packages"
sudo apt-get update
sudo apt-get install bison build-essential curl flex git gnupg gperf libesd0-dev libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-6-jdk openjdk-6-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev g++-multilib gcc-multilib lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev openjdk-7-jdk

echo "Creating the bin and source directories"
mkdir -p ~/bin
PATH=~/bin:$PATH
echo 'if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi'>>~/.profile
mkdir -p ~/android/system

echo "Downloading the Cyanogenmod Source Repositories"
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
cd ~/android/system/
repo init -u https://github.com/CyanogenMod/android.git -b cm-11.0
repo sync
wget -O .repo/local_manifests https://raw.githubusercontent.com/c...fests_SCH-S738CBTFN/master/SCH-S738YBATFN.xml
cd ~/android/system/vendor/cm
./get-prebuilts
cd ~/android/system
source build/envsetup.sh
lunch cm_schS738c
read -p "finished"

"Installing Cyanogenmod to your device, please plug it in before continuing"
read -p "Press any key to continue"
mka
read -p "press any key to exit"

The other thing, though, is that mka doesn't install the ROM on your phone, it just compiles it into a usable image. CyanogenMod creates a zip file that can be used to install via ClockWorkMod Recovery, which will be available in the out/ directory, and Android creates a set of img files(which get put in the zip) which can be flashed in Download(ODIN) mode using Heimdall. Both are valid ways of installing the ROM. The zip/CWM version is generally the one people prefer. Instructions for flashing CWM v6.0.36 are on the site and in my other thread.
 
Upvote 0

BEST TECH IN 2023

We've been tracking upcoming products and ranking the best tech since 2007. Thanks for trusting our opinion: we get rewarded through affiliate links that earn us a commission and we invite you to learn more about us.

Smartphones