Oktober 21, 2010

Menggunakan AHA dengan Olive VME-110 di Arch Linux

Tulisan sederhana ini sekedar menjelaskan sedikit cara untuk bisa menggunakan modem EVDO dari AHA di Arch Linux. Untuk modem, saya menggunakan Olive VME-110 yang berwarna putih (yang berwarna perak merk-nya Huawei, caranya mungkin beda sedikit dengan yang ada di tulisan ini). Di tulisan ini, penyebutan "modem" berarti akan mengacu ke Olive VME-110 (males nulisnya kalau panjang ... :-D).

Paket yang Diperlukan

Ada beberapa paket yang diperlukan untuk mengaktifkan modem ini yaitu: wvdial dan usb_modeswitch. Untuk menginstall, gunakan pacman (tentu saja jika belum bisa koneksi ke Internet, ngalah dulu sebentar cari koneksi kabel atau wifi):
# pacman -S wvdial usb_modeswitch
Biasanya instalasi wvdial juga akan menyertakan wvstreams.

Mengubah dari Mode Storage ke Mode Modem

Setelah instalasi paket yang diperlukan di atas, lakukan langkah-langkah berikut untuk konfigurasi.

Aktifkan modul kernel usbserial:
# modprobe usbserial
Masukkan modem ke USB port. Kernel akan mengenali device sebagai USB storage (karena modem ini bisa difungsikan juga sebagai USB flashdisk) berikut ini:

Initializing USB Mass Storage driver...
scsi6 : usb-storage 2-1.1:1.0
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
USB Serial support registered for GSM modem (1-port)
usbcore: registered new interface driver option
option: v0.7.2:USB Driver for GSM modems
scsi 6:0:0:0: CD-ROM            Qualcomm MMC Storage      2.31 PQ: 0 ANSI: 2
sr1: scsi3-mmc drive: 0x/58x caddy
sr 6:0:0:0: Attached scsi CD-ROM sr1
sr 6:0:0:0: Attached scsi generic sg2 type 5
sr1: CDROM (ioctl) error, command: cdb[0]=0x51 51 00 00 00 00 00 00 00 02 00
sr: Sense Key : 0x4 [current] 
sr: ASC=0x0 ASCQ=0x0

Supaya bisa dikenali sebagai GSM modem (/dev/ttyUSB*), maka fasilitas storage (diatas dikenali sebagai Qualcomm - di Windows juga dikenali sebagai Qualcomm) harus di-eject dulu:
# eject /dev/sr1
Saya menggunakan /dev/sr1 karena sesuai dengan pesan yang ada di atas, bahwa storage tersebut di kenali sebagai sr1 (lihat baris "sr1: scsi3-mmc drive: 0x/58x caddy", di tempat lain, bisa saja sr0). Setelah di-eject, maka modem baru akan dikenali:

usb 2-1.1: USB disconnect, address 3
cdrom: issuing MRW back ground format suspend
usb 2-1.1: new full speed USB device using ehci_hcd and address 4
option 2-1.1:1.0: GSM modem (1-port) converter detected
usb 2-1.1: GSM modem (1-port) converter now attached to ttyUSB0
option 2-1.1:1.1: GSM modem (1-port) converter detected
usb 2-1.1: GSM modem (1-port) converter now attached to ttyUSB1
option 2-1.1:1.2: GSM modem (1-port) converter detected
usb 2-1.1: GSM modem (1-port) converter now attached to ttyUSB2

Device juga muncul:

[bpdp@bpdp-arch ~]$ ls -la /dev/ttyUSB*
crw-rw---- 1 root uucp 188, 0 Oct 22 08:45 /dev/ttyUSB0
crw-rw---- 1 root uucp 188, 1 Oct 22 08:45 /dev/ttyUSB1
crw-rw---- 1 root uucp 188, 2 Oct 22 08:45 /dev/ttyUSB2
[bpdp@bpdp-arch ~]$ 

Konfigurasi usb_modeswitch

Paket usb_modeswitch yang saya gunakan belum menyertakan definisi hardware dari modem, jadi kita akan membuat konfigurasinya sendiri. Pertama, kita mencari ID dari device modem:

[bpdp@bpdp-arch ~]$ lsusb 
Bus 002 Device 004: ID 201e:2009  
Bus 002 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 004: ID 0b05:1788 ASUSTek Computer, Inc. 
Bus 001 Device 003: ID 04f2:b071 Chicony Electronics Co., Ltd 2.0M UVC Webcam / CNF7129
Bus 001 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
[bpdp@bpdp-arch ~]$

