Linux & Broadband Modems 2/2: Prolink PHS300

The Prolink PHS300 is yet another recent HSUPA modem. The physical design, with the hinge mechanism, looks more fragile than the D-Link modem. However, the D-Link is bulkier and protrudes laterally.

Like the D-Link DWM-156 it is a composite device that appears first as a USB storage device with Windows and Mac drivers, ID 0x1e0e:f000. After driver installation there is a “personality” change and it presents a new USB ID 0x1e0e:9100; this is not a PnP ttyACMnn device – major suckage again.

The device is too recent to have usb_modeswitch support. This actually has support for the PHS100 (which modeswitches to 1e0e:9000 & 1e0e:9200).

The odd thing is that after installation under Windows, my PHS300 seems to be permanently in 0x1e0e:9100 mode; so mode switching doesn’t seem to be necessary anymore. There is also a PHS300 trick from the Ubuntu lists where issuing an eject command causes a mode switch.

To create the device files:

modprobe usbserial vendor=0x1e0e product=0x9100

usbserial will create and claim /dev/ttyUSB0-2. The actual comms device is /dev/ttyUSB2.

The device is recognised by modem-manager as a generic GSM modem.

If all goes well one should see:

modem-manager: (Generic): GSM modem /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1 claimed port ttyUSB2
modem-manager: Added modem /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1
modem-manager: Exported modem /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-1 as /org/freedesktop/ModemManager/Modems/1
NetworkManager:   (ttyUSB2): new GSM device (driver: 'generic')
NetworkManager:   (ttyUSB2): exported as /org/freedesktop/NetworkManager/Devices/3
NetworkManager:   (ttyUSB2): now managed

Linux & Broadband Modems 1/2: D-Link DWM-156

The D-Link DWM-156 is a USB broadband modem that supports HSUPA.

It’s a composite device that appears first as a USB storage device with Windows and Mac drivers, USB ID 0x07d1:0xa800. After driver installation there is a “personality” change and it presents a new USB ID 0x07d1:0x3e02 (alas, not PnP CDC_ACM). Why don’t manufacturers stick to good ol’ CDC_ACM??

The device is too recent to have usb_modeswitch support.

However, bizarro, I found a trick on a web page (in Mandarin):

#in Ubuntu the USB storage device is automatically mounted as /media/CONNMGR
touch /media/CONNMGR/wcdma.cfg

Just creating this file causes USB mode switch. The new device can be driven by usbserial.ko or option.ko:

modprobe usbserial vendor=0x07d1 product=0x3e02
##OR
modprobe option
echo -n "07d1 3e02" > /sys/bus/usb-serial/drivers/option1/new_id 

Four device files: /dev/ttyUSB0-3 are created. The data device is /dev/ttyUSB0. When all is well you should see:

modem-manager: (Generic): GSM modem /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-3 claimed port ttyUSB0
modem-manager: Added modem /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-3
modem-manager: Exported modem /sys/devices/pci0000:00/0000:00:1d.7/usb2/2-3 as /org/freedesktop/ModemManager/Modems/1
NetworkManager:   (ttyUSB0): new GSM device (driver: 'generic')
NetworkManager:   (ttyUSB0): exported as /org/freedesktop/NetworkManager/Devices/3
NetworkManager:   (ttyUSB0): now managed

Unfortunately, ttyUSB2 and ttyUSB3 also respond to the MM probes and may be mistakenly identified as the data device. There is a race condition – whichever port answers first gets exported as the modem!

FIXME: How can I fix this? I want ModemManager’s generic modem prober to restrict itself to ttyUSB0??

TODO: figure out udev or usb_modeswitch to do mode switching on plugin, then get MM to identify only /dev/ttyUSB0 as the data port …

TODO: Find out the chipset and AT command set so that I can get signal strength and other cool meta-information on the connection …

Acer Timeline 3810T suspends at last on Ubuntu

The Ubuntu fixits have a work around for Suspend to RAM on my Acer Timeline 3810T. I must use the kernel parameter i8042.reset=1.

This works on Lucid Lynx Beta with kernel 2.6.32-19-generic. BIOS is at v1.20.

Thank you Ubuntu community!!

This is a very sweet machine from ACER – very light and good battery life. I also got the free Windows 7 upgrade (32-bit only, duh!). Both Windows 7 and Ubuntu work very well. Good job ACER!