Using Optus 3G with Linux

This document briefly describes how to set up Linux to use Optus Australia's 3G network with Linux. I used an Optus branded GlobeTrotter 3G Quad PCMCIA card. The model is written on the underside of the card.

The pppd configuration is pretty easy once you know the correct settings. This article does not cover the mobile IP features you get using the Windows based drivers and software. This is a simpler PPP "dialup" configuration.

The Basics

You first need to ensure that the card is recognised by your Linux machine. Plug it in, the lights should flash for a while and settle down to a single blue light flashing.

The card provides a USB hub and 4 USB serial ports! We only use the first one.

The hotplug framework of your distribution should load the 'option' and 'usbserial' drivers automatically. When the card is plugged in you should see /dev/ttyUSB[0-4]. This works out of the box on at least Fedora Core 4 and 5, and should work on most modern Linux distros.

If this step doesn't work for you then try the advice at the PHARscape GlobeTrotter HOWTO.

PPP Options

To establish a connection, pppd is used. The PPP connection is actually between your machine and the card. The PPP protocol isn't used over the 3G network.

Create a file called /etc/ppp/peers/optus-3g and with the following content:

/dev/ttyUSB0
460800
lock
crtscts
modem
noauth
defaultroute
user guest
password guest
connect "/usr/sbin/chat -V -f /etc/ppp/chat-optus-3g"
noipdefault
usepeerdns
nobsdcomp
novj

The username and password don't matter at all. Any values here will work.

nobsdcomp and novj are important. The card doesn't support compression.

Chat Script

Now create /etc/ppp/chat-optus-3g. This specifies the AT commands sent to initiate the connection.

ABORT BUSY
ABORT 'NO CARRIER'
ABORT ERROR
REPORT CONNECT
TIMEOUT 10
"" "ATZ"
OK "AT&F"
OK "AT_OPSYS=1"
OK 'AT+CGDCONT=1,"IP","connect"'
SAY "Calling...\n"
TIMEOUT 120
OK "ATD*99***1#"
CONNECT \c
The important bits here are:
  • AT_OPSYS=1 - use 3G only (no fallback to 2G)
  • AT+CGDCONT=1,... - specifies the Access Point Name (APN) to use ("connect" in this case). This is critial.
  • ATD*99***1# - "Dial" to establish the connection. Only this specific phone number works.

Starting pppd

Now start pppd using:

pppd call optus-3g debug nodetach dump

You should see a dump of the pppd options being used, the setup conversation (AT commands) and then the PPP negotiation. Try the link out then hit CTRL-C to drop the connection. Once you're happy with the config you can start pppd in the future without the debug nodetach dump options.

More Information

Return to Top
Page last modified Wed Sep 24 14:45:52 2008.