Di Arch Linux, device dikenali dengan ID vendor 201e dan ID product 2009. Setelah mengetahui ID ini, buat konfigurasi file baru di "/etc/usb_modeswitch.d/201e\:2009" yang berisi teks berikut:

########################################################
# AHA.co.id
# 201e:2009


DefaultVendor= 0x201e
DefaultProduct=0x2009


TargetVendor= 0x201e
TargetProduct= 0x2009


CheckSuccess=20


MessageContent="555342431234567824000000800108df200000000000000000000000000000"

Konfigurasi wvdial

Buat file baru (atau tambahkan entry berikut jika sudah ada filenya) untuk konfigurasi wvdial di "/etc/wvdial.conf". Isinya adalah teks sebagai berikut:

[Dialer aha]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Modem Type = USB Modem
Baud = 115200
Modem= /dev/ttyUSB0


Phone = #777
Username = aha@aha.co.id
Password = aha
New PPPD = yes
Stupid Mode = 1

Konfigurasi udev

Konfigurasi udev diperlukan supaya kita tidak perlu repot-repot meng-eject setiap kali memasukkan modem ke USB port. Buatlah file baru di "/etc/udev/rules.d/99-evdo-modem.rules" yang berisi:

SYSFS{idVendor}=="201e",
SYSFS{idProduct}=="2009", RUN+="/usr/bin/eject %k"

Konfigurasi Modul Kernel

Masukkan "usbserial" dalam array MODULES yang ada di file "/etc/rc.conf". Jika sebelumnya sudah ada modul lainnya, tinggal tambahkan saja sebagai berikut (di file saya sudah ada modul ath9k, tidak perlu anda tulis jika tidak menginginkan modul ath9k tersebut aktif):

...
...
MODULES=(ath9k usbserial)
...
...

Menggunakan Modem

Langkah-langkah di atas sudah cukup untuk mengkonfigurasi modem. Jika kita ingin mengaktifkan, tinggal men-dial menggunakan wvdial sebagai berikut:

[root@bpdp-arch ~]# wvdial aha
--> WvDial: Internet dialer version 1.61
--> Cannot get information for serial port.
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Modem initialized.
--> Sending: ATDT#777
--> Waiting for carrier.
ATDT#777
CONNECT 3100000
--> Carrier detected.  Starting PPP immediately.
--> Starting pppd at Fri Oct 22 09:13:09 2010
--> Pid of pppd: 2578
--> Using interface ppp0
--> pppd:  [01]� �[01]� 
--> pppd:  [01]� �[01]� 
--> pppd:  [01]� �[01]� 
--> pppd:  [01]� �[01]� 
--> pppd:  [01]� �[01]� 
--> local  IP address 10.69.7.130
--> pppd:  [01]� �[01]� 
--> remote IP address 192.168.11.10
--> pppd:  [01]� �[01]� 
--> primary   DNS address 10.8.9.2
--> pppd:  [01]� �[01]� 
--> secondary DNS address 192.168.190.66
--> pppd:  [01]� �[01]� 

Jika ingin disconnect, tekan Ctrl-C di posisi tersebut. Untuk seterusnya, jika ingin koneksi ke Internet menggunakan modem, yang kita lakukan hanya:
1. Masukkan modem ke port USB
2. dari terminal, sebagai root, ketikkan "wvdial aha"

Mudah bukan? Happy browsing using Arch Linux! :)

Catatan: 
Saat mencari cara untuk koneksi menggunakan AHA dengan modem Olive VME-110 ini, saya sangat terbantu dengan artikel dan komentar di URL http://www.icemanblogger.com/2010/07/setting-modem-aha-olive-v-me110-di.html. Bersama ini, rasanya saya perlu mengucapkan terima kasih untuk yang telah menulis artikel di atas dan komentar-komentar di bawahnya.

1 komentar:

  1. Apakah anda bisa mendapatkan speed yang cukup cepat dengan EVDO di linux? Saya hanya berhasil mendapatkan kecepatan tidak lebih dari 30-50kBps. Setelah banyak membaca, rupanya hal ini disebabkan kecepatan generic usbserial yang max speed capacitynya hanya mencapai 500 kbps.

    Apakah ini benar? Koneksi saya melalui Network Manager di Ubuntu Netbook 10.10, jadi tidak melalui wvdial di terminal. Trims.

    BalasHapus