{"id":41,"date":"2010-01-28T23:04:48","date_gmt":"2010-01-28T15:04:48","guid":{"rendered":"http:\/\/vk6hgr.echidna.id.au\/blog\/?p=41"},"modified":"2010-01-28T23:24:35","modified_gmt":"2010-01-28T15:24:35","slug":"setting-up-a-bigpond-nextg-wireless-connection-on-linux-part-1","status":"publish","type":"post","link":"https:\/\/vk6hgr.net.au\/blog\/?p=41","title":{"rendered":"Setting up a Bigpond NextG wireless connection on Linux &#8211; Part 1"},"content":{"rendered":"<p>Recently, Telstra Bigpond have changed the pricing on their NextG broadband that makes it (gasp!) <a href=\"http:\/\/www.bigpond.com\/internet\/plans\/wireless\/plans-and-offers\/\">actually competitive<\/a> 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.<\/p>\n<p><!--more--><\/p>\n<p><strong>Getting connected<\/strong><\/p>\n<p>A few days later, Bigpond send me a shiny new <a href=\"http:\/\/www.zte.com.au\/main\/MF633BP.htm\">ZTE MF633BP<\/a> USB modem. After some initial dealing-with-a-telco-what&#8217;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&#8217;s all nice and fine but I want it to work on Linux&#8230;<\/p>\n<p>Some Internet sleuthing informed me that these modems default to &#8220;Windows CD driver&#8221; 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 &#8220;flip&#8221; the modem out of CD driver and into modem mode.<\/p>\n<p>The equivalent flip function on Linux is provided by <a href=\"http:\/\/www.draisberghof.de\/usb_modeswitch\/\">usb_modeswitch<\/a>. Apparently, the option kernel driver for USB modems <em>also<\/em> tries to set these devices to modem mode based on their USB ID. The problem is, many different ONDA\/ZTE modems <a href=\"https:\/\/lists.one-eyed-alien.net\/pipermail\/usb-storage\/2008-December\/004260.html\">report the <em>same<\/em><\/a> USB IDs even though they have completely different flip commands. Net result &#8211; nothing happens. Argh!<\/p>\n<p>Eventually, the modem got put back into the Windows machine, and after trawling through Device Manager to find the modem&#8217;s diagnostics serial port, I follow <a href=\"http:\/\/www.zte.com.au\/downloads\/USB_Modem_Config_Procedure.pdf\">these instructions<\/a> and permanently flip the device into modem mode.<\/p>\n<blockquote><p>\nAT+ZOPRT=5<br \/>\nAT+ZCDRUN=8<br \/>\nAT+CGDCONT=4,\u00e2\u20ac\u009dIP\u00e2\u20ac\u009d,\u00e2\u20ac\u009dTelstra.Bigpond\u00e2\u20ac\u009d,,0,0\n<\/p><\/blockquote>\n<p>modprobe the option kernel driver, pop the modem back into the Linux box and I&#8217;m rewarded on the console with signs of success:<\/p>\n<blockquote><p>\nusb 1-1: GSM modem (1-port) converter now attached to ttyUSB0<br \/>\noption 1-1:1.1: GSM modem (1-port) converter detected<br \/>\nusb 1-1: GSM modem (1-port) converter now attached to ttyUSB1<br \/>\noption 1-1:1.3: GSM modem (1-port) converter detected<br \/>\nusb 1-1: GSM modem (1-port) converter now attached to ttyUSB2<br \/>\noption 1-1:1.4: GSM modem (1-port) converter detected<br \/>\nusb 1-1: GSM modem (1-port) converter now attached to ttyUSB3\n<\/p><\/blockquote>\n<p>(The on-board MicroSD adapter is detected as a removable SCSI disk)<\/p>\n<p><strong>Which serial port?<\/strong><\/p>\n<p>The modem presents two ttyUSB devices that we&#8217;re interested in. Both respond to AT modem commands.<\/p>\n<p>The first, the <em>diagnostics<\/em> port, is designed for applications like the Bigpond connection manager to continuously poll the device&#8217;s online\/offline status, band, mode, etc. The second port is the <em>data<\/em> port &#8211; this is the main port and one we&#8217;ll use with ppp later.<\/p>\n<p>After trying all the ports in <em>minicom<\/em> I discover ttyUSB1 and and ttyUSB2<\/p>\n<blockquote><p>\nPort \/dev\/ttyUSB1<\/p>\n<p>Press CTRL-A Z for help on special keys<\/p>\n<p>at<br \/>\nOK<br \/>\nati<br \/>\nManufacturer: ZTE CORPORATION<br \/>\nModel: MF633BP+<br \/>\nRevision: M01 BP<br \/>\nIMEI: 3523&#8230;<br \/>\n+GCAP: +CGSM,+DS,+ES\n<\/p><\/blockquote>\n<p>How do we find the data port? The trick lies in the main difference between the two ports &#8211; 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:<\/p>\n<blockquote><p>\nPort \/dev\/ttyUSB1<\/p>\n<p>at<br \/>\nOK<br \/>\natdt *99#<br \/>\nERROR\n<\/p><\/blockquote>\n<blockquote><p>\nPort \/dev\/ttyUSB2<br \/>\nat<br \/>\nOK<br \/>\natdt *99#<br \/>\nCONNECT\n<\/p><\/blockquote>\n<p>Ah-ha! ttyUSB1 is my diagnostics port and ttyUSB2 is my data port.<\/p>\n<p><strong>Getting connected<\/strong><\/p>\n<p>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 <em>pppconfig<\/em>. These are the basic details I used.<\/p>\n<p>Port: \/dev\/ttyUSB2<br \/>\nDialup number: *99***4#<br \/>\nUsername\/password: Bigpond details as signed up<\/p>\n<p><strong>Success!<\/strong><\/p>\n<p>I called my connection <em>Bigpond<\/em> (A flair for originality, eh?) so I issue the command<\/p>\n<blockquote><p>\npon bigpond\n<\/p><\/blockquote>\n<p>and keep an eye on syslog:<\/p>\n<blockquote><p>\npppd[1649]: using channel 12<br \/>\npppd[1649]: Using interface ppp1<br \/>\npppd[1649]: Connect: ppp1 <--> \/dev\/ttyUSB2<br \/>\npppd[1649]: PAP authentication succeeded<br \/>\npppd[1649]: Cannot determine ethernet address for proxy ARP<br \/>\npppd[1649]: local  IP address 121.221.x.x<br \/>\npppd[1649]: remote IP address 10.64.64.65\n<\/p><\/blockquote>\n<p>Excellent.<\/p>\n<p>In part 2, I&#8217;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 &#038; Traffic Control HOWTO to make traffic go out via the same interface it came in through.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>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 &hellip; <a href=\"https:\/\/vk6hgr.net.au\/blog\/?p=41\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Setting up a Bigpond NextG wireless connection on Linux &#8211; Part 1&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,10],"tags":[],"class_list":["post-41","post","type-post","status-publish","format-standard","hentry","category-linux","category-technical"],"_links":{"self":[{"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=\/wp\/v2\/posts\/41","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=41"}],"version-history":[{"count":28,"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=\/wp\/v2\/posts\/41\/revisions"}],"predecessor-version":[{"id":69,"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=\/wp\/v2\/posts\/41\/revisions\/69"}],"wp:attachment":[{"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=41"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=41"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vk6hgr.net.au\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=41"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}