|
||||
Linux/Android on CDMA Touch Pro -- Now working on Verizon! And with GPS!
Update: go here for a newer version.
Update 2010-07-14: New FroYo All-in-One package available. Update 2010-06-13: Another new All-in-One package. New system.sqsh and a more robust bootloop fix. However, cdma data is non-functional until you add the CDMA APN as explained in post #2, under 'CDMA Data isn't working'. Update 2010-06-12: New All-in-One package. Supports RAPH500, RAPH800, RHOD400, RHOD500. Based on the latest xdandroid 2.1 aosp package. Solves the persistent boot loop issue (in an ugly manner, but no complaints here). Android (Eclair) on the CDMA Touch Pro (RAPH800/RAPH500) Installation Easy way: Download the All-in-One package (old versions here). Decompress it (in Windows, use 7-Zip). Put the 'andboot' folder in the root of your sdcard. Go to the STARTUP CONFIGS folder, find your device, and copy the startup.txt from that folder to the base andboot directory. Open /sdcard/andboot/HaRET.exe to boot Android. Hard way: (How to get all the newest files and make your own package) Download the XDANDROID package release by babijoee at xda-developers (links are in this thread (2.1) and this thread (2.2)). Unzip it to the root of your sd card. Copy the RAPH800 startup.txt from the startup configs folder to the root of the sd card. Download the latest kernel through glemsom's kernel autobuild site (you might have to step back a few, though -- things are changing all the time, and the latest kernel might be broken). Untar (it's like unzipping -- 7-Zip in windows can do this), rename zImage.xxxxxxxxx to zImage, and replace all zImage and modules* files in the root of your sdcard with these. Go to Stinebd's rootfs autobuild site and download rootfs-latest.img. Rename it to rootfs.img. Then go to his initramfs autobuild site and download initrd-latest.gz. Rename it to initrd.gz. Put them on the root of your sdcard, replacing the ones from XDANDROID. Go to the SD card and run HaRET.exe to boot Android. Current Status Working
Depending on which device you're using, you may get a large number of ANRs (Application not responding: Force Quit/Wait) dialogs. They're annoying, but normal, and not harmful. Just click 'Wait'. More Info The XDANDROID package that I'm using is thanks to babijoee and leobaillard at xda-developers. There's a thread on development for the DIAM500 (CDMA Diamond) on XDA-Developers, and another on the RAPH500 (Verizon CDMA Touch Pro) at Connect-UTB. There's also the Android on HTC Wave with a bunch more information. Sincere thanks to phh, babijoee, MrPippy, and many others here, at xda-developers, and on #htc-linux who are putting in effort to get this running better by leaps and bounds every day. Also, If you'd like to thank me for my time and effort, donations are appreciated. Last edited by makkonen; 06-28-2011 at 06:28 PM. |
This post has been thanked 165 times. |
|
||||
Faq
Frequently Asked Questions
My backlight isn't adjustable/goes dim and I can't bring it back. Turn off automatic backlight adjustment in WinMo (Settings -> System -> Power -> Backlight), and then you should be able to adjust it in Android. Will this hard reset my device/trash my Windows Mobile install/make it unable to get back to Windows Mobile? No. I guess in some very rare case, a bad boot could mess up some underlying phone settings and require a hard reset -- but it's never happened to me, or anyone else I've heard of, at least not with these kernels. How HaRET works is it bootstraps a linux kernel off of the SD Card and loads in into memory, then mounts the system and data files from the SD card. Nothing on the internal memory (ROM/nand) is ever touched. When you pull the battery or soft reset the device, it boots back up into WinMo as if nothing had ever happened. My touchscreen is totally nuts -- upside down, backwards -- or just unusable. Reboot and delete the ts-calibration file from the root of your SD Card. On your next boot, you will have the opportunity to recalibrate the touchscreen. Tap the points very lightly -- the touchscreen is very sensitive, and the calibration tool does not have any meaningful error checking, so it is possible to click the same point 2 or 3 times without meaning to. CDMA Data isn't working. Sometimes this is caused by incorrect or missing APN settings. When Android boots up, go to Settings -> Wireless & Networks -> Mobile Networks -> Access Point Names. You should see an entry with Name: Android (or CDMA Generic), and APN: internet. If this entry is not active, activate it. If you see nothing, hit menu (the button with the house), create a new APN, and put in the settings Name: Android and APN: internet. Everything else can be left blank/default. If you are on a network that uses login name and password for #777 dial up networking, and none of this works, you can try the instructions here, which may or may not help (you'll need your correct name and password). The system fails to boot, saying something about "Cannot mount SD Card" This is usually due to the card being incorrectly partitioned. Some have reported luck using the HP Disk Tool (Google) to repartition and reformat. If you have access to a linux distribution, GParted can easily repartition. The correct state is one primary partition (the failing cards tend to have one extended partition, containing one logical partition). Do I have to store all the files in the root of my SD Card? I'm a neat freak and it's giving me palpitations. Old builds allowed you to store everything in /sdcard/android/. In the newer builds, this has been removed (as other android applications were dumping files in /sdcard/android/ and confusing the boot script). Now the boot script first looks for a rel_path=xxxx variable in the cmdline (in startup.txt) and then looks in /sdcard/xxxx/. If no such variable exists, it looks for a directory /sdcard/andboot/. If that does not exist, it looks in the root of the sdcard. What should it look like when it boots? chibiushi made a Youtube video of what it looks like from opening up HaRET, to loading the kernel, to the Android home screen (and then to loading Sprint TV, which apparently works). It should look about like this. If you have 3d working, you'll get a boot animation during the point where he has a black screen, and if you need to create a data partition, the delays will be longer; but, otherwise, this is it. Why aren't applications (Pandora, Facebok, etc.) showing up in the Market? The chief cause of this problem is Android only displays applications it thinks will look right on your screen. It does this by reading the lcd.density setting. If this is set to 210 in startup.txt, then Android will display all applications. If it's set to 240 (which makes the screen display more applications without bars on the sides or other display problems), applications that are specified only for normal resolution devices will disappear. In order to get all apps back, change lcd.density to 210 and delete data.img, then connect to the market. How do I transfer my Contacts? Easiest way is to use Google Sync to transfer from WinMo to your Google account, and then Android automatically will sync from there (as long as you tell it to sync contacts from that account -- which is, I believe, the default). Otherwise, you can export from Outlook to csv (comma-separated values), and then import into your google contacts. Finally, a third method, avoiding both Outlook and Activesync (instead using PIM Backup) is here. Why does the LED in the D-Pad "breathe" when the phone is shut off? This is a little debugging tool to assure that the phone is actually sleeping (i.e. in full power collapse mode). Sometimes this doesn't work, and when the phone looks like it's off, it's actually in full power mode. If you're annoyed by it, you can remove the LEDEffects application from the AndroidApps folder, and that should disable it. Is there any way to stop the constant low battery warnings? In the startup.txt file, in the cmdline portion, add the text (without the quotes, separated from the other values by spaces) "htc_battery_smem.fake=1". This makes the phone think it's always connected to a charger, with the only effect being that it no longer complains about the battery dipping below 15%. My device crashes immediately after I run HaRET and it says 'Loading Linux'. A small number of phones (not phone models... just individual phones) have marginal memory. The default startup.txt contains an entry "acpuclock.force_turbo=1", which overclocks the memory. For most people, this leads to a small speed increase. For some, it makes the system unbootable. If you have trouble, just remove that part of the cmdline and try again. What are all these FSCK___.REC files in the root of my SD card? They are left by dosfsck, which checks the file system integrity of the sd card every time you boot. You can delete the files, or add the line "rm -f /sdcard/fsck*.rec" to your froyo.user.conf file in the CONF directory. It goes in at the end of the file, in the "custom_shells{" section. (Thanks to arrrghhh for this tip.) Last edited by makkonen; 09-07-2010 at 07:36 PM. |
This post has been thanked 34 times. |
|
||||
Tips and Tricks
Dual Boot
Now that most things work without initialization, the Gen.Y Dualboot app is a nice compliment to the Android installation. It short circuits the Windows Mobile boot and allows you to automatically boot HaRET without having to wait for WinMo to finish booting. It's not a true dual boot solution, but it's pretty slick. Logs for debugging Download debug.zip from this post. Extract it to your sd card (i.e. into a folder called /Storage Card/debug/). Then, after a crash, when windows boots up, go into /Storage Card/debug/ and launch haret.exe, then immediately quit. A file should appear in your debug folder called dmesg.txt. This file is the kernel log from the previous android session. It starts off with a bit of junk, and then has the messages the kernel has spit out during your session. The file's a bit messy, so you have to be a bit of a detective. Take note of the timestamps. If you have booted into android multiple times without fully shutting down the phone, it could write a new log over an old one, and wherever the new one ends, you'll start seeing the old data. (Generally between the new data and the old data there will be a jump in timestamps.) These logs might give you a hint as to what's causing your system to crash. Last edited by makkonen; 02-28-2010 at 06:46 PM. |
This post has been thanked 17 times. |
|
||||
Changelog
Update 2010-06-12: New All-in-One package. Supports RAPH500, RAPH800, RHOD400, RHOD500. Based on the latest xdandroid 2.1 aosp package. Solves the persistent boot loop issue (in an ugly manner, but no complaints here).
Update 2010-06-06 (2): When it rains, it pours. GPS now working, thanks go bzo. Grab the latest rootfs and give it a shot. Update 2010-06-06: Preliminary RAPH500 (Verizon) support. See this post. Update 2010-05-12: Trouble with the latest All-in-One package. If you're unable to boot (just loops endlessly, i.e. 15+ minutes, at the Nexus One X boot animation), follow instructions here for workaround.2010-05-11: New All-in-One package. 2010-05-07: New All-in-One package. 2010-03-31: New All-in-One package. 2010-03-19: New All-in-One package. Includes the newest kernel, modules, and rootfs. New kernel fixes the touchscreen 'double-tap' issue, and also enables NAT/Masquerading for purposes of ad-hoc wifi tethering. Package also includes a terminal app in the AndroidApps folder. If you've already got the old package, all you really need is the new kernel. 2010-03-12: Adding an All-in-One package to make the whole thing a little easier. If you've got a working install, you don't need to bother with this update. 2010-02-28: New package, new instructions. Everything's finally in line with the main xdandroid build. Power off/reboot works. Touchscreen is (marginally) improved. HW3D works without initializing in WinMo. 2010-02-18: New kernel. Re-enables power collapse (which has been non-functional for a while) and correctly reports charging/not charging. 2010-02-16: New kernel. Huge thanks to MrPippy (<-- Donation link -- show him some love if you can, he deserves it). He has finally sorted out the mic issue. It now works without any trickery. 2010-02-14: New kernel. Don't bother upgrading unless you really want to swap the Power (Home) and Center (Enter) buttons. If you do, grab this kernel, and add board-htcraphael-navi.alt_keypad=1 to your cmdline in startup.txt. 2010-02-09: Dropbox killed the file links -- excessive usage. Now on Mediafire. Hope it works. 2010-02-09: New package. Fixed Wifi (I hope). 2010-02-08: New package. Posting the whole blob now. This one has hardware 3d semi-working. 2010-02-04: New kernel/modules. CDMA data stability tweak and re-enabled power collapse. 2010-02-03: New kernel/modules. Enables the 2nd memory bank, giving ~80 more megs of available memory. And boy, is it sweet. Much faster. Also, there's a new XDANDROID package with touchscreen calibration built in, so I've removed the rootfs that was here. 2010-01-31: New kernel/modules/rootfs. Enables touchscreen calibration, as well as various stability improvements. If you have downloaded a modified eclair.user.conf from this thread, DELETE IT, and replace with the original from the XDAndroid package. On first boot, you will be asked to click five points on the screen. Click them very lightly and gingerly, as the touchscreen is hypersensitive. This will save a file, ts-calibration, to the sd card, which will maintain the touchscreen settings for subsequent boots. 2010-01-17 #2: New kernel/modules. Fixes audio, at the expense of the shutdown function no longer working. Small price to pay. Also might be more stable (reverted a line in the smd code that may have been causing crashes on my device). 2010-01-17: Updated eclair.user.conf. Touchscreen works quite well now. Download eclair.user.conf.txt, rename to eclair.user.conf, and replace the file in /Storage Card/conf/ 2010-01-16: New kernel/modules. Fixes keyboard. Includes a new, less jumpy touchscreen driver. New touchscreen driver requires calibration to be passed through the eclair.user.conf file, in /Storage Card/conf/. Replace yours with the one attached here. Also, some keyboard fixes require an updated startup.txt, also attached here. 2010-01-10: Oops. Last kernel broke cdma data. 2010-01-09: New kernel/modules. Makes battery status reporting actually work -- though it's still quite inaccurate. 2010-01-08: New kernel/modules. Adds battery status reporting. 2010-01-07: New kernel/modules added. Enables deep sleep/power collapse (see below). Updated instructions for Eclair. Last edited by makkonen; 06-12-2010 at 02:42 AM. |
This post has been thanked 18 times. |
|
||||
Re: Linux/Android on CDMA Touch Pro (RAPH800) - PRE-ALPHA (not yet usable)
Very nice, thanks for posting this. I've been playing around with it for awhile now this morning and am really enjoying Android. Have been wondering what I was going to switch to when I get a new phone and I think Android is gonna be it!
__________________
Sprint Touch Pro
Latest Stock Sprint Rom: http://www.htc.com/us/support/touch-...int/downloads/ Currently running: swinnROM 6.5 |
This post has been thanked 1 times. |
|
||||
Re: Linux/Android on CDMA Touch Pro (RAPH800) - PRE-ALPHA (not yet usable)
Downloading and testing out now. I can't wait till this gets more stable.
Question though, does the class of an SD card help with speed of the OS? I have a class2 and have heard a class4 is the better to use. |
This post has been thanked 1 times. |
|
||||
Re: Linux/Android on CDMA Touch Pro (RAPH800) - PRE-ALPHA (not yet usable)
are you aware the the android eclair 2.0.1 port is also available... Here
has anyone tried it, or are you all using the 1.6 Ill test out myself now and see how it goes... there are some positve feedback on it working on our raph 800's almost fully... we shall see I geuss |
This post has been thanked 1 times. |
|
||||
Re: Linux/Android on CDMA Touch Pro (RAPH800) - PRE-ALPHA (not yet usable)
great stuff boots fast sound works out my back speaker (speaker phone) going to try the data/sms when i go into town have bad service at the pad
awesome work speakers work can call people sms works wifi is kinda iffy people cant call me oh im running eclair2.01 data works also Last edited by makhaira211; 01-02-2010 at 09:35 PM. |
|
Tags |
android, donut, eclair, linux |
|
|