Modem CDMA Venus VT-11 di Linux
Modem CDMA Venus VT-11 di vanilla Linux tidak akan dikenali. Tidak ada kernel modul yang bisa mendeteksi modem ini. Dengan dmesg dan lsusb saat modem dicolokkan menghasilkan keluaran berikut:
=== dmesg output, driver tidak diattach ke device node apa pun
--snip
usb 2-1: new full speed USB device using uhci_hcd and address 3
usb 2-1: configuration #1 chosen from 1 choice
--snip
=== lsusb output
Bus 005 Device 003: ID 04f2:b026
Bus 005 Device 001: ID 1d6b:0002
Bus 004 Device 001: ID 1d6b:0001
Bus 003 Device 001: ID 1d6b:0001
Bus 002 Device 006: ID 6971:7492 --- Ini vendorID dan deviceID modem vt-11
Bus 002 Device 001: ID 1d6b:0001
Bus 001 Device 004: ID 046d:c019
Bus 001 Device 001: ID 1d6b:0001
Tidak ada device driver (modul kernel) di vanilla Linux yang mengklaim usb device modem vt11 dengan vendorID:deviceID 6971:7492. Berikut sedikit hack di Linux agar kernel bisa mengenali modem ini.
Jadi sekarang problemnya driver usb-serial yang ada tidak mengenali device ini. Saya belum pernah mencoba menggunakan driver usb-serial yang generik, dengan perintah “modprobe usbserial vendor=0x6971 product=0x7492“. Saya lebih menyukai dengan mengkompile ulang module kernel.
Yang pertama, Anda harus mempunyai kernel Linux source dengan versi sama dengan yang sedang dijalankan. Di puppy Linux 4.20, source kernel ini akan ada di direktori /lib/modules/2.6.25.16/build/ (2.625.16 adalah versi kernel Linux yang aktif). Yang harus ada lagi adalah kompiler, gcc.
Driver yang cocok/kompatible untuk modem tersebut adalah usb serial Prolific pl2303, sehingga yang perlu dilakukan adalah dengan mengedit file pl2303.c dan pl2303.h yang ada di direktori /lib/modules/2.6.25.16/build/drivers/usb/serial/ untuk menambahkan vendorID dan deviceID modem tersebut. Modem itu sendiri menggunakan usb-to-serial dari zxlink. Patch untuk pl2303.h adalah sebagai berikut:
--- drivers/usb/serial/pl2303.h.orig 2009-06-15 16:08:52.000000000 +0800
+++ drivers/usb/serial/pl2303.h 2009-06-15 14:56:37.000000000 +0800
@@ -15,10 +15,14 @@
#define PL2303_PRODUCT_ID_RSAQ3 0xaaa2
#define PL2303_PRODUCT_ID_ALDIGA 0x0611
+
#define ATEN_VENDOR_ID 0x0557
#define ATEN_VENDOR_ID2 0x0547
#define ATEN_PRODUCT_ID 0x2008
+#define ZXLINK_VENDOR_ID 0x6971
+#define ZXLINK_PRODUCT_ID 0x7492
+
#define IODATA_VENDOR_ID 0x04bb
#define IODATA_PRODUCT_ID 0x0a03
#define IODATA_PRODUCT_ID_RSAQ5 0x0a0e
Sedangkan patch untuk pl2303.c adalah:
--- drivers/usb/serial/pl2303.c.orig 2009-06-15 16:09:08.000000000 +0800
+++ drivers/usb/serial/pl2303.c 2009-06-15 14:57:20.000000000 +0800
@@ -60,6 +60,7 @@
{ USB_DEVICE(IODATA_VENDOR_ID, IODATA_PRODUCT_ID_RSAQ5) },
{ USB_DEVICE(ATEN_VENDOR_ID, ATEN_PRODUCT_ID) },
{ USB_DEVICE(ATEN_VENDOR_ID2, ATEN_PRODUCT_ID) },
+ { USB_DEVICE(ZXLINK_VENDOR_ID, ZXLINK_PRODUCT_ID) },
{ USB_DEVICE(ELCOM_VENDOR_ID, ELCOM_PRODUCT_ID) },
{ USB_DEVICE(ELCOM_VENDOR_ID, ELCOM_PRODUCT_ID_UCSGT) },
{ USB_DEVICE(ITEGNO_VENDOR_ID, ITEGNO_PRODUCT_ID) },
Setelah itu, kompile kernel tersebut. Jika pl2303 terinstall sebagai modul, maka hasil kompilasi adalah berupa modul drivers/usb/serial/pl2303.ko. Kopikan file tersebut ke direktori /lib/modules/2.6.25.16/kernel/drivers/usb/serial/ (sesuaikan dengan versi kernel Anda). Jalankan ‘depmod’ untuk menyusun file dependensinya, dan colokkan modem ke port USB, dan modem akan terdeteksi dan diattach ke device node /dev/ttyUSB0 (pastikan modul pl2303 diunload dulu, dengan rmmod pl2303 dan modprobe pl2303).
=== Keluaran dmesg
usb 2-1: new full speed USB device using uhci_hcd and address 9
usb 2-1: configuration #1 chosen from 1 choice
pl2303 2-1:1.0: pl2303 converter detected
usb 2-1: pl2303 converter now attached to ttyUSB0
Done. Sekarang modem bisa digunakan untuk berselancar internet

kalau pengen tau driver yang kompatible untuk hardware itu cara nyarinya gimana ya mas? contoh kayak mas bisa nyimpulin bahwa “Driver yang cocok/kompatible untuk modem tersebut adalah usb serial Prolific pl2303″ itu langkah-langkahnya gimana?
sy pake modem ivio 2000u pake flexi, belum bisa konek internet di ubuntu 9.04, karena modem gak kedetect waktu dijalankan perintah “sudo wvdialconf”
waktu dijalankan perintah lsusb muncul:
…..
Bus 006 Device 002: ID 8300:0402
……