Setting up a Bigpond NextG wireless connection on Linux – Part 1

Recently, Telstra Bigpond have changed the pricing on their NextG broadband that makes it (gasp!) actually competitive if you have your mobile and home phone already with them. So, interested in having a postpaid wireless broadband/redundant Internet link for an all-up price of a couple of takeaway coffees a month, I go ahead and sign up.

Getting connected

A few days later, Bigpond send me a shiny new ZTE MF633BP USB modem. After some initial dealing-with-a-telco-what’s-new dramas with the account not being set up correctly I manage to register the account for the first time and get online using the ugly Bigpond connection manager running on a Windows XP laptop machine. Now that’s all nice and fine but I want it to work on Linux…

Some Internet sleuthing informed me that these modems default to “Windows CD driver” mode. The idea being that instead of shipping the modem with a Windows driver CD (which inevitably gets lost), the modem first appears as just a USB drive with the Windows driver on it so you install that first. After the Windows driver is installed, it will “flip” the modem out of CD driver and into modem mode.

The equivalent flip function on Linux is provided by usb_modeswitch. Apparently, the option kernel driver for USB modems also tries to set these devices to modem mode based on their USB ID. The problem is, many different ONDA/ZTE modems report the same USB IDs even though they have completely different flip commands. Net result – nothing happens. Argh!

Eventually, the modem got put back into the Windows machine, and after trawling through Device Manager to find the modem’s diagnostics serial port, I follow these instructions and permanently flip the device into modem mode.

AT+ZOPRT=5
AT+ZCDRUN=8
AT+CGDCONT=4,”IP”,”Telstra.Bigpond”,,0,0

modprobe the option kernel driver, pop the modem back into the Linux box and I’m rewarded on the console with signs of success:

usb 1-1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-1:1.1: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
option 1-1:1.3: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB2
option 1-1:1.4: GSM modem (1-port) converter detected
usb 1-1: GSM modem (1-port) converter now attached to ttyUSB3

(The on-board MicroSD adapter is detected as a removable SCSI disk)

Which serial port?

The modem presents two ttyUSB devices that we’re interested in. Both respond to AT modem commands.

The first, the diagnostics port, is designed for applications like the Bigpond connection manager to continuously poll the device’s online/offline status, band, mode, etc. The second port is the data port – this is the main port and one we’ll use with ppp later.

After trying all the ports in minicom I discover ttyUSB1 and and ttyUSB2

Port /dev/ttyUSB1

Press CTRL-A Z for help on special keys

at
OK
ati
Manufacturer: ZTE CORPORATION
Model: MF633BP+
Revision: M01 BP
IMEI: 3523…
+GCAP: +CGSM,+DS,+ES

How do we find the data port? The trick lies in the main difference between the two ports – the diagnostics port will not let a data connection be made on it. Using minicom, I send the standard *99# GSM/3G modem dialup command to both ports and watch what happens:

Port /dev/ttyUSB1

at
OK
atdt *99#
ERROR

Port /dev/ttyUSB2
at
OK
atdt *99#
CONNECT

Ah-ha! ttyUSB1 is my diagnostics port and ttyUSB2 is my data port.

Getting connected

From this point on, the modem can be set up like any other type of connection using a ppp dialer of choice. I prefer the command line and I use pppconfig. These are the basic details I used.

Port: /dev/ttyUSB2
Dialup number: *99***4#
Username/password: Bigpond details as signed up

Success!

I called my connection Bigpond (A flair for originality, eh?) so I issue the command

pon bigpond

and keep an eye on syslog:

pppd[1649]: using channel 12
pppd[1649]: Using interface ppp1
pppd[1649]: Connect: ppp1 <--> /dev/ttyUSB2
pppd[1649]: PAP authentication succeeded
pppd[1649]: Cannot determine ethernet address for proxy ARP
pppd[1649]: local IP address 121.221.x.x
pppd[1649]: remote IP address 10.64.64.65

