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

Root Porting ClockWorkMod to the Kyocera Rise

Getting a code to unlock from VM as you suggest DOES NOT UNLOCK the bootloader.

It unlocks the phone to make it usable on other networks. Unlocking the bootloader itself requires lots of dev hacking time and knowledge with the Android OS.

VM is probably unlikely to directly give anyone an unlock code that allows their phones to be used with other carriers. If they did, they would take a hit on their bottom line (profit$ ;)), as people would come in to use their own phones instead of VM's phones. You'd have to find a good retailer that can do this for you. This should explain why VM's phones use CDMA, instead of GSM. The GSM phones use SIM cards, which can be easily unlocked to work on different carriers.

More on this here: Ask AC: What is 'unlocked'? | Android Central
 
i understand now on that. but what else can we do to unlock this phone? i mean almost everything has been done to try to unlock this phone. the only way is to try to get into the actual firmware or kernel and run checks in those places. idk if that can be done.
 
i have a thought. ik it may have been done and all but is it possible to have the sprint rise's bootloader on a vm rise. since the sprint rise bootloader has fastboot can it be used on our vm rise? hopefully this can be done so we can access fastboot
 
i have a thought. ik it may have been done and all but is it possible to have the sprint rise's bootloader on a vm rise. since the sprint rise bootloader has fastboot can it be used on our vm rise? hopefully this can be done so we can access fastboot

With my PM Rise I can access fastboot via adb reboot bootloader. Maybe you can too?
 
ive tried that method and it doesnt work. i done reboot bootloader and fasboot reboot and nothing happened. it just went straight into android
 
so i went and learned some things...
i went a found out EXACTLY how the loki bootloader exploit works.
I'm gonna give this a try but its gonna take some time (getting address for checksig() function)
 
awesome. that means custom kernels can work with this and we can get a custom recovery. once that happens that means we can flash roms and hopefully bypass the firmwares locks. is it possible to have custom firmware on these phones
 
perfect which leads me to this next one. i have an optimus q and it was on its stock rom. i had no cwm installed on it and all. i downloaded a recovery image and used a terminal to boot into the recovery on my sdcard. can the same process be used with these phones
 
I would thinks so but I'm not 100% sure. If the device has an unbrick method it wouldn't hurt to try(as long as you can get to download mode)
 
my thoughts is that the firmware doesnt touch the sdcard. otherwise my q would have bricked. so is it a possibility for a method like this.
 
problem. i looked into the bootloader for vm rise and it says unknown. what can someone do if you cant unlock something that is unknown?
 
what can someone do if you cant unlock something that is unknown?

I would think finding away to flash the Sprint firmware to the VM Rise, so then it would have its boot loader and have fastboot access.
Kyocera needs to release an unbrick software like LG, Samsung, HTC, and I think Sony has.
 
due to kyocera's stubborness from other devs that may not be likely. hopefully a dev can reverse engineer the build of the phones firmware so that we can have access to the full phone.
 
is there a way we can use a flash_image like this one:

su
mount -o remount, rw /system
cp /sdcard/flash_image /system/bin
cd /system/bin
chmod 777 flash_image
flash_image recovery /sdcard/VM701_recovery.img
reboot recovery

but for the kyocera rise? this one is for the optimus q cwm. but is there a way to use a similar proceaa like the process above for clockwork mod recovery?

plus is there a properly built cwm recovery for this phone? any will do to see a theory i have. if there is a cwm image is it possible to do something like the above process? if so then we may have a way for cwm to be booted. i know that the recovery cant be flashed to the internal since it would brick the phone. but lets say if we dont flash the image directly to the internal recovery but instead run a command file to the location of this recovery image. would it be possible to do something like this?
 
we have TWRP working through fastboot (Whichever Rise has fastboot). the problem isnt flashing it, its getting the locked bootloader to boot it from cold boot.
 
thats good to hear. but i have a virgin mobile rise and i cant get into fastboot the sprint one has fastboot but the other variations of the rise dont. which is why i asked if we could use the sprint bootloader to get fastboot. due to the vm rise fastboot being disabled there is nothing much we can do. im almost fresh out of ideas.
 
well since flashboot and the bootloader are out of reach i looked into something called flash_image. with this i believe it uses this to flash from a directory where you put a file. so lets say you have recovery, you would use

su
mount -o remount, rw /system
cd /sdcard (or wherever you downloaded/copied the file)
cp flash_image /system/bin
cd /system/bin
chmod 777 flash_image

then,

