in Geeky

Huawei E620 and Linux

The modem used is Huawei E620 or E1550. I’m not sure why it has 2 names, but it’s the same thing as far as I can see.

This is specifically for DiGi, but anything else on the same modem would work as well

1. make sure the device registers as a 3g modem and not a storage device. lsusb and look for:

Bus 002 Device 005: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem
if you get that proceed to step 5. Else continue with step 2
2. Get usb_modswitch, install it as root. The default installation path is /usr/sbin.
You will not need to compile this, there is a binary prepackaged that you may use.
3. `vim /etc/usb_modeswitch.conf` and paste the following lines:
# Huawei E1550
DefaultVendor = 0x12d1
DefaultProduct = 0x1446
MessageEndpoint = 0x01
MessageContent = "55534243000000000000000000000011060000000000000000000000000000"

4. plug in the modem and run `sudo usb_modswitch`. do another `lsusb` to make sure the device is registered properly as in step 1. `vimĀ /etc/udev/rules.d/45-huawei1550.rules` and paste the following line:

SUBSYSTEM=="usb", SYSFS{idProduct}=="1446", SYSFS{idVendor}=="12d1", RUN+="/usr/sbin/usb_modeswitch"
5. I use wvdial, if you do too then `vim /etc/wvdial.conf` and paste the following lines:
< == Leave This Line Empty ==>
Modem = /dev/ttyUSB0
Baud = 230400
Init1 = AT+CGDCONT=1,"IP","3gdgnet"
Init3 =
Area Code =
Phone = *99***1#
Username = digi
Password = digi
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Force Address =
Idle Seconds = 0
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1
Check Def Route = 1
Notice the empty first line. That makes a difference. Trust me.
6. run `sudo wvdial` and you should be good to go.
If you’re using kppp then just use the configuration from the top except the phone number is *99#
And who said linux was not ready for the desktop??

Related Posts

Written By:

One Comment

Add a Comment