How to Use the Bluetooth Dial Up Networking Hack

Intro:

When PalmOne released the Treo 650 smartphone for Sprint PCS and Cingular, they had to obey the carries requests to disable the DUN (Dial Up Networking) profile for bluetooth. Why they did this is a matter of debate, but regardless the functionality was already there. They just disabled it. Thus I set out of figure out how they disabled it and how to fix it.

Once digging threw the files in the 650's ROM I quickly found the "btmanager" overlays which showed the DUN option proving that it was built in. I then referenced the control to the "btmanager.prc" code and found where it was called. While tracing threw I found a subroutine that did nothing other than "hide" the control. So I just eliminated the two calls to this routine by "NOPing" them.

How to Install it

If you want to see what the "Bluetooth" app currently looks like, start it and turn bluetooth on. You should see:

Now you are going to need the patched btmanager file, get it at the bottom of http://shadowmite.com/p-f.html.

Before you go any farther now, pull the battery cover on the phone and do a soft reset. (This avoids trouble later) Now that you have the file, you need to get it to the phone's ram. The catch is you can not hotsync it over as this is a protected file. You need to use one of two methods (although I am sure there are others):

Method 1: Email the file to yourself, then check your email with Versamail on the 650. Save the attachment to RAM.
Method 2: Copy the file to a SD card, then insert the SD card in the phone and use a file utility like "filez" to copy to ram.

Now once again, do a soft reset on the phone. At this point it should be working, so let's check! Go to the home screen and run the "Bluetooth" application. Once you turn Bluetooth on you should see:

There it is! You now have the Dial up networking option enabled! From here what you need to do will vary to be able to use it. Every different computer bluetooth adaptor has different ways of doing things, but most also include a manual about how to use them. I'll continue with some general instructions that will hopefully get you moving in the right direction:

First off you need to start whatever your bluetooth program is, and get it to look for bluetooth devices. Once it finds the Treo you want to search for the services it offers. You should find the Dial Up Networking service! (If you only find the Object Exchange service, pull the battery cover and do a soft reset, this sometimes happens). Once you have found the service, most bluetooth adaptor software will allow you to "create a dialup".

For Sprint:
Username: "your vision username@sprintpcs.com"
Password: "your vision password"
(If you don't know those contact sprint tech support and they will help)
Phone number: #777

For Verizon:
Username: "your phone number@vzw3g.com"
Password: vzw
Phone Number: #777"

For Cingular:
Username: WAP@CINGULARGPRS.COM
Password: CINGULAR1
Phone Number: **99***1#

And that should do it! If you have problems figuring out your bluetooth software simply find your documentation or call the maker of your computer/adaptor. If you still need help, please post in the forum here or at TreoCentral.com.

Some links to help you out:
For more MAC help: http://vocaro.com/trevor/treo-dun/
For more Windows help: http://discussion.treocentral.com/showthread.php?t=63250&page=17&pp=20


Troubleshooting Common Problems

When attempting to use this hack, a variety of problems have come up from different users.

Problem: After installing the hack, when I click on "Setup Devices" the phone reboots.
Answer: This has happened to many people, and seems to be a easy workaround. Simply use a file manager to delete the "btmanager.prc" file from ram, then setup your bluetooth devices, then re-install the file.

Question: How do I delete this hack?
Answer: Simply use a file manager to delete the file "btmanager.prc" from ram. The one in rom will take over again.

Problem: I enabled DUN and then turned the phone off, now it doesn't want to turn on!
Answer: This is a bug in the DUN implementation, you must turn it off when not using it or weird things like this happen.

Problem: When attempting to turn on or off DUN I get a Translib error.
Answer: This almost always means you are already connected to Vision. Do a soft reset and try again. In the future do not try to change the DUN state while Vision is connected.

Enjoy!