Wednesday, June 23, 2010

Introducing the Dog to the world - Prolink PHS101 modem on BeagleBoard

I seem to have sprouted an impromptu holiday to Fiji. So tonight ended up a rush in completing my papers for IGARSS 2010 in Hawaii. Time has passed so very fast. Some of my colleagues who started their PhD at the same time as me have written 1/3 of their thesis already. I in my turn have been distracted by life and side projects, but overall the extra curricular activities have made my PhD life much much more interesting.

While copy pasting content from my original draft into the conference template I decided to have another look at the tricky dual-device USB based 3G modems. The Prolink PHS101 is plugged into the BeagleBoard and appears as a pesky CD device on /dev/sr0, you can use mount -t iso9660 /dev/sr0 to access this device. The newer kernels fortunately and unfazed by this, using eject /dev/sr0 gets rid of the CD device and loads up the usbserial driver with the right vendor options to make it appear as 3 serial devices on USB. I did not have to use usb_modeswitch, though I managed to native-compile and install it on the beagle.

Only 1 of these 3 is a functional internet device. In Australia the wvdial.conf to make use of it looks something like:

Init2 = ATZ
Init3 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Stupid Mode = 1
Modem Type = Analog Modem
ISDN = 0
Phone = *99#
Modem = /dev/ttyUSB0
username = username
Password = password
Dial Command = ATDT
Baud =460800
Init4 = AT+CGDCONT=1,"IP","vfinternet.au"


Then I hit another brick wall, there is apparently an issue with wvdial which prevents it from working on arm based platforms. Modem-Manager and NetworkManager can be tasked into filling the hole left by wvdial. A bit of snooping with AT commands and ModemManager shows up the Qualcomm heritage of the chipset.

root@beagleboard:~# microcom /dev/ttyUSB0
ATI
Manufacturer: QUALCOMM INCORPORATED
Model: C-180
Revision: 120016_062_001         1  [Feb 09 2010 23:45:26]
IMEI: 358093021714293
+GCAP: +CGSM,+DS,+ES
OK


 Wonder how soon I will be able to connect up using this.

PS: After finishing off my IGARSS papers I finally managed to get it going with  a melange of dbus,nm,mm and pppd. So this modem officially works on the BeagleBoard, hurray!!

2 comments:

Damien said...

I remember reading that for the Huawei devices they had to exclude the kernel recognising the device as a mass storage device to get it working properly; but I guess your eject trick should work just as well.

ada apa dengan ini said...

hello ... i'am indonesian... hasan..
ee... i have a modem prolink phs 101 .. and my OS is ubuntu 9.04 .. but the modem is cannot detect on ubuntu ..can you help me about this.. thanks ..