Excellent.

In part 2, I’ll explain how I set up the new NextG connection to be a redundant Internet link with a bit of automatic fail-over and using the Linux Advanced Routing & Traffic Control HOWTO to make traffic go out via the same interface it came in through.

12 thoughts on “Setting up a Bigpond NextG wireless connection on Linux – Part 1”

  1. Thanks for posting this up Gavin. I recently got the same modem.
    The changes in Bigpond’s pricing is great, though whether it leads to congestion is a bit of a concern.

    Instead of the failover setup I’m looking at load balancing this with a sat connection in order to have something approaching a half decent rural connection that doesn’t cost a fortune.

    I’m currently leaning toward the DIY linux box as a load balancing solution so your article was very informative. At least I know it’s possible now. Also on the table is the Draytek Vigor 2820 or a mikrotik routerboard (433UAH).

    I can’t get a landline connected so was looking at using QoS with VOIP through the Bigpond connection. So if all goes well I’ll have phone plus a reasonable amount of bandwidth and once shaped a minimum of 2 x 64kbit connection for less than $100 month. Which is about as good as it gets in the sticks. God I miss ADSL!

    Anyway, looking forward to part 2.

  2. These instructions also appear to work for the ZTE MF626 modem (Telstra Pre-Paid Wireless Broadband)

    You need to close the Telstra Turbo connection manager before you connect to the diagnostic serial port with Putty or Hyperterminal to take it out of CD mode.

    Follow these instructions to unlock the modem for free.

  3. I don’t suppose you’ve had any luck getting yours to send an SMS? I plugged in a 3 Huawei device the other day, sent messages in about a minute, but this ZTE nightmare device has taken away hours of my life and still can’t send a thing.

  4. Mine fails w/gammu, wammu and smstools. If it’s working for you, then at least I know that it _should_ work then 🙂 I’ll get on to the bigpond support team tomorrow.

    I’m looking forward to your next post, by the way, as that’s what I’d like to be doing with this device as well. It will be attached to a monitoring server, and I’d like to automatically fail over to use the ZTE for monitoring (and email notification) if the ADSL goes down.

  5. Sounds about right. Returning the device tomorrow – not fit for purpose.

  6. For anyone wanting to use a notebook computer with an on-board wireless broadband modem, instead of an external USB modem:

    I have a Toshiba Portege R600 notebook, which has a built-in 3g wireless broadband modem. This means I don’t need to use the USB modem supplied by Bigpond. I just need a SIM card, which plugs into a slot in the notebook, behind the battery.

    I signed up for a wireless broadband account with Bigpond, and then removed the SIM card from the USB modem, and plugged the SIM card into the notebook. However, I could not get this SIM card to work with the on-board modem. Eventually I found out that the Bigpond SIM’s only work with a Bigpond USB modem.

    The trick is, however, that SIM’s provided by Telstra (as opposed to Bigpond) DO work in another modem.

    “But”, I hear you cry, “Bigpond is part of Telstra, so what’s the difference?” I’m afraid I don’t know – all I know is that you can get SIM cards from both Bigpond and Telstra, and they are not the same!

    I returned the SIM card and USB modem to Bigpond, then signed up for a mobile broadband account with Telstra. The Telstra SIM card works perfectly in the Toshiba notebook – and I saved $229 on a USB modem!

    So if you want a mobile broadband account but don’t need to use the USB modem supplied by the ISP, make sure you sign up with Telstra, not Bigpond.

    Note: I have a wireless broadband account from Telstra Business (you need to quote an ABN number). I’m not sure if a private individual, without a business, can sign up for a Telstra Business account.

  7. Forgot to add:

    Using a Linux system too (Ubuntu 10.10). Ubuntu recognises both the USB modem and the on-board modem “out the box”. Connects straight away, no hardware configuration required. Easy as.

Leave a Reply