Carrier and PPP Configuration for "3" MobileBroadband on Ubuntu Dapper Drake

This is a follow up article on my experiences connecting to "3" MobileBroadband in Australia with Ubuntu Dapper Drake 6.06.

You can read the first part here.

APN

For the Merlin XU870 to make a packet-switched data connection (ie. broadband), I needed to assign the username, password, and APN (Access Point Name). For the "3" network, the APN is "3netaccess", and the username and password are both blank.

Fire up minicom, point it to /dev/ttyUSB0, and the command is

at+cgdcont=1,"IP","3netaccess"

This only needs to be done once, and it is stored in the card (or the SIM) across reboots. However, if you also use other programs (or Windows) with your card, this may change the APN to something else.

PPP Configuration

Information on how to configure PPP can be found elsewhere, and is beyond the scope of this article. I'll just post up the contents of my relevant files for reference.

/etc/ppp/peers/three

/dev/ttyUSB0
debug
crtscts
local
holdoff 5
connect "chat -v -f /etc/chatscripts/three_chatscript"
usepeerdns
defaultroute
persist
lcp-echo-interval 0

/etc/chatscripts/three_chatscript

ABORT "BUSY"
ABORT "NO CARRIER"
"" "at"
OK "atd *99#"
CONNECT "\d\c"

To bring up the connection, just type ...

pppd call three

and wait a few seconds.

Hotplug using udev

Ubuntu Dapper Drake uses udev for hotplugging. It is possible to have the connection be automatically brought up upon insertion. I'll just list my udev file, and others can modify to suit.

/etc/udev/rules.d/99-three_wireless.rules (type this all in one line)

ACTION=="add", SYSFS{idProduct}=="1430", SYSFS{idVendor}=="1410", KERNEL=="ttyUSB0",
RUN+="/bin/sh -c 'killall -INT pppd; sleep 2; /usr/sbin/pppd call three'"

This udev rule says ... When a device with idProduct 1430 and idVendor 1410 (which is the Merlin XU870) is added AND ttyUSB0 is created, then run 'killall -INT pppd; sleep 2; /usr/sbin/pppd call three'.

I needed to insert the sleep otherwise PPP starts up too quickly and the card is not ready yet. The killall is just to terminate any PPP's which are still lying around.

Someone else may have a better solution to this.

Performance

I've been using the wireless broadband for a couple of days now and it's all fine. The ping latency is a bit high but not terribly so. It just means that it takes an extra hundred or so milliseconds to browse a new website - not a big deal. It's definitely not suitable for gaming.

Throughput is bursty. I've seen it as low as 5 kB/s, but most of the time it's easily above 20 kB/s, and tends to reach 40 kB/s when I'm measuring it. The fastest I've measured is perhaps a peak of 46 kB/s. This is close to the theoretical 384 kbps until "3" upgrades to HSDPA (supposedly by the end of this month).

Comments

nice!

nice article