Porting cyanogenmod

Search This thread

merwin

Senior Member
Feb 14, 2006
403
238
I am attempting to port Cyanogenmod to the Garminfone. I have root, know how to have it load a recovery.img at boot, and know how to flash partitions on it (it comes with a flash_image program that can flash an image to a given partition, which is how it flashes the recovery.img

I am very familiar with the layout of the partitions, os, and with not too much effort could get the current OS running in the emulator,as they left all of the emulator initial scripts on the device and did a great job commenting everything.

The one thing I am not sure about is flashing the bootloader in a way that will not trash the device. I know it is a msm7227 cpu and can provide dumps of anything anyone may need to help.

Any assistance would be appreciated. Thanks!
 

merwin

Senior Member
Feb 14, 2006
403
238
No luck yet... still trying to figure out how to do it without bricking it. Not getting much in the way of assistance on how to port the recovery image to my phone properly, so I can recover while testing.

I know how to unpack it and a couple ways of getting it flashed back that are yet untested but should work.

Its pretty standard hardware (msm7227), and aside from the Atheros wifi and potentially the gps in it (crazy accurate, down to 6.6 feet and works without a sim, so I think there must be something different) the sensor drivers all report being standard android drivers.

I make my living doing software development, database development, and lots of middleware to get different systems to play nicely,but have nearly no hardware or driver development experience and very little work with asm, so decompiling and inspection is out, but can figure out most anything when pointed in the right direction. I just need someone experienced to work with me on it.

Anyone interested?

Sent from my Garminfone using XDA App
 

afoster1003

Member
Jan 26, 2010
30
8
Wouldn't it just be easier to figure out how to compile a rooted recovery and to set up mayb keymaps to be able to boot from.. With a recovery thats able to flash if we were to have to flash the bootloader change spl/radio or anything we would be able to go about making a update.zip for the recovery and flash it that way???
 

merwin

Senior Member
Feb 14, 2006
403
238
I can already rebuild the existing recovery img as well as the bootloader. The existing recovery can flash an update.zip if the keymapping to select menu entries was there.

There is no hardware method to boot into recovery aside from the failsafe, which triggers if the main boot image fails to load a certain number of times.

So, you are safe unless you **** up both the main bootloader and the recovery... which is why I flash any test boot image to the recovery partition first, test it, then flash back my rooted recovery, test it, and flash the main boot image.

It takes longer, but works. What would be nice would be to compile the boot image using the first stage loader as well as the second stage loader. That would let you have your minimal loader that responds to the recovery keychord and then boots to the second stage loader that has all the features. Not sure how to accomplish it.

I did check the kernel config and every nonstandard component is loaded as a module and the kernel is 2.6.29 so there is no reason why we shouldn't be able to configure and compile a working Froyo at the very least.

I just need to work my way through the build process. The fun part will be seeing if the Garmin software would run on Cyanogen or if it checks more than just the model and serial.
 

sharky_k

Member
Jan 29, 2008
8
0
I'm watching your progress with anticipation. I have no programming or development experience, but if I can help with testing or anything let me know.

Sent from my Garmin-Asus A50 using XDA App
 

drbroom

New member
Dec 13, 2010
2
0
Also watching this thread! Would love to be able to flash a kernel that allows overclocking and hopefully 2.2
 

mlariv

New member
Jan 24, 2012
3
0
Re: Cyanogen for Garminfone

There is a solution. I just made it last weekend. This post will follow with video demos.

---

Start with a factory wipe.. not using garmins KB method: (We want a clean FS mounted)
Unmount and remove SD Card from phone.
Connect a usb cable and enable USB mass storage mode.
Create a desktop folder and move all contents of Garminfone drive to new folder.
Download 7-zip and restore.zip from garmin-asus support site.
Open restore.zip, browse restore and drag drop .system to root of Garminfone storage.
While USB mass storage mode is enabled hit menu > settings > privacy > master reset. Yes, yes.
Wait for the phone to reboot twice.
Pop cover, install SD card.
Menu > Settings > Storage
SD Card detected use as default? No.
Scroll down, unmount, format.
Scroll up, Default storage > SD Card
Home
Slide > USB > File Transfer
Launch Garmin Web Updater .. install select guide icons, voices, etc.
Optionally update garmin lifetime maps now here.

Install z4root and root phone
Open Superuser and check for updates, reboot if updates apply.
Install GO Launcher and replace ‘Breeze’ launcher

You should reboot now. (Apps > Terminal Emulator > #su > #reboot )

Install a startup manager (I used Android Assistant)
Cut the following apps from User/System startup: Flashlight,CardioTrainer,My Tracks, Pandora, Garmin Voice Studio, IM, Messaging, My Account, Offers Provider..

Install Dolphin Browser Mini
Install Google Voice (Port your number!!)
Install SSHDroid

Reboot phone when all is complete (Apps> Terminal Emulator > #su > #reboot )

From here forward it is much easier from a desktop ssh terminal such as putty, but this is entirely up to you. It may also be done in the Terminal Emulator app on the phone without using SSHDroid.

If you use Visual Voicemail still.. (its a mem hog!) omit the line with vvm-signed.apk

Either use T.E. and start with #su (root) and do the following commands or ssh as root/admin:

We’re going to remount the system partition so we can move some stuff around and trim the fat.

mount -o remount,rw,noatime,nodiratime,data=ordered -t ext3 /dev/block/mmcnand
blk0p3 /system

We’re going to hide some of the standard bundled apps since the phones permissions are all over the place we’re going to rename the files instead of doing a chmod -x:

cd /system/carrier/persist-app/
mv amazonmp3.apk amazonmp3.apk.no
mv HotSpotApp.apk HotSpotApp.apk.no
mv Myspace.apk Myspace.apk.no
mv Twitter.apk Twitter.apk.no
mv vvm-signed.apk vvm-signed.apk.no

Let’s make the phone boot the way Garmin-Asus intended:
mv /system/carrier/images/startup/bootanimation.zip /system/carrier/images/startup/bootanimation.zip.no

reboot !

The phone should now have around 70Mb RAM free!! Around 32Mb with Google maps/navigation running. This *will not* break your lifetime maps!

I highly reccomend making a point in time snapshot of some sort (Titanium Backup)

---------- Post added at 12:50 PM ---------- Previous post was at 12:37 PM ----------

There is a solution. I just made it last weekend. This post will follow with video demos.

---

Start with a factory wipe.. not using garmins KB method: (We want a clean FS mounted)
Unmount and remove SD Card from phone.
Connect a usb cable and enable USB mass storage mode.
Create a desktop folder and move all contents of Garminfone drive to new folder.
Download 7-zip and restore.zip from garmin-asus support site.
Open restore.zip, browse restore and drag drop .system to root of Garminfone storage.
While USB mass storage mode is enabled hit menu > settings > privacy > master reset. Yes, yes.
Wait for the phone to reboot twice.
Pop cover, install SD card.
Menu > Settings > Storage
SD Card detected use as default? No.
Scroll down, unmount, format.
Scroll up, Default storage > SD Card
Home
Slide > USB > File Transfer
Launch Garmin Web Updater .. install select guide icons, voices, etc.
Optionally update garmin lifetime maps now here.

Install z4root and root phone
Open Superuser and check for updates, reboot if updates apply.
Install GO Launcher and replace ‘Breeze’ launcher

You should reboot now. (Apps > Terminal Emulator > #su > #reboot )

Install a startup manager (I used Android Assistant)
Cut the following apps from User/System startup: Flashlight,CardioTrainer,My Tracks, Pandora, Garmin Voice Studio, IM, Messaging, My Account, Offers Provider..

Install Dolphin Browser Mini
Install Google Voice (Port your number!!)
Install SSHDroid

Reboot phone when all is complete (Apps> Terminal Emulator > #su > #reboot )

From here forward it is much easier from a desktop ssh terminal such as putty, but this is entirely up to you. It may also be done in the Terminal Emulator app on the phone without using SSHDroid.

If you use Visual Voicemail still.. (its a mem hog!) omit the line with vvm-signed.apk

Either use T.E. and start with #su (root) and do the following commands or ssh as root/admin:

We’re going to remount the system partition so we can move some stuff around and trim the fat.

mount -o remount,rw,noatime,nodiratime,data=ordered -t ext3 /dev/block/mmcnand
blk0p3 /system

We’re going to hide some of the standard bundled apps since the phones permissions are all over the place we’re going to rename the files instead of doing a chmod -x:

cd /system/carrier/persist-app/
mv amazonmp3.apk amazonmp3.apk.no
mv HotSpotApp.apk HotSpotApp.apk.no
mv Myspace.apk Myspace.apk.no
mv Twitter.apk Twitter.apk.no
mv vvm-signed.apk vvm-signed.apk.no

Let’s make the phone boot the way Garmin-Asus intended:
mv /system/carrier/images/startup/bootanimation.zip /system/carrier/images/startup/bootanimation.zip.no

reboot !

The phone should now have around 70Mb RAM free!! Around 32Mb with Google maps/navigation running. This *will not* break your lifetime maps!

I highly reccomend making a point in time snapshot of some sort (Titanium Backup)

---------- Post added at 01:01 PM ---------- Previous post was at 12:50 PM ----------

Since I can't link, I'm too new. You'll have to search youtube for Garminfone 2.1 root demo under user mjlar94. There are three videos, enjoy. You are now back on the grid using actively supported and updated applications.

I was unable to locate and disable the WhereTo app, this would take some discovery to find out if the GPS functionality is nested in the Garmin apk's. You should switch to google Nav/Places
 
Last edited:

Beer Brand

Senior Member
Jun 9, 2011
59
31
Hi


Any help where can I fine the procedure on how to port Cyanogenmod 10 on a ICS phone? Can I do this on a stock rom of an ICS phone or do I need to wait for a JB Rom?
 

Dreezyne

New member
Dec 23, 2012
1
0
Hello all,

It's fantastic this works, but as you see i'm a noob. And these guidelines above are simply too difficult to follow...
I looked for the vid's but none of them show the whole deal...
Can you bee so kind to go thrue this step by step?

That would help me very much to get cyanogen on my Garminfone...
I'm waiting already very very long to do so...!!
So MLARIV, thank you in advance!:eek:

Grtz From Belgium
Dreezyne