HTC Salsa C510e Rooting
Basically, I had already own this phone for about two months. I am quite happy with it but the disadvantage of this phone
is the internal memory is really low and is too new in the market and no one have any custom ROM on it yet.
Why we need to root the phone? Well, rooting is just to get the full access of your whole phone and configure the thing you need
and customizing it. Rooting it also will give you more flexibility and will also making your cheapy phone to a high end phone.
At first when I got my HTC Salsa was quite happy with it until a while I noticed that the internal storage is an issue for me
where I cannot install more applications and the heavily bloated applications that causes the internal memory to fill up in
It is sad to get a nice phone with a low internal memory. I am not very happy on this besides all the goodies on this phone.
Thanks to a forum I found and finally I get to root my new HTC Salsa and get to fix my internal memory issue.
But of course, my phone is came with S-ON. I had to use the XTC Clip to S-OFF it and there you go!
Once is S-OFF you can do whatever you need for the phone.
How To Flash:
1. Download the file:PH11IMG.zip and copy to the root of the sdcard. For e.g.:
2. Now power off the phone and pull out the battery and reinsert the battery then hold on the volume down button with the power
button. Alternatively, you can use command with the usb cable attached: adb reboot recovery
3. The phone will start the HBOOT and check the PH11IMG.zip existance. If everything goes well, it will ask you to continue for
upgrade. Choose YES by pressing the volume up button then wait until the upgrade process finished.
4. Flashing the recovery partition done. Next we can proceed the recovery process. Before proceeding, please remove or rename the PH11IMG.zip to other filename else you will be keep on looping on it.
This following process will install the root applications to the system. Before proceeding, please download the root.zip
This file will provide all the things you need. No need to unzip the file. Just put the whole root.zip to the /sdcard/ will do.
The steps are as below:
1. By powering off the phone and hold on the volume down key and then power button for entering the HBOOT environment and choose
the recovery menu then press power button to confirm.
Well, once you get the root access, things to do is installing the busybox and the sudo checker for gaining root access.
1. Install Busybox.
2. Install Sudo Checker and all the sudo tools.
3. Once this done, we will need to partition the sdcard. Please be making sure all the data are backup. I am not going to be responsible on that :P
4. Use the hardware method by pressing the volume down and power button to enter the recovery mode or using the adb command "adb reboot recovery".
5. Use the recovery tool and backup the existing working image to the sdcard before proceeding next step. It will be useful to have the recovery image in hand. You will never know when you going to make the mistakes.
6. Once done, lets proceed with the adb command on the linux / windows terminal.
7. Before we start lets prepare some simple shell scripting. What we are trying to do here is to create a file and replaces the existing htcfs on the /system/bin/htcfs. I am not sure what is the use of mounting this htcfs on /data/htcfs and is empty. But I will put back this to my script in future. What I had done was move the original htcfs to htcfs.original and put my version of htcfs which it will auto starts every power off or reboot. Below are the codes:
#!/system/bin/sh /system/xbin/busybox mount -t ext2 /dev/block/vold/179:2 /data
8. Now lets rename the original htcfs in the phone before we copy our version into the phone. At the same time we do partitioning on the SDcard. Please do a adb reboot recovery to boot into the ClockWorkMod.
# adb reboot recovery # adb shell # mount -a # cd /system/bin/ # busybox cp htcfs htcfs.original # exit # adb push htcfs /system/bin/ # adb shell # cd /system/bin # chmod 755 htcfs # chown root.shell htcfs # fdisk /dev/block/mmcblk0 The number of cylinders for this disk is set to 245696. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): p Disk /dev/block/mmcblk0: 8050 MB, 8050966528 bytes 4 heads, 16 sectors/track, 245696 cylinders Units = cylinders of 64 * 512 = 32768 bytes Device Boot Start End Blocks Id System /dev/block/mmcblk0p1 1 196609 6291480 c Win95 FAT32 (LBA) /dev/block/mmcblk0p2 196610 244610 1536032 83 Linux /dev/block/mmcblk0p3 244611 245696 34752 82 Linux swap Command (m for help): d Partition number (1-4): 1 Command (m for help): d Partition number (1-4): 2 Command (m for help): d Selected partition 3 Command (m for help): p Disk /dev/block/mmcblk0: 8050 MB, 8050966528 bytes 4 heads, 16 sectors/track, 245696 cylinders Units = cylinders of 64 * 512 = 32768 bytes Device Boot Start End Blocks Id System Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 First cylinder (1-245696, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-245696, default 245696): +6G Command (m for help): t Selected partition 1 Hex code (type L to list codes): b Changed system type of partition 1 to b (Win95 FAT32) Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First cylinder (183107-245696, default 183107): Using default value 183107 Last cylinder or +size or +sizeM or +sizeK (183107-245696, default 245696): +1500M Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 3 First cylinder (228884-245696, default 228884): Using default value 228884 Last cylinder or +size or +sizeM or +sizeK (228884-245696, default 245696): Using default value 245696 Command (m for help): t Partition number (1-4): 82 Value is out of range Partition number (1-4): 3 Hex code (type L to list codes): 82 Changed system type of partition 3 to 82 (Linux swap) Command (m for help): p Disk /dev/block/mmcblk0: 8050 MB, 8050966528 bytes 4 heads, 16 sectors/track, 245696 cylinders Units = cylinders of 64 * 512 = 32768 bytes Device Boot Start End Blocks Id System /dev/block/mmcblk0p1 1 183106 5859384 b Win95 FAT32 /dev/block/mmcblk0p2 183107 228883 1464864 83 Linux /dev/block/mmcblk0p3 228884 245696 538016 82 Linux swap Command (m for help): w # mkfs.ext2 -m 0 /dev/block/mmcblk0p2 # mount /dev/block/mmcblk0p2 /sd-ext # cd /data # busybox cp -a . /sd-ext # sync # cd / # umount /sd-ext /sdcard /data /system # exit # adb reboot
The above steps are creating an EXT2 partition on the SDCard. My version I created a 1.5G as my /data space. So, basically the htcfs is mounting the /data from my sdcard on every reboot before all the applications start up. There is a step to copy all existing /data to the sd-ext and that is the trick to make the phone thinks that is using the internal memory and we have no longer facing insufficient disk space on cheaper android phones or on some branded HTC phones with little amount of internal disk. I hope this hack will help the people out there like what I am facing before ;)