For this arm project, we had to implement alcatel hspa+ usb modems. I got a box of Alcatel X515’s on my desk, with a note ‘make these work’. I plugged one of them in the usbport, and nothing happend. My first tought: ‘having some fun with usb_modeswitch’. I was right. But not completely. Usb modeswitches worked ok. lsusb showed the right device: Bus 001 Device 009: ID 1bbb:0017 T & A Mobile Phones . But no modem. No /dev/ttyUSBxxx . Shit. Search Search. ok. What I did to get it work:

$sudo su
#echo 1bbb 0017 > /sys/bus/usb-serial/drivers/option1/new_id

to have this fixed on every boot.

create a script /usr/local/bin/usbAlcatel

(make it executable chmod +x /usr/local/bin/usbAlcatel)


echo 1bbb 0017 > /sys/bus/usb-serial/drivers/option1/new_id

call this rule from udev:

create a file /etc/udev/rules.d/alcatelmobile.rules

mine looks like:

ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017" ,RUN+="/sbin/modprobe usbserial vendor=0x1bbb product=0x0017"
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", RUN+="/usr/local/bin/usbAlcatel"
ATTRS{idVendor}=="1bbb", ATTRS{idProduct}=="0017", RUN+="/sbin/modprobe option"

KERNEL!="ttyUSB[0-9]*|ttyACM[0-9]*", GOTO="alcatel_end"
ENV{ID_MODEL_ID}=="0017", ENV{ID_VENDOR_ID}=="1bbb" , SYMLINK+="alcatelmodem$env{ID_USB_INTERFACE_NUM}"

After rebooting the device, I got /dev/ttyUSB0 – /dev/ttyUSB5.

AND /dev/alcatelmodem00 – alcatelmodem06

/dev/alcatelmodem00 -> ttyUSB0
/dev/alcatelmodem01 -> ttyUSB1
/dev/alcatelmodem02 -> ttyUSB2
/dev/alcatelmodem03 -> ttyUSB3
/dev/alcatelmodem05 -> ttyUSB4
/dev/alcatelmodem06 -> ttyUSB5

And the modem works (/dev/ttyUSB4 or /dev/alcatelmodem05).

Now let’s do some ppp’ing with wvdial:

first install wvdial: sudo apt-get install wvdial

First a initial install: sudo wvdialconf /etc/wvdial.conf

It finds the modem at /dev/ttyUSB3 change that to /dev/alcatelmodem03