A new breed of USB wireless modems with inbuilt flash storage containing the driver to install the wireless modem have been invading the Wireless Connectivity marketplace. A typical example is the Reliance Netconnect 1.x. The USB Modem gets detected as a cdrom when you plug it into your laptop. However a GNU/Linux user does not have anything to cheer about the driver in the flash storage, as these drivers are all Windows drivers (so far). Here is how to install the Reliance Netconnect in Debian Lenny. The instructions should work for debian variants like Ubuntu, Mint etc. You should also be able to get this working in other GNU Linux distros by making necessary modifications in the commands.
First you will need to get usb_modswitch.
Go to the folder with the tar file and run the following commands after making necessary path changes
tar xvfj usb_modeswitch-1.0.5.tar.bz2
gcc -l usb -o usb_modeswitch usb_modeswitch.c
You will probably have to install build-essential and libusb-dev if they are not already present in your system
apt-get install build-essential libusb-dev
Open /etc/usb_modeswitch.conf for editing
gedit /etc/usb_modeswitch.conf &
to see the vendor id and product id of the USB storage that was detected when the USB modem was plugged in. Now go find this information in /etc/usb_modeswitch.conf and uncomment the section including DefaultVendor, DefaultProduct, TargetVendor and TargetProduct
usb_modeswitch -c /etc/usb_modeswitch.conf
The messages should tell you whether you succeeded in making the device switch mode from the USB storage mode to a USB modem. If not recheck your vendor/product id and try again. Try lsusb again to see your device detected in the new mode.
Now it is time to load usbserial for the newly detected device. Suppose your newly detected device has vendorid:productid as 19d2:fffe, run the following to load usbserial for the device. Remember to change the vendor and product ids to match your device.
modprobe usbserial vendor=0x19d2 product=0xfffe
You should be set to go and you can check this out by trying wvdialconf and wvdial. Also you could possibly create a script with the last three commands and possibly wvdial to make this process easier whenever you wish to connect.