img

Linux Configure Tata Indicom Photon+ Mobile Broadband

September 8, 2019

I‘ve Huawei technologies EC1260 CDMA HSIA USB modem. How do I configure Tata Teleservices “Tata Photon+ Mobile Broadband” Service under Linux operating systems using this modem?

EC1260 HSIA USB modem support download speed of upto 3.1Mbps and upload speed of upto 1.8Mbps.

The driver for this modem is provided with Linux kernel 2.6.20 or above. In other words any modern Linux distribution will able to use this modem out of box. The following instructions are tested on:

  1. Debian Linux 5.x
  2. Ubuntu Linux 9.10
  3. Fedora Linux 12 / Redhat & friends

Step #1: Get Required Software

=> wvdial – Text based PPP dialer with built-in intelligence.
OR
=> gnome-ppp – GUI based modem Internet connection tool for the GNOME Desktop.

Linux Drivers For EC1260 CDMA HSIA USB modem

The following drivers are used by Linux:

  • usbserial – USB serial driver (modem driver).
  • usb-storage – USB pen driver.

Install Required Software

You can install any one of the above program from the CD/DVD or via the Internet (connect using Ethernet or any other medium). Once connected install the wvdial package under Debian / Ubuntu Linux, run:
# apt-get install wvdial gnome-ppp
If you are using Redhat / Fedora / CentOS Linux, enter:
# yum install wvdial

Step #2: Stop Services

Turn off other networking interface (such as vmware or virtual box networking):
# /etc/init.d/vmware stop
# ifconfig eth0 down

Make sure you remove other usb storage devices such as pen or external hard disk and remove usb-storage driver:
# rmmod usb_storage
Above will make sure you get correct routing table (you can turn on all other services once connected).

Note if you know how to set static routing using route command skip the step # 2.

Step #3: Install Modem

Insert the USB modem and monitor your /var/log/messages file, enter:
# tail -f /var/log/messages
Sample outputs:

Dec  4 10:08:30 vivek-desktop kernel: [ 3957.760015] usb 4-2: new full speed USB device using uhci_hcd and address 4
Dec  4 10:08:30 vivek-desktop kernel: [ 3957.932103] usb 4-2: configuration #1 chosen from 1 choice
Dec  4 10:08:30 vivek-desktop kernel: [ 3957.959732] Initializing USB Mass Storage driver...
Dec  4 10:08:30 vivek-desktop kernel: [ 3957.961031] scsi15 : SCSI emulation for USB Mass Storage devices
Dec  4 10:08:30 vivek-desktop kernel: [ 3957.961146] usbcore: registered new interface driver usb-storage
Dec  4 10:08:30 vivek-desktop kernel: [ 3957.961150] USB Mass Storage support registered.
Dec  4 10:08:30 vivek-desktop kernel: [ 3958.240046] usb 4-2: USB disconnect, address 4
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.520015] usb 4-2: new full speed USB device using uhci_hcd and address 5
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.703066] usb 4-2: configuration #1 chosen from 1 choice
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.717371] scsi19 : SCSI emulation for USB Mass Storage devices
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727347] USB Serial support registered for GSM modem (1-port)
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727388] option 4-2:1.0: GSM modem (1-port) converter detected
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727481] usb 4-2: GSM modem (1-port) converter now attached to ttyUSB0
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727495] option 4-2:1.1: GSM modem (1-port) converter detected
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727550] usb 4-2: GSM modem (1-port) converter now attached to ttyUSB1
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727563] option 4-2:1.2: GSM modem (1-port) converter detected
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727617] usb 4-2: GSM modem (1-port) converter now attached to ttyUSB2
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727639] usbcore: registered new interface driver option
Dec  4 10:08:31 vivek-desktop kernel: [ 3958.727642] option: v0.7.2:USB Driver for GSM modems
Dec  4 10:08:36 vivek-desktop kernel: [ 3963.714729] scsi 19:0:0:0: CD-ROM            HUAWEI   Mass Storage     2.31 PQ: 0 ANSI: 0
Dec  4 10:08:36 vivek-desktop kernel: [ 3963.717721] scsi 19:0:0:1: Direct-Access     HUAWEI   SD Storage       2.31 PQ: 0 ANSI: 2
Dec  4 10:08:36 vivek-desktop kernel: [ 3963.746710] sr3: scsi-1 drive
Dec  4 10:08:36 vivek-desktop kernel: [ 3963.746951] sr 19:0:0:0: Attached scsi generic sg6 type 5
Dec  4 10:08:36 vivek-desktop kernel: [ 3963.747085] sd 19:0:0:1: Attached scsi generic sg7 type 0
Dec  4 10:08:36 vivek-desktop kernel: [ 3963.807173] sd 19:0:0:1: [sdd] Attached SCSI removable disk

