The XDAndroid Project is no longer active.
This site provides archived information from while the project was under development. Some links may no longer function.
- 1 General FAQs
- 1.1 How can I tell what device I have? RAPH? RHOD?
- 1.2 How do I overclock?
- 1.3 HaRET failing to boot?
- 1.4 How can I update?
- 1.5 How do I migrate my contacts from Windows Mobile?
- 1.6 How much space do I need on my Storage Card?
- 1.7 Do I have to run this at the root of my SD?
- 1.8 Why can Android not see my SD card? It says "No SD inserted"!!
- 1.9 How do I fix a non-functioning or miscalibrated touchscreen?
- 1.10 How do I prevent clock drift?
- 1.11 Why does GPS lock take forever?
- 1.12 Which cmdline arguments are available in startup.txt?
- 1.13 WiFi doesn't work at all?
- 1.14 How can I tether (WiFi/USB)?
- 1.15 What is ADB / How-To ADB
- 1.16 What is an APK / How to install apps/programs
- 1.17 How can I theme the build?
- 1.18 Can I store apps on the SD card / I'm out of space!!
- 1.19 What about MMS?
- 2 HTC Touch Pro 2/Tilt 2 (Rhodium)
How can I tell what device I have? RAPH? RHOD?
When you go looking thru the STARTUPS folder of a build, the list might be daunting - do I have a RAPH (a.k.a. HTC Touch Pro)? RHOD (a.k.a. HTC Touch Pro2)? DIAM (a.k.a. HTC Touch Diamond)?
If you are confused, the easiest/quickest way to settle it is to pull the battery on the device; shut it down completely first, if you can. Do not look on the battery itself, but on the phone itself. On the sticker it should say what device you have — 4 letters and 3 numbers, above the IMEI bar code... It's the last part of the FCC ID (in gray)
|Devices with physical keyboards:|
|Devices without physical keyboards:|
How do I overclock?
Place this command in your startup.txt: acpuclock.oc_freq_khz=614400 for 614.4 MHz. Choose multiples of 19.2 MHz, or the system will default to the closest multiple for you (for example if you put in 700000 it will really be ~692 MHz instead of 700 MHz). (See also Kernel boot command-line parameters.)
The 'max' you can overclock varies by device, and some devices can be pushed farther than others. It seems best to establish what max you can hit in WinMo, and apply that to Android (disable OC in WinMo before booting Android...) Anything over 700 seems risky, although some RHODs run up in the 800+ range without issue. If you're having problems, ramp this value down first, if not completely disabling it before moving on to other troubleshooting steps.
HaRET failing to boot?
- See also HaRET.
- Don't overclock WinMo.
- Look over the directions in the build thread again. Make sure you have all the necessary files, in the correct location.
- If it's still failing to boot, format your SD card using the HP Tool (for Linux, whatever tool seems to do the job — it's just the built-in Windows/WinMo format utilities that seem broken...)
How can I update?
Well if you're adventurous and want to try upgraded the components of the build, see the Incremental Updates page.
How do I migrate my contacts from Windows Mobile?
In Android, simply add a Google account to sync normally. The account will eventually synchronize the contacts that were added to it by Windows Mobile as directed in the above page. Changes and additions to the contact list will be continuously synchronized between the two operating systems.
How much space do I need on my Storage Card?
The absolute-minimum supported card size is 512MB. For reference, a complete XDAndroid system will usually occupy about 480MB of space (including a 256MB data.img file which appears after initial installation).
Do I have to run this at the root of my SD?
No, you can set a rel_path value in the startup.txt file.
I have mine two folders deep; from within Android it would be /sdcard/Androids/TP2Ref. My
rel_path=Androids/TP2Ref. This goes between the quotes, after
Why can Android not see my SD card? It says "No SD inserted"!!
Well, the theory is the built-in Windows and WinMo format utilities are broken. Backup all the data on the card, do a full format, FAT32 on the card using the HP Tool. Restore all the data on the card, and apps within Android should now see the card. It seems that this error occurs when there's no partition table on the SD card (even if the card is FAT32 formated). You can reformat it with Mac OS X Disk Utility. As long as you put a partition table (MBR format), Android will be able to read your FAT32 formated partition.
How do I fix a non-functioning or miscalibrated touchscreen?
Delete the file ts-calibration from the same directory in which you run haret.exe to boot Android. During the next boot, the device will prompt for touchscreen re-calibration.
If you have any issues calibrating, you might need to go back to an older kernel. The .35 framebuffer commit seemed to cause this issue, so you can go to a kernel before it; 1231 for example works.
How do I prevent clock drift?
XDAndroid currently suffers from two types of system clock drift. Gradual clock drifting may occur. To alleviate this, download ClockSync from the Andriod Market. An hourly synchronization setting is recommended.
Additionally, the clock may be skewed by a matter of hours when rebooting back into Windows Mobile. When this occurs, the offset will likely be the same as the local timezone's offset from UTC (for instance, if in Eastern Standard Time, the clock will be five hours ahead when rebooting to Windows Mobile). This is due to time handling differences between Windows Mobile and the Linux kernel. It is recommended that Windows Mobile be configured to synchronize the clock automatically. Otherwise, a third-party application may be needed to maintain the clock properly.
Why does GPS lock take forever?
Basically our Android port doesn't support any advanced GPS features like warm injection. Read more here.
We've noticed that if you use QuickGPS in WinMo (or even get a GPS lock in WinMo) prior to booting Android, the GPS lock times in Android are greatly reduced.
Which cmdline arguments are available in startup.txt?
See Kernel boot command-line parameters. Note - some of these commands are outdated and deprecated (will be ignored).
WiFi doesn't work at all?
If you upgraded your kernel (see Incremental Updates) then make sure the modules-xxxx.tar.gz file matches the kernel (zImage). Sometimes the modules don't unpack correctly either, if you suspect this is the case (you know you've matched the zImage to the modules correctly) then try this trick (thanks Starfox).
If you have tried to use WiFi and every possible fix suggested fails - and the error states "Unable to scan" the issue probably lies in the wifi-nvram.txt file - basically Android doesn't know the MAC address of your WLAN card.
See F22's post on how to workaround this issue. Not everyone needs this fix, and we haven't determined why some do and others do not... Unfortunately you have to cp this file. You can try to add the cp line in your froyo.user.conf, but all other methods (bind mount, symlink) seem to fail - so don't bother.
How can I tether (WiFi/USB)?
USB Tethering should "just work" now. Make sure it is enabled in Settings → Wireless & Networks → Tethering & portable hotspot → USB Tethering.
WiFi tethering should work out of the box (Settings → Wireless & Networks → Tethering & Portable Hotspot). If it doesn't there are a couple of options: XDAndroid Wifi Tether or Barnacle Wifi Tether (on the Market). Neither of these solutions use a true AP, only adhoc. If your device requires a true AP (not adhoc!!) then the built-in wireless tethering solution is the only option.
What is ADB / How-To ADB
ADB = Android Debugging Bridge. Official Google ADB Page
It also kinda works like USB Mass Storage using a Windows app called Droid Explorer.
In addition, you can use it to get a console connection into the phone.
Logs can be pulled with adb.
There are many other ADB functions which I will not address here, please see the official ADB link above.
Further Reading (thanks slycker)
What is an APK / How to install apps/programs
APK = Android application package file from the Android Glossary
Of course you can install apps through the Market, but if you wish to install apps manually using an APK file, there is a folder — AndroidApps — off of where you run haret.exe from. Simply place the APK inside this folder, and on the next boot the APK will be installed on the system. Notice there are folders within this main AndroidApps folder. Do not place any APKs inside these folders. They are there for you to pick and choose some apps that some may find useful, but we didn't want to automatically install them for the sake of having a clean build.
There are some other methods for installing APKs, which pertain to native Android devices and are outside of the scope of this FAQ.
How can I theme the build?
Entropy512 has created a post on this subject.
Can I store apps on the SD card / I'm out of space!!
Well first of all, everything is on the SD card - so the apps are already on your SD card. Please don't use app2sd for this reason... it won't work. However, instead of being directly on the SD they're stored in this data.img file (along with every other user-related thing like SMS's, phone call log, etc etc). So if you go to Settings -> SD Card & Phone Storage -> "Internal phone storage" is basically this data.img file. There is a pretty slick app that allows you to expand the size of this file - just make sure you have the space on your SD! Data Expansion Tool
What about MMS?
With the new RIL & MMS work by hyc (Sprint was especially broken...) MMS is now possible in both directions! You have to get Version FRX07 and set your APN according to MMS.
HTC Touch Pro 2/Tilt 2 (Rhodium)
Which features are not currently supported?
- Bluetooth - Fix is in the works. See this thread for more information on how to manually setup the fix. Not easy! Still a WIP as well.
- USB - everything except USB Mass Storage should work in respect to USB. You can use Droid Explorer (Windows app) which leverages ADB to sort-of "fake" USB mass storage.
For a more complete list, please see this PPC-Geeks forum thread (thanks manekineko)
How do I connect to WiFi networks with WEP encryption?
There is currently an issue with WiFi access points which use WEP encryption. The system currently does not support WEP out of the box, but a Market app called wifi-ace will work around this issue until it is resolved by XDAndroid.