I recently asked the list about roaming wireless broadband. Based on what people said, I chose 3's product. I've finally got it going on Ubuntu - I thought I'd write a mini-howto.
Many thanks to everyone for their replies, and especially Joseph Goncalves, who helped me off list. I haven't had time to fully test the 3 connection on Linux, but if it's anything like it's been on my Winblows laptop, it rocks - especially compared to my previous Hel$tra evdo/cdma modem. I'm not a ppp expert, so any comments/corrections appreciated. HOWTO setup Novatel Merlin XU870 for 3's wireless broadband, on Ubuntu ====================================================================== Two other websites may be useful: [1] http://samat.org/weblog/20070127-high-speed-cellular-wireless-modems-in-ubuntu-linux-6-10.html [2] http://www.novatelwireless.com/support/merlin-xu870-linux.html Compile the Airprime drivers into your kernel, using the instructions at [1], or upgrade/install Ubuntu Feisty (7.04) or later - the drivers are included in the kernel. If you upgrade, check that your kernel has been upgraded to 2.6.20 or later: $ uname -r 2.6.20-15-386 Open several terminal windows. In one of them, follow /var/log/messages: $ tail -f /var/log/messages Insert the modem into your laptop. You should get lines like this showing the airprime driver being loaded (a full log file is included at the end of this howto). May 4 13:01:39 localhost kernel: [ 2707.948000] airprime 5-1:1.0: airprime converter detected May 4 13:01:39 localhost kernel: [ 2707.948000] usb 5-1: airprime converter now attached to ttyUSB0 Copy this file to /etc/ppp/peers: $ ls -al /etc/ppp/peers/3 -rw-r----- 1 root dip 196 2007-05-04 13:26 /etc/ppp/peers/3 $ cat /etc/ppp/peers/3 debug 10 /dev/ttyUSB0 230400 crtscts holdoff 1 connect "/usr/sbin/chat -v -f /etc/chatscripts/3" asyncmap 00000000 user 3netaccess password 3netaccess usepeerdns defaultroute lcp-echo-interval 0 Copy this file to /etc/chatscripts/3 $ ls -al /etc/chatscripts/3 -rw-r----- 1 root dip 105 2007-05-04 13:24 /etc/chatscripts/3 $ cat /etc/chatscripts/3 ABORT "BUSY" ABORT "NO CARRIER" "" "at" OK 'AT+CGDCONT=1,"IP","3netaccess"' OK "atd *99#" CONNECT "\d\c" In another terminal window, connect using pon: $ pon 3 If you connect OK, you'll see log messages like this: May 4 13:27:00 localhost pppd[9247]: Connect: ppp0 <--> /dev/ttyUSB0 May 4 13:27:01 localhost pppd[9247]: CHAP authentication succeeded Here's a full set of log messages, showing the modem being connected, running pon, then disconnecting using poff: May 4 13:01:34 localhost kernel: [ 2703.564000] pccard: CardBus card inserted into slot 0 May 4 13:01:35 localhost kernel: [ 2703.652000] PCI: Enabling device 0000:03:00.0 (0000 -> 0002) May 4 13:01:35 localhost kernel: [ 2703.652000] ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 18 (level, low) -> IRQ 18 May 4 13:01:35 localhost kernel: [ 2703.652000] ohci_hcd 0000:03:00.0: OHCI Host Controller May 4 13:01:35 localhost kernel: [ 2703.652000] ohci_hcd 0000:03:00.0: new USB bus registered, assigned bus number 5 May 4 13:01:35 localhost kernel: [ 2703.652000] ohci_hcd 0000:03:00.0: irq 18, io mem 0x44000000 May 4 13:01:35 localhost kernel: [ 2703.736000] usb usb5: configuration #1 chosen from 1 choice May 4 13:01:35 localhost kernel: [ 2703.736000] hub 5-0:1.0: USB hub found May 4 13:01:35 localhost kernel: [ 2703.736000] hub 5-0:1.0: 3 ports detected May 4 13:01:35 localhost kernel: [ 2703.840000] PCI: Enabling device 0000:03:00.1 (0000 -> 0002) May 4 13:01:35 localhost kernel: [ 2703.840000] ACPI: PCI Interrupt 0000:03:00.1[B] -> GSI 18 (level, low) -> IRQ 18 May 4 13:01:35 localhost kernel: [ 2703.840000] ohci_hcd 0000:03:00.1: OHCI Host Controller May 4 13:01:35 localhost kernel: [ 2703.840000] ohci_hcd 0000:03:00.1: new USB bus registered, assigned bus number 6 May 4 13:01:35 localhost kernel: [ 2703.840000] ohci_hcd 0000:03:00.1: irq 18, io mem 0x44001000 May 4 13:01:35 localhost kernel: [ 2703.924000] usb usb6: configuration #1 chosen from 1 choice May 4 13:01:35 localhost kernel: [ 2703.924000] hub 6-0:1.0: USB hub found May 4 13:01:35 localhost kernel: [ 2703.924000] hub 6-0:1.0: 2 ports detected May 4 13:01:38 localhost kernel: [ 2707.580000] usb 5-1: new full speed USB device using ohci_hcd and address 2 May 4 13:01:39 localhost kernel: [ 2707.792000] usb 5-1: configuration #1 chosen from 1 choice May 4 13:01:39 localhost kernel: [ 2707.896000] usbcore: registered new interface driver usbserial May 4 13:01:39 localhost kernel: [ 2707.896000] drivers/usb/serial/usb-serial.c: USB Serial support registered for generic May 4 13:01:39 localhost kernel: [ 2707.896000] usbcore: registered new interface driver usbserial_generic May 4 13:01:39 localhost kernel: [ 2707.896000] drivers/usb/serial/usb-serial.c: USB Serial Driver core May 4 13:01:39 localhost kernel: [ 2707.948000] drivers/usb/serial/usb-serial.c: USB Serial support registered for airprime May 4 13:01:39 localhost kernel: [ 2707.948000] airprime 5-1:1.0: airprime converter detected May 4 13:01:39 localhost kernel: [ 2707.948000] usb 5-1: airprime converter now attached to ttyUSB0 May 4 13:01:39 localhost kernel: [ 2707.948000] usb 5-1: airprime converter now attached to ttyUSB1 May 4 13:01:39 localhost kernel: [ 2707.948000] usb 5-1: airprime converter now attached to ttyUSB2 May 4 13:01:39 localhost kernel: [ 2707.952000] airprime 5-1:1.1: airprime converter detected May 4 13:01:39 localhost kernel: [ 2707.952000] usb 5-1: airprime converter now attached to ttyUSB3 May 4 13:01:39 localhost kernel: [ 2707.952000] usb 5-1: airprime converter now attached to ttyUSB4 May 4 13:01:39 localhost kernel: [ 2707.952000] usb 5-1: airprime converter now attached to ttyUSB5 May 4 13:01:39 localhost kernel: [ 2707.952000] usbcore: registered new interface driver airprime May 4 13:26:57 localhost kernel: [ 4225.860000] PPP generic driver version 2.4.2 May 4 13:26:57 localhost pppd[9247]: pppd 2.4.4 started by root, uid 0 May 4 13:26:58 localhost chat[9250]: abort on (BUSY) May 4 13:26:58 localhost chat[9250]: abort on (NO CARRIER) May 4 13:26:58 localhost chat[9250]: send (at^M) May 4 13:26:58 localhost chat[9250]: expect (OK) May 4 13:26:58 localhost chat[9250]: at^M^M May 4 13:26:58 localhost chat[9250]: OK May 4 13:26:58 localhost chat[9250]: -- got it May 4 13:26:58 localhost chat[9250]: send (AT+CGDCONT=1,"IP","3netaccess"^M) May 4 13:26:58 localhost chat[9250]: expect (OK) May 4 13:26:58 localhost chat[9250]: ^M May 4 13:26:58 localhost chat[9250]: AT+CGDCONT=1,"IP","3netaccess"^M^M May 4 13:26:58 localhost chat[9250]: OK May 4 13:26:58 localhost chat[9250]: -- got it May 4 13:26:58 localhost chat[9250]: send (atd *99#^M) May 4 13:26:58 localhost chat[9250]: expect (CONNECT) May 4 13:26:58 localhost chat[9250]: ^M May 4 13:26:58 localhost chat[9250]: atd *99#^M^M May 4 13:26:58 localhost chat[9250]: CONNECT May 4 13:26:58 localhost chat[9250]: -- got it May 4 13:26:58 localhost chat[9250]: send (\d) May 4 13:26:59 localhost pppd[9247]: Serial connection established. May 4 13:27:00 localhost pppd[9247]: Using interface ppp0 May 4 13:27:00 localhost pppd[9247]: Connect: ppp0 <--> /dev/ttyUSB0 May 4 13:27:01 localhost pppd[9247]: CHAP authentication succeeded May 4 13:27:01 localhost pppd[9247]: CHAP authentication succeeded May 4 13:27:01 localhost kernel: [ 4229.616000] PPP BSD Compression module registered May 4 13:27:01 localhost kernel: [ 4229.668000] PPP Deflate Compression module registered May 4 13:27:03 localhost pppd[9247]: local IP address 202.124.67.36 May 4 13:27:03 localhost pppd[9247]: remote IP address 202.124.64.162 May 4 13:27:03 localhost pppd[9247]: primary DNS address 202.124.65.2 May 4 13:27:03 localhost pppd[9247]: secondary DNS address 202.124.68.130 May 4 13:27:04 localhost kernel: [ 4232.552000] ip_tables: (C) 2000-2006 Netfilter Core Team May 4 13:27:04 localhost pppd[9247]: Connect time 0.1 minutes. May 4 13:27:04 localhost pppd[9247]: Sent 325 bytes, received 10 bytes. May 4 13:27:04 localhost pppd[9247]: local IP address 202.124.67.36 May 4 13:27:04 localhost pppd[9247]: remote IP address 202.124.64.162 May 4 13:27:04 localhost pppd[9247]: primary DNS address 202.124.65.2 May 4 13:27:04 localhost pppd[9247]: secondary DNS address 202.124.68.130 May 4 13:33:07 localhost pppd[9247]: Terminating on signal 15 May 4 13:33:07 localhost pppd[9247]: Connect time 6.1 minutes. May 4 13:33:07 localhost pppd[9247]: Sent 69547 bytes, received 68454 bytes. May 4 13:33:07 localhost pppd[9247]: Connection terminated. May 4 13:33:07 localhost pppd[9247]: Exit. -- Sonia Hamilton | GNU/Linux - 'free' as in . | free speech, not free beer. -- SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/ Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
