Very Important Information For Beginners
/Introduction to Android for SD Cards
Okay, firstly I made this thread because pretty much every new person to this section of the forums is completely lost and unsure what things are or what to even do. We are also sick and tired of threads saying 'how do I get stared' or 'which is the most stable' etc.
----------------------
Download your files from here:
You will be accessing these websites quite often so it might pay to bookmark them
Kernel downloads, almost always download the top one, they are updated often (needs
extracting):
http://glemsom.users.anapnea.net/and...htc-msm-linux/
Rootfs downloads, download the top one, they aren't updated as often as the kernels above but still quite regularly (also needs
extracting):
http://files.xdandroid.com/rootfs/
Initrd downloads, rarely updated (don't extract, just rename to initrd.gz)
http://files.xdandroid.com/initramfs/ People almost
never need to download one of these separately.
----------------------------------
Basic need-to-knows:
Kernel: Your modules/zImage. Your zImage always needs be in the root (first folder) of your android folder on your SD and ALWAYS named zImage, your modules should also be in the root of your android folder named modules-LOTSofNUMBERSandLETTERS.tar.gz never rename your modules. It should always be in .tar.gz EG: modules-2.6.27.46-01276-g6a6a1c1-dirty.tar.gz
Rootfs: Must be in the root of your android folder named
rootfs.img
Initrd: Needs to be in the root of your android folder named
initrd.gz
Data.img: Generated on the first boot of android and placed in root of android folder. Is a virtual memory file that acts as the phones internal memory for android. Holds all your settings etc. May have to be recreated some times (just by deleting it)
Haret.exe: the file executed by your Windows ROM to kick Windows out of memory and boot android.
system.ext2: Main android file, must be in the root of your android folder. Holds all of your build.
startup.txt: File that instructs android how to start up. Needs to be in the root of your SD. (I will cover this further down)
ts-calibration: A file in the android folder that holds calibration information of the touch screen.
Various Folders: You will see/have/need other various folders created in the root of your SD and in the root of the android folder, such as conf, cache, data, media etc. You usually don't want to delete these.
Root: The root folder of any partition is the "highest" folder in the hierarchy. The root folder contains all other folders and can also contain files. For example, the root folder of the main partition on your computer is probably
C:\. The root folder of your DVD or CD drive might be
D:\.
Also Known As
: "the root"
RIL: Radio interface layer: basically controls your radio (GSM/CDMA network)
------------------------------------------------
startup.txt
VERY IMPORTANT, your startup.txt must be customized to your device. (mine is a rhod110).
You can find your model number under your battery. This file belongs in the folder with your android.
My startup.txt looks like this
Code:
set ramsize 0x10000000
set ramaddr 0x10000000
set mtype 2292
set KERNEL zImage
set initrd initrd.gz
set cmdline "lcd.density=240 msmvkeyb_toggle=off gsensor_axis=2,1,3 pm.sleep_mode=1 rel_path=FRX07 physkeyboard=rhod100_uk acpuclock.oc_freq_khz=710000"
boot
Now I believe you should be able to copy and use this as yours with a few slight modifications. Change rel_path= to wherever your android is stored on your sd, for example when I go to my sd inside the folder frx07 (the root of my android folder) all my android files are there. If your folder was called andboot it would be rel_path=andboot. (without that full stop) Now change your physkeyboard= to your model of your phone, mine is rhod110 but the rhod100_uk keymap is EXACTLY THE SAME AS THE RHOD110 so that's why I use rhod100_uk instead of rhod110 (rhod110 isn't recognised by frx07), this is important to make sure your keys are assigned properly.
------------------------------------------------
Models of rhod:
From what I know that exists. If you find one not listed, make sure you tell me so I can update the list
rhod110 uses rhod100_uk and it works as it should
These can be used for physkeyboard= in startup.txt (needs updating, some may no longet be supported because F22 hasn't commited old changes)
rhod100_de
rhod100_es
rhod100_fr
rhod100_it
rhod100_nl
rhod100_nordic
rhod100_uk
rhod210
rhod300 (tilt2)
rhod400
rhod500
Getting set up:
Go to
http://forum.xda-developers.com/show....php?t=1171052 and download the FULL BUNDLE
Other builds exist such as gingerbread but this guide only covers froyo frx07.
Replace/add the
Kernel from the downloaded build with the
latest one (remember this is the zImage and modules-NUMBERS.tar.gz). Updating is as simple as this, do it often - there is no data loss. See links mentioned above for links. Making sure that the (if there were) old kernel files are all deleted and the new ones are called zImage and modules-NEWdifferentNUMBERS.tar.gz
Replace/add the
rootfs.img with the
latest one from the link above it should be named
rootfs.img.
Remember that the
rootfs and kernel are updated quite often and that you should check and update
every few days.
Make sure your
startup.txt is correct and make sure everything is where it should be in a folder on your computer, then copy the folder to the root of your sd card.
Navigate to this folder using the file explorer in your Windows ROM (YOUR PHONE) and run the
Haret.exe
It will then have some writing running down a black screen before booting android (it's just preparation to booting) read it if you want
Android will start and you should leave it about 2-5 minutes before touching anything, it has things running in the background and it will be slow, still setting itself up. Navigate to settings and set up your phone. If anything goes too badly wrong you can always delete
data.img and start again! Data.img is the internal memory of the phone, remember? Well, until we get android working on the real internal memory...
---------------------------
Structure:
My SD card. (with android on it)
I'm running:
kernel: 20110819_183957
http://glemsom.users.anapnea.net/and...htc-msm-linux/
build: Froyo FRX07http://forum.xda-developers.com/showthread.php?t=1171052
rootfs: rootfs-20110816-7e04198.zip from
http://files.xdandroid.com/rootfs/
Code:
EncFiltLog.menc
kbd_info
Android
cache
download
tmp
Private
Games
Installs
DCIM
Others
Videos
Images
Sounds
media
frx07
rhodimg.nbh
My android is in frx07
inside my frx07:
Code:
data.img
ts-calibration
startup.txt
modules-2.6.27.46-01348-g9de837f.tar.gz
zImage
haret.exe
initrd.gz
system.ext2
AndroidApps
conf
media
rootfs.img
-----------------------------------------
Backup/Restore
when you have the need to backup and restore data, look for an app called Titanium Backup. I have never used it but heard it works brilliantly, even backing up your apps! There is a 'donation' version and a free version with not many differences. I suggest you go check it out!
-----------------------------
USB CONNECTIVITY
When your phone is in Android you can not use it like a USB, HTC's drivers will not work and you have to use certain programs until this is implemented.
Windows: Install
DroidExplorer this lets you open a terminal (like command prompt) on the phone,
lets you browse device adding/deleting files, among other features that are very useful. If that DroidExplorer doesn't pick up your phone (when picked up it will be called 0000000000) install
PDAnet on your phone and pc. PDAnet provides the drivers needed to connect the phone. It also lets you use your phone as a modem and you can send SMSs using your computer. Do NOT run PDANET at the same time as DroidExplorer. When PDANET is connected it WILL use your phone for data connections - this is the only warning. The phone is not used for any networking when DroidExplorer is connected.
Mac: Unknown to me (can someone post?)
Linux: Never tried, it is easier than windows (can someone post a method?)
---------------------
Overclocking
Do NOT overclock WINMO.
If you want to overclock your device do so at your own risk.
it is as simple as adding "acpuclock.oc_freq_khz=710000" without quotes to your startup.txt cmdline. 710000 (approx 710 mhz) can be swapped for any number but this is practically the highest stable speed achievable. I use 710000, works fine for me.
-------------------------
Known problems across ALL BUILDS:
Media Player Some tracks might have playing issues.
FIX: HERE
Bluetooth is experiemental
Speakerphone static : seemingly random issue
USB plugging the device into a computer, it will be recognised, but not by HTC drivers. FIX: You must use something like DroidExplorer and PDAnet to browse the device and ADB (android debug bridge). See above ^^ (USB tethering is being fixed/has been fixed)
FN LED On keyboard the caps LED works but the FN LED currently does not. FN still works fine
No deep sleep: FIX: disable GPS (or kill the running app causing phone to not sleep)
Failure booting Android: Phone fails to enter android after running haret.exe FIX: Make sure your winmo is NOT overclocked before booting android.
Booting or SD Card related problems: Make sure your card is formatted as FAT32 (reformat as Full Format if it is not working)
More information is available on the
wiki, there is also information there if you want to get into development. There is a pretty good FAQ on that wiki too
Remember XDAndroid is not just for this device.
If any of this is wrong or you think something should be updated/changed, please tell me