Type the following command to display information about USB buses in the system and the devices connected to them, enter:
# lsusb
Sample outputs:

Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 003: ID 12d1:140b Huawei Technologies Co., Ltd. 
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Step #4: wvdial Configuration

The wvdialconf command detects your modem, its maximum baud rate, and a good initialization string and generates or updates the wvdial configuration file based on this information. Type the following command:
# wvdialconf
Sample outputs:

Editing `/etc/wvdial.conf'.

Scanning your serial ports for a modem.

ttyS0<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyS0<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 115200 baud
ttyS0<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
ttyS1<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyS1<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 115200 baud
ttyS1<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
Modem Port Scan<*1>: S2   S3   
WvModem<*1>: Cannot get information for serial port.
ttyUSB0<*1>: ATQ0 V1 E1 -- OK
ttyUSB0<*1>: ATQ0 V1 E1 Z -- OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB0<*1>: Modem Identifier: ATI -- Manufacturer: +GMI: HUAWEI TECHNOLOGIES CO., LTD
ttyUSB0<*1>: Speed 9600: AT -- OK
ttyUSB0<*1>: Max speed is 9600; that should be safe.
ttyUSB0<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
WvModem<*1>: Cannot get information for serial port.
ttyUSB1<*1>: ATQ0 V1 E1 -- failed with 2400 baud, next try: 9600 baud
ttyUSB1<*1>: ATQ0 V1 E1 -- failed with 9600 baud, next try: 9600 baud
ttyUSB1<*1>: ATQ0 V1 E1 -- and failed too at 115200, giving up.
WvModem<*1>: Cannot get information for serial port.
ttyUSB2<*1>: ATQ0 V1 E1 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 Z -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 -- OK
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK
ttyUSB2<*1>: Modem Identifier: ATI -- Manufacturer: +GMI: HUAWEI TECHNOLOGIES CO., LTD
ttyUSB2<*1>: Speed 9600: AT -- OK
ttyUSB2<*1>: Max speed is 9600; that should be safe.
ttyUSB2<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 -- OK

Found a modem on /dev/ttyUSB0.
Modem configuration written to /etc/wvdial.conf.
ttyUSB0: Speed 9600; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"
ttyUSB2: Speed 9600; init "ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0"

Here is sample updated /etc/wvdial.conf file:

[Dialer Defaults]
Modem = /dev/ttyUSB2
Phone = #777
Username = internet
Password = internet
New PPPD = yes
stupid Mode = 1

How Do I Connect To The Internet?

Simply type the wvdial command, enter:
# wvdial
Sample outputs:

Fig.01: Configuring Photon+ Huawei EC 1260 in Linux (connected via ppp)

Test The Internet Connection

Send ping request, enter:

ping google.co.in
ping sxi.io

If you cannot ping …

Edit /etc/resolv.conf, enter:
# vi /etc/resolv.conf
Update it as follows:

nameserver 202.54.12.164
nameserver 202.43.29.5

Save and close the file. Test it again:
# ping google.com
Once connected you can start your vmware or bring back eth0 connections. Make sure routing setup correctly for other network device:
# route -n
To disconnect the Internet session (wvdia dialar) simply hit [CTRL]+[C] or run killall command:
# killall wvdial

Further readings:

Posted by: SXI ADMIN

The author is the creator of SXI LLC and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Article Tags:
Article Categories:
How To

Comments are closed.