Project

General

Profile

Introduction

Here's a tutorial that covers the installation of a previously built or downloaded Free Android Image,we will assume that:
  • you don't have the engineering bootloader
  • you have root access
  • you have a blank vfat sdcard in your android phone with enough free space

Howto

  • /!\ first backup your current version...in case something is wrong we need it
  • then if you want the proprietary wifi firmware,execute the following command on your computer(/!\ the firmware is proprietary,we don't know what it does and we are not even allowed to redistribute it):
    # ./adb pull /system/etc/wifi/Fw1251r1c.bin ./
    
  • download an image that can flash our Free Android, like cm-recovery-1.4.img for instance (/!\ we didn't check cm-recovery-1.4.img's freedom)
    # wget http://n0rp.chemlab.org/android/cm-recovery-1.4.img
    

    Then we will boot on the image that will flash our android:
  • shutdown your phone if it isn't shut down
  • press the camera button first,keep pressing it while pressing the power button...that will give you a screen with skateboarders
  • use fastboot to boot:
    # ./fastboot boot cm-recovery-1.4.img
    
  • press on the back button(<-) that is under the menu button at the right of the trackball
    it will boot
  • backup your image selecting "nandroid v2.2 backup"
  • then use adb to push your images but first we need to look where to push them:
    ./adb shell
    # mount -t vfat /dev/block/mmcblk0p1 /sdcard
    # ls -d /sdcard/nandroid/*/*                   
    /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455
    # exit
    
  • write down the last line before the exit command,because it will differ from device to device
  • push the images:
    # ./adb shell
    # mount -t vfat /dev/block/mmcblk0p1 /sdcard
    # exit
    # ./adb push boot.img /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455
    # ./adb push system.img /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455
    
  • then we need to compute the md5sums:
    ./adb shell
    # md5sum /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455/boot.img 
    a491db2000489c7fb7c5f7fe4b103b8c  boot.img
    # md5sum /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455/system.img 
    610b10a715ea1a5db4e6badd6a8a2989  system.img
    
  • write down the result of both md5sum commands
  • download the nandroid.md5 file
    # ./adb pull /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455/nandroid.md5 ./
    
  • change the lines where there is boot.img and system.img to the ones you've written down previously
  • push them:
    # ./adb push nandroid.md5 /sdcard/nandroid/HT935NG03936/CBDMRS12-20090917-1455/nandroid.md5 
    
  • unmount the sdcard
    # ./adb shell
    umount /sdcard
    
  • then select "restore the latest backup" on the screen,with the trackball
  • press home like it is said
  • then select "wipe data/factory reset" on the screen,with the trackball /!\ it will erase all the data of your phone...
  • then select reboot system now
  • wait for the system to boot(the boot will take longer than usual)
  • then do the following:
    # ./adb shell
    # cd /data/data/com.android.providers.settings/databases
    # sqlite3 settings.db
    SQLite version 3.5.9
    Enter ".help" for instructions
    sqlite> INSERT INTO secure (name, value) VALUES ('device_provisioned', 1);      
    sqlite> .exit
    
  • then if you want the proprietary wifi firmware,execute do the following: (/!\ the firmware is proprietary,we don't know what it does and we are not even allowed to redistribute it):
    # ./adb remount
    # ./adb push Fw1251r1c.bin /system/etc/wifi/
    
  • then reboot:
    # ./adb shell
    reboot