[Xoom Android Development] lowtraxx:
Disclaimer: with easy I mean easier than I thought, it still a risk involved and ATM you will loose your installed programs. I am not responsible if this bricks your device, kills your cat or starts World War 3!

Update 12: Signal strength Display now works (On 3.2 for now). So have a look here and have fun.

Update 11: This thread is obsoleted by the fully flashable 3.2 update.zip you can find here

Update 10: Seems like you do not need (some users even point out that you shouldn't as it caused them FCs) to copy the ressources if you use the AU-Images. You can add you APN manually. You should copy the build.prop, if you want to use regional features of your device, as I think that market and other apps pull information out of it. Also as mcfish pointed out, you have to re-root afterwards by pushing su and Superuser.apk back to the Device with adb.

Update 9: Thanks to Simba90 there is now a complete set of working instructions to get the AU images on your XOOM with Nandroid. Read here

Update 8: I now extracted the AU images and put them in the thread here along with instructions how to apply them. You will loose all your data if you do that, but you will have a working UMTS 3.1 on your XOOM, which shows the right Signal Strength and you can run American Applications like Books on it. Follow the instructions in the thread to the letter and then copy the databases and the frankenrom as described here and voila it works. I dont know if I will build a hybrid of those two anymore or just try to build from the AU Release only, but I will tell you about my experiences here.

Update 7: It seems that with Tiamat 1.4.4 the 3G Blackouts some Users experience are less likely (and in my case gone for the last 9 days). Now that we have the Deodexed Version from here I will experiment a little and maybe I can switch out some of the system apps so that we finally get the Signal Strength displayed right.

Update 6: Seems the pushing of the telephony db did not help after all. I had the 3G Data loss again today, but luckily I did not reboot and still have it that way. So I can now analyze further. The tool I wrote to give out the network stats pointed me in the direction, that the telephony manager is gone, because it only reports null stats. I will investigate and we'll see, maybe I can find a final fix for that issue.

Update 5: Some users (including me) have had 3G breaking down sometimes. In case that happend, you did not see any network indicator and internet was gone. Once that happend and you opened the APN-Settings, all APNs were gone. I now think I have a remedy for that. I pushed the telephony.db and the telephony.db-journal from my backup and now I have it working for 3 consecutive days without a hiccup (except that one time the network Indicator was gone, but the internet was still there and a few minutes later the indicator was back). Pushing the db files goes like that:

adb push telephony.db /data/data/com.android.providers.telephony/databases/telephony.db
adb push telephony.db-journal /data/data/com.android.providers.telephony/databases/telephony.db-journal

After that it should work. The only remaining issue now is that the Network Signal Strength is not displayed properly. I wrote a little app to test all the Information you can get from the Telephony API, but from there the Signal Strength and Network Type are displayed properly. So this seems to be only a Display Issue in the Status Bar. If you have this display bug you only have half the network strength displayed and 0 dBm 4 asu in Settings -> About Tablet -> Status -> Signal Strength. I now am sure that this is only a Display and not a Network Issue. I tried 3.0.1 and 3.1 on different places with different types of networks and the Signal strength and download capacity were the same.

Update 4: As an Idea, if you have your settings.db files and your build.prop from your vanilla 3.0.1 (and your frankenbuild works with them) you could send it to me with the name of the Provider and the XOOM Type and I could build a database in this post where users could get those files to flash their XOOMs. Tell me what you think.

Update 3: Always try to use the db files from your own device or a device from the same country/provider, I am not sure if they differ from country/provider to country/provider. Also be sure to disable PIN lock before starting the device the first time with 3.1. And if you have 3G working and want to use another kernel, be aware, as it seems one member had problems flashing the Tiamat kernel and loosing WiFi. (I used Tiamat Version 1.4.2 -- 1.5 Ghz Overclock for Honeycomb 3.1 Only and it worked)

Update 2: As I saw the question pop up if you can flash a custom kernel after this procedure. Yes you can. I am using Tiamat with 1.5 OCed from http://xdaforums.com/showthread.php?t=978013

Update: If you pull the databases you can test if they are healthy by using sqlite. In case of settings.db and telephony.db the tables command should show the tables in the db. If it shows the error message something went wrong. I dont know what the wal and shm files are for, but they can not be opened by sqlite.

sqlite3 settings.db
SQLite version 3.7.5
Enter ".help" for instructions
Enter SQL statements terminated with a ";"

// In the error case it displays
sqlite> .tables
Error: database disk image is malformed

// if it is okay it shows
sqlite> .tables
android_metadata bookmarks system
bluetooth_devices secure

Prereq:

Unlocked and rooted Euro XOOM with clockwork recovery and PIN entry for you SIM Card disabled (Some users report that if PIN is enabled there is no 3G as it seems that the PIN Entry Util is not part of the CDMA packages)

Instructions:

1. Get the needed files

There are two ways to do this, the first one (a) was used by me, and is the one I can tell you it works for sure. The second one (b), I think should also work, but I havent tested it. I think some of the members who postet here have, though.

a. Make a nandroid Backup and copy data.img from that backup to your PC. Then unyaffs it.

(If you want to build your own build prop you need system.img as well)

unyaffs data.img

// Only if you need your own build.prop
unyaffs system.img

b. Get the needed files with adb.

(You need root and read permission for that)

adb remount
adb pull /data/data/com.android.providers.settings/databases/settings.db settings.db
adb pull /data/data/com.android.providers.settings/databases/settings.db-wal settings.db-wal
adb pull /data/data/com.android.providers.settings/databases/settings.db-shm settings.db-shm
adb pull /data/data/com.android.providers.telephony/databases/telephony.db telephony.db
adb pull /data/data/com.android.providers.telephony/databases/telephony.db-journal telephony.db-journal

// This step is only necessary if you want to build your own build.prop
adb pull /system/build.prop build.prop

2. Flashing 3.1

Flash the 3.1 US image from http://xdaforums.com/showthread.php?t=1074609 following the Guide with all steps (even the ones in red which it says are only for verizon) but skipping Step 1 (flashing the recovery)

3. Frankenrom build.prop

There are two ways to get a working build.prop

a. Download the build prop from http://toshsoft.de/xda/build.prop.frankenrom and copy it to your device

adb push build.prop.frankenrom /system/build.prop

b. Build your own build.prop. To do this first remove all the lines starting at

# RIL and telephony related settings

to the point where the OpenGL string starts and replace them with the same lines in the build.prop you copied from the unyaffed system.img. Then comment out the line with

ro.cdma.otaspnumschema

4. Push the Stuff back

Push all databases from /data/data/com.android.providers.settings/databases/ from the data.img backup (Those are - settings.db settings.db-shm settings.db-wal telephony.db telephony.db-journal) and the new build.prop to your device.

adb remount
adb push settings.db /data/data/com.android.providers.settings/databases/settings.db
adb push settings.db-wal /data/data/com.android.providers.settings/databases/settings.db-wal
adb push settings.db-shm /data/data/com.android.providers.settings/databases/settings.db-shm
adb push telephony.db /data/data/com.android.providers.telephony/databases/telephony.db
adb push telephony.db-journal /data/data/com.android.providers.telephony/databases/telephony.db-journal
adb push build.prop /system/build.prop

5. Finishing up and rebooting

Et voila, after a reboot everything works. (including books)

adb reboot

Proof: