My Treo 600 has never had good voice quality and the past week or two has started crashing when wireless is used, so I picked up a 2-month-old Cingular/AT&T Treo 650 off of Craig's List. In the US, smart phones are mostly sold by carriers who are hellbent on locking their customers into their own revenue streams, which means most cellphones on the market are "locked" to a particular carrier and some of the functionality, like the ability to use the cellphone as a wireless modem over bluetooth, are deliberately crippled. [Update: apparently, both Cingular and Sprint have now uncrippled this feature — good for them.] The previous owner of my phone had already finagled an unlock code, so my phone can be used with any GSM carrier just by inserting a new SIM card, but it was still running the Cingular-branded ROM. This weekend's project has been to replace it with the generic unbranded Palm-OS ROM — which turned out to be much more difficult than I had expected. Below are some notes on the process, intended mostly for people searching Google after running into the same troubles I did.
Note: All the instruction sheets I've run into warn that trying to upgrade your firmware to the generic version can be difficult and may very well ruin your Treo completely. Attempt at your own risk.
I started by following the instructions at Uneasy Silence, with help from a description at Treonauts. The upgrade is a two-step process: first you need to upgrade to the beta version of the unbranded firmware & software (1.23 & 1.06), and then to the current 1.28/1.13 versions. That's because all versions since 1.23 now check to see if you've got a branded ROM already, and refuse to upgrade if you do.
The first attempt to upgrade to 1.23 ran through the steps but then ended with an error message, leaving me in an odd indeterminate state. My phone's firmware showed up as 1.23 and the software version showed "Treo650-1.06/2078-..." with the last part of the version not fitting onto the info screen. I think the missing part was ROW, the ID for the unbranded-Treo version of the OS, but the phone still showed the Cingular logo on reset. The phone was also somewhat flakey in this state, with hotsync not working from the cable and other attempts to upgrade to 1.28 resulting in the cryptic error ""Different partition detected. Hotsync installer cannot be used. To upgrade your device, use the SD installer." It took me a while to recognize that the upgrade had only partially succeeded and to redo the 1.23 upgrade process a second time, but once I did the phone showed the generic Treo logo on reset.
Upgrading to the 1.28 firmware and 1.13 software was harder, and I still have no idea what the problem was. If I were running Windows I'd just run an EXE file, but since I'm using Mac OSX the official instructions say to hotsync to load 44 files, at which point the upgrade program would run. I forgot to bring my hotsync cable with me for Thanksgiving break, so I tried hotsyncing via Bluetooth instead. Unfortunately, the phone continued to reboot in the middle of the hotsync, try running the update software with incomplete files, then complain "There is not enough memory available to complete this operation." (I suspect this error message is spurious — it came up in all sorts of situations.) Copying the 44 files onto an SD card, transferring them to the phone using Launcher X and then doing a soft reset led to the same error, as did transferring only the DB files over using the SD card and using the normal Bluetooth hotsync to transfer the program files. Running the "DeviceConfiguration" program directly from SD card gives an error about not being able to find its scenario files.
What eventually worked was this:
If this weren't a new phone, at this point I'd have used hotsync or BackupBuddy to restore all my data to the phone (you did make a backup before starting, right?).
I have no idea why this worked when nothing else did — for all I know the planets were just in alignment this time and my particular method didn't matter one bit. If this helps or works for you, great! Let me know in comments! If if doesn't work feel free to leave comments too — I won't be able to help, but I'll a least sympathize.
Update 11/26/05: After searching around a little more I see that Sprint and Cingular both used to cripple Dial-Up Networking (DUN), but apparently Cingular enabled it in February and Sprint enabled it in June.Posted by bug to Hacks at November 26, 2005 4:38 PM | TrackBack