su (not needed if using the same terminal session used in the steps above)
cd /sdcard (or wherever you downloaded/copied the recovery image)
flash_image recovery recovery.img (use the appropriate file name for the image file you are flashing

maybe with this we could get a recovery on here. but you can only execute this from terminal since it wouldnt flash recovery to the recovery block.which may be good depending on certain circumstances. some devices have cwm installed on locked bootloaders. maybe we can get it on here as well.
 
Nowadays we tend to use dd or fastboot over flash_image (as flash_image was for the MTD/Other weird)

fastboot flash recovery recovery.img (ONLY IN BOOTLOADER MODE)
dd if=/dev/mmccblk0p[partition of recovery]

Either way, the custom recovery image fails to pass the check that the earlier bootloader stages do to make sure it is official. The ONLY way we have been able to boot recoveries so far is with the fastboot boot command

fastboot boot recovery.img

for example, if you are able to get into bootloader mode, you can boot this recovery
Directory list

- Flashimage does not work (I can't remember the error off the top of my head)

- We DO NOT have the by-name feature (/dev/block/platform/msm_sdcc.1/by-name/recovery) so we must use the block device/partition real designation (/dev/mmcblk0p*)

- We are UNABLE to boot a custom recovery without the help of a USB cable each time because of certain checks the bootloader makes before it runs a recovery partition

- As of this post there is no way to get around this, that being said don't go around thinking that there will never be a way; it's extremely complicated to get around a locked bootloader and you usually have to have a very good understanding of the phone and it's software (linux/android and the lower level bootloader) before you can even attempt to do so. Even then, I find it easier to port android than to crack locked devices (but not as fun :D )

For the lolz I feel like writing a bit of info about this so if anybody is interested, here it is:

How would we go about this?
Well at a very high level there is really 2 ways to do this:

1. Crack the bootloader ("Unlock" it)
2. Get around the bootloader (2nd-init, kexec)

Cracking the bootloader basically means we have to find some way to make the bootloader run unofficial bootimages. This is usually done by exploiting some sort of hole in the bootloader's boot process allowing us to run unofficial code. As times goes on, manufacturers get better and better at filling these holes (like motorola, who are infamous for how well they lock their phones). Things like loki would fall into this category.

Workarounds, like 2nd-init and kexec is where general linux knowledge comes in to play. Understanding how linux and android work, we know that we can run scripts early on in the init process by scripts the init system loads from partitions we can edit. From there we can have fun and cause havoc, like kill all the services and make our own init system (2nd-init) or just go through the process of loading a new kernel in place of an already running kernel (kexec).

Both of these have their pros and cons. 2nd-init although the easier way, but limits us by not allowing us to run a custom kernel. kexec is really hard to implement in a situation where we cannot load a custom kernel (as it's not designed to be built and loaded as a module, a lot of kernel source haxing is required) but it does basically give us everything any developer is going to need (the ability to load custom kernels)

rbheromax, cooldudezach tech dad and myself (and others) have been on and off trying to do these things for a while now, it doesn't mean it can't be done, just we do not have the time and resources this sort of thing tends to require.

we have put a few sources up on github ( https://github.com/rise-recon ) if anybody want's to take a look but sadly there isn't much in the way of documentation on the bootloader itself. We have some theories about what's going on but it's hard to prove any of it due to how easy it is to brick a device like this, and what the hex editor gives us can be hard to read.
 
In order for Loki to be ported you would need to understand how it works.
Upon turn phone on, it copies boot partition to memory at certain addrs. The bootloader is at the beginning of RAM. The function for sig checking has a specific location in memory. Loki causes that to be overwritten in RAM with another function and skip sig checking.
Our bootloader wont allow for Loki to be ported. It doesnt have the check_sigs() function apparently. I may be able to find and create another exploit, but I'm going to need time.
 
In order for Loki to be ported you would need to understand how it works.
Upon turn phone on, it copies boot partition to memory at certain addrs. The bootloader is at the beginning of RAM. The function for sig checking has a specific location in memory. Loki causes that to be overwritten in RAM with another function and skip sig checking.
Our bootloader wont allow for Loki to be ported. It doesnt have the check_sigs() function apparently. I may be able to find and create another exploit, but I'm going to need time.

I would suggest doing a bit more research in how other exploits work. If I remember correctly, loki was designed for the S4 although it works with many other Samsung/LG devices. HTC devs used to use some interested exploits, you may wanna look into what the devs did with HTC phones.
 
wait how was the bootloader bypassed in the s4? isnt the kernel and processor chip the same with both devices?
 
wait how was the bootloader bypassed in the s4? isnt the kernel and processor chip the same with both devices?
djrbliss released loki originally as a way to unlock the boot loader of the Verizon S4 (if I remember correctly). He released his source on github ( https://github.com/djrbliss/loki ) and other people helped him to find ways to make loki work on other devices. Also, I seem to recall hearing that rbheromax had worked with djrbliss a bit trying to get loki on rise-like devices but as he said a few posts ago, he was unable to find the function that would be used to implement loki (sort of hard to patch over a function that doesn't exist).

By both devices do you mean the S4 and the rise? if so then no, they are way different chips. Albeit they both support armv7-neon instructions (so our SoC might be arguably better than Tegra 2), the s4's SoC alone would blow this phone out of the water in terms of performance and power. As we keep pokeing at this bootloader, it seems that it's getting to look less and less like a LG/S4 bootloader and more like a custom proprietary one Kyocera came up with
 
hmm is there any other phone besides the hydro and event that have the snapdragon 8655 processor and/or kernel version 3.0.8 perf?
 
Back
Top Bottom