How to use the cell phone to establish a dial-up networking connection

blackberrymobile phonemodempppserial port

I am using Windows 7 and have a BlackBerry with T-Mobile (U.S.). I have paired the phone with my computer over Bluetooth, which automatically creates a serial port for it. I am able to open the port in PuTTY and successfully issue AT commands to the modem, including dialing. However, while using Windows to create and establish a Dial-Up Networking connection, I get an error dialog stating "Error 678. The remote computer did not respond."

In my testing, I also tried setting up a connection to dial a number connected to a phone. When attempting to connect over this connection, the phone does ring but the very moment I answer the call, my computer displays the above error dialog.

What must be done to successfully establish such a PPP connection? Some special AT initialization string perhaps?

To clarify, I'm not referring to the well-described and popular technique known as "tethering," in which the remote host of the data link is the mobile service provider. I am interested specifically in establishing direct data links with remote hosts other than my mobile service provider. Think old-school landline connection to your friend's computer or BBS.

Edit 1
As grawity pointed out in comments, the missing piece of the puzzle is the actual modulator that is compatible with v-series protocols, which I expected to be built into the cellphone. So far the best only software alternative I could find is this experimental project.

Edit 2
Found this forum discussion today. The participants state that there is no old-school modem in the BlackBerry.

Edit 3
When I place a call in PuTTY with ATD, immediately after the call is answered (and the callee is initiating the handshake) the cellphone returns OK. This is not the expected behavior for establishing a data connection. The phone should reciprocate the handshake, and upon success return CONNECT. (Alternatively it should return BUSY or NO CARRIER, but never simply OK.) Windows DUN must be interpreting this as the "Error 678" I was seeing.

Best Answer

Cell phones sometimes expose their data connection as an old AT-style modem. I'd say on older cell phones this is going to work closer to how you'd expect, i.e. you put the phone into modem mode, you either connect A) an actual serial cable (or a proprietary cable that exposes the UART pins on the phone), B) a USB cable that's functioning as a COM port, or C) a Bluetooth virtual COM port, and use it just as you would a normal external serial modem.

So the AT conversation you are having, which is not working, is the AT command interface bolted on to the cell phones data connection. Presence of an AT command interface does not automatically mean you are talking to a device that does analog-style modulation/demodulation. Many phones used to do this. With most Android phones now supporting RNDIS/USB over Ethernet it's not very necessary anymore and I'm not sure if many do or the current state of this.

As an aside, I think there are extensions to the AT command set to specifically support cell phones sharing data via this interface, and even to support things like SMS.

No cellphone does the analog-style modulation/demodulation that an analog modem does natively that I've ever heard of. You might be able to get softmodem or similar working on an Android device if you cross-compile it for ARM, but I don't know if there is any application like that for Blackberry; I highly doubt one exists.