Tag Archive for '3g'

Ubuntu Lucid USB 3G modem issue solved

I fix the problems which arise with every Ubuntu release (and in between) for a friend at work whom I’ve put onto Linux. This upgrade to Lucid has meant a number of issues *yawn* but the most annoying was that plugging in his Huawei E220 USB 3G modem was only sometimes detected (every other time it’s just a USB CD and USB memory stick). It was working perfectly on Karmic and on Jaunty (with some hackery) before that.

The solution was rather simple in the end, just load both usbserial and option kernel modules on boot (add to /etc/modules). The kernel will then switch from CD-ROM and detect ttyUSB modem correctly. If you’re having problems with your device not working, try this.

-c

Hey Internode, when are you offering mobile phones?

I love Internode and finally have Naked ADSL2+, yay. My mobile phone is with Three however, and they have been bought by Vodafone. I strongly dislike Vodafone and want to switch.

Thinking about switching, I wish I could go with Internode.. So how about it Simon? You’ve got 3G wireless now so it can’t be that hard, right? Hell, I don’t care if you piggyback off Optus and charge more for it.

-c

Telstra NextG working with MF626 USB modem

Essentially, these devices are detected as a SCSI CD device so that Windows and Mac users can install the drivers and software to make the device work and connect to the net. They then switch product ID to activate the device as a modem. Unfortunately this didn’t work properly in Ubuntu, and would only detect as a mass storage device. With this fix, it can be hot plugged and still work :-O

Thanks to a post in the Ubuntu forums, I finally got the Telstra NextG wireless working for a friend of Mike, on his Jaunty netbook.

Here’s what I did, for for future reference:

1) Install udev-extras which provides some extra hal scripts.
sudo apt-get install udev-extras

2) Install the Debian Sid i386 usb-modeswitch package, rather than build from scratch.
http://packages.debian.org/sid/usb-modeswitch
sudo dpkg -i usb-modeswitch_0.9.7-1_i386.deb

3) Uncommented the “ZTE MF626″ entry of the usb-modeswitch config (including the # comments!).
sudo vim /etc/usb_modeswitch.conf

ZTE MF628+ (tested version from Telia / Sweden)
ZTE MF626

Contributor: Joakim Wennergren

DefaultVendor= 0x19d2
DefaultProduct= 0×2000

TargetVendor= 0x19d2
TargetProduct= 0×0031

MessageEndpoint=0×01
MessageContent=”55534243123456782000000080000c8501 0101180101010101000000000000″

4) Create new HAL rule to activate the device as a modem.
sudo vim /usr/share/hal/fdi/information/20thirdparty/20-zte-mf626.fdi

<!– -*- SGML -*- –>
<deviceinfo version=”0.2″>
<device>
<!– ZTE MF626 HSDPA USB Modem –>
<match key=”@info.parent:usb.vendor_

id” int=”0x19d2″>
<match key=”@info.parent:usb.product_id” int=”0×0031″>
<match key=”@info.parent:usb.interface.number” int=”3″>
<append key=”modem.command_sets” type=”strlist”>GSM-07.07</append>
<append key=”modem.command_sets” type=”strlist”>GSM-07.05</append>
<append key=”info.capabilities” type=”strlist”>modem</append>
</match>
</match>
</match>
</device>
</deviceinfo>

5) Create a new udev rule to auto run usb_modeswitch when the device is plugged in.
sudo vim /etc/udev/rules.d/90-zte.rules

ACTION!=”add”, GOTO=”ZTE_End”

SUBSYSTEM==”usb”, SYSFS{idProduct}==”2000″, SYSFS{idVendor}==”19d2″, GOTO=”ZTE_ZeroCD”

LABEL=”ZTE_ZeroCD”
RUN+=”/usr/sbin/usb_modeswitch -W -c /etc/usb_modeswitch.conf”

LABEL=”ZTE_End”

6) Remove the HAL FDI cache and reboot.
sudo rm /var/cache/hald/fdi-cache
sudo reboot

7) Then after a reboot, I plug in the device, wait for it to go blue, then connect to Telstra (Next G Card) in Network Manager.

Works!

Internet by way of the Dodo

I’ve been helping a friend at work get Linux on her laptop. I installed Ubuntu Jaunty Jackalope 9.04 as this is quite good for new users (and we have a mirror at work). She connects to the Internet like many people these days, using a USB 3G modem. Her provider is Dodo, which actually uses the Optus network.

Anyway, I was pleasantly surprised when I plugged in the device and Network Manager popped up a wizard prompting for a new connection. Yep, the device just works on Linux.

Unfortunately there is no “Dodo” profile the Network Manager, but knowing it runs on Optus network I chose “Optus 3G”. I booted into Windows to get the APN, as it will be different to Optus. After changing that I just needed to click on the Network Manager applet and tell it to connect. But it didn’t work. It tried to log on, everything goes green and then BAM. Nothing.

There was obviously something else that was needed. I checked the settings and saw that the Optus profile had DNS servers hard coded. I grabbed the DNS servers that dodo uses and put them in instead. This time everything worked and I could log on. Internet, she was a working.

So, for anyone already with Dodo or thinking about it, here are the settings I used.

Number: *99#
APN: dodolns1 (that's a letter "L")
Authentication: CHAP
DNS: 202.136.43.197, 202.136.42.229

You will need to register your account with Dodo first and activate it. After that, your Internet should work just fine by using these settings.

It seems that it’s often quite slow when compared to Windows, which I’m putting this down to the Linux driver. Speeds seem to range between 600b/sec and 50kb/sec, which is a little disappointing. It could just be signal or something else, I’m not sure. Still, it’s great that it works out of the box under Linux. Now if only I could get Mike’s friend’s Telstra stick to do the same! HAL rules here I come..

-c