[ILUG] GPRS access via bluetooth on o2

Keith Davey mush_keithd at yahoo.co.uk
Mon Jul 5 11:05:32 IST 2004


Hi,

In case anyone is interested, I managed to connect via gprs on o2 over
bluetooth from Fedora Core 2.

Thanks to the docs at http://www.teaparty.net/technotes/blue-gprs.html
for pointing me in the right direction. This mail is mostly a summary of
what I read there and a few other places. The main difference is the O2
specific settings in the chat script, I'm sure someone else can say what
the vodafone/meteor version is.

To start with you need to see which bluetooth devices you can pick up.
To so this run:

#hcitool scan

You will see a list of found devices like this:
	00:60:57:6A:33:B2	phone

To be certain that your phone can do dial up networking over bluetooth
run:

#sdptool search DUN

This will give you a load of information about devices that support DUN
over bluetooth. If you see nothing then your phone probably doesn't do
it. I'm using a Nokia 7650 but I would guess most bluetooth phones can
do this.

You can also 'ping' the phone.

# l2ping 00:60:57:6A:33:B2

should get you a series of ping results.

The next thing reqiured is to create a device that the bluetooth modem
is connected to. This is done with the rfcomm tool.

You need to bind a channel on a bluetooth device to a /dev/ node entry.

To do this run:

#rfcomm bind 0 00:60:57:6A:33:B2 1

This will bind /dev/rfcomm0 to channel 1 of the bluetooth device. On FC2
the /dev/rfcomm0 entry was not setup, it can be added like this:

mknod /dev/rfcomm0 c 216 0

Now if you run:

#rfcomm show

You should see

rfcomm0: 00:60:57:6A:33:B2 channel 1 clean

When you first try to connect to the phone it will ask you for a pin,
you can pick anything, 1234 is fine.

At this stage you should be able to connect minicom to the device
/dev/rfcomm0 and talk AT commands to the phone. 

There are a couple of GPRS specific AT commands you need to call in
order to connect, and there are other I haven't looked at yet.

However, here is my /etc/ppp/peers/gprs2 script:

/dev/rfcomm0 57600
connect '/usr/sbin/chat -v -f /etc/ppp/chat-gprs2'
noauth
defaultroute
debug

And here is the /etc/ppp/chat-gprs2:

TIMEOUT         5
ECHO            ON
ABORT           '\nBUSY\r'
ABORT           '\nERROR\r'
ABORT           '\nNO ANSWER\r'
ABORT           '\nNO DIALTONE\r'
ABORT           '\nRINGING\r\n\r\nRINGING\r'
''              \rAT
TIMEOUT         30
OK              ATE1
OK              AT+cgdcont=1,"IP","open.internet"
OK              ATD*99***1#

These settings work for O2 anyway. 

You also want to set up 62.40.32.33 and 62.40.32.34 as DNS servers.

Now I can connect to GPRS by running:

#pppd call gprs2

When you disconnect you will the channel open to the device will be
closed. So you reconnect you need to do this:

#rfcomm release 0
#rfcomm bind 0 00:60:57:6A:33:B2 1
#pppd call gprs2

GPRS is billed per meg, so you can stay connected all day, just don't do
any big downloads.

Keith











More information about the ILUG mailing list