[教學] 在 Linux 下使用 D-Link DWM-156 3G 網卡

0. 請先確定已經安裝了 wvdial 和有 usbserial module

1. 先把 DWM-156 切換成 Modem 模式
寫入一個名為檔案 wcdma.cfg 到 DWM-156 的磁碟裡面

2. 載入 usbserial 驅動程式
# modprobe usbserial vendor=0x07d1 product=0x3e02

3. 如果 USIM 卡有鎖 PIN 的話請下下列指令, 其中 xxxx 為 PIN code
# echo AT+CPIN=xxxx > /dev/ttyUSB0

4. 設定好 wvdial, 可使用 wvdialconf 之後再修改 /etc/wvdial.conf 裡的內容

5. 直接就可以用 wvdial 來撥接上網
# wvdial
請注意要使用 root 權限執行
如果不是 root 的話請加上 sudo

我已經整合好成 shell script 了
其中 PIN="0000" 那行後面
請自行改成你的 PIN code
如果沒有鎖的話請直接槓掉
附件為這隻 script 和我 wvdial 的設定擋

#!/bin/sh
# D-Link DWM-156 script for Linux
# By Ethan Hsiao
# Date: 2009/11/02

# set PATH
PATH=$PATH:/bin:/sbin:/usr/bin:~/:.

# Location
STOR_LOCATION=`df | grep CONNMGR | awk '{print $1}'`
STOR_PATH=`df | grep CONNMGR | awk '{print $6}'`
STOR_LABEL="/dev/disk/by-label/CONNMGR"
MODEM="/dev/ttyUSB0"

# PIN code
# Please fill your PIN code.
# If PIN unlock is not necessary, please mark it!
PIN="0000"


# Switch DWM-156 to USB modem
function switchmode ()
{
# Check DWM-156
if [ -e $STOR_LABEL ] ; then
echo "DWM-156 is existed!"
else
echo "DWM-156 is no existed!"
exit
fi

# Mount DWM-156 CONNMGR Volume
echo "Switching DWM-156 to USB modem mode..."
if [ -s "$STOR_LOCATION" ] ; then
touch $STOR_PATH/wcdma.cfg
umount $STOR_LABEL
else
mount $STOR_LABEL /mnt
touch /mnt/wcdma.cfg
umount $STOR_LABEL
fi
sleep 10
}

# Load USB Serial driver
function usbserial ()
{
# remove usbserial modele
rmmod usbserial
modprobe usbserial vendor=0x07d1 product=0x3e02
sleep 1
}

function pin_unlock()
{
if [ -e $MODEM ] && [ -n "$PIN" ] ; then
echo "PIN unlocking..."
echo AT+CPIN=$PIN > $MODEM
sleep 10
fi
}

# Wvdial
function dial ()
{
if [ -e /etc/wvdial.conf ] ; then
wvdial
else
echo "Please install/config wvdial first!"
exit
fi
}

# Main
function main ()
{
switchmode
usbserial
pin_unlock
dial
}

main


以下為執行畫面
1.
[教學] 在 Linux 下使用 D-Link DWM-156 3G 網卡
2.
[教學] 在 Linux 下使用 D-Link DWM-156 3G 網卡

後記:
理論上這隻 script 可以和 Quanta Q110 共用
只要把其中 modprobe 後面的 vid & pid 各改成 0x0408 & 0xea02 就可以使用
不過因為手頭上沒有 Q110 所以請有需要的網友自行測試了

另外
忍不住再抱怨一下
相關連結
因為之前不太瞭解網卡運作
還以為真的加個 PIN 解鎖不好弄
明明只要加個 AT command 就可以解決的事情
卻要弄個快半年

附加壓縮檔: 200911/mobile01-231384d4d4f9742f61f76905f5d95256.zip
我執行之後出現的是如下,我是用 ubuntu 9.10 ,我很新手,完全不知道該怎麼辦...


[email protected]:~$ sudo ./dwm156.sh
./dwm156.sh: 22: Syntax error: "(" unexpected
[email protected]:~$



有人可以幫忙嗎?謝謝
麻煩你下 df 指令
還有 ls -l /dev/disk/by-label/*
我看一下

感謝大大的熱心,Linux 我真的不熟說....


[email protected]:~$ df
檔案系統 1K-區段 已用 可用 已用% 掛載點
/dev/sda1 73742752 2588388 67408412 4% /
udev 767896 288 767608 1% /dev
none 767896 1188 766708 1% /dev/shm
none 767896 304 767592 1% /var/run
none 767896 0 767896 0% /var/lock
none 767896 0 767896 0% /lib/init/rw
/dev/sdb 30208 18167 12041 61% /media/SU-8500
[email protected]:~$ ls -l /dev/disk/by-label/*
lrwxrwxrwx 1 root root 9 2009-11-05 06:21 /dev/disk/by-label/SU-8500 -> ../../sdb
[email protected]:~$

你 DWM-156 已經有插上了嗎?

感覺上是沒有抓到
SU-8500 這個就是D-Link DWM-156的隨身碟部份(內有Win ,Mac的driver),若有其他我就不會敘述了...
奇怪了
我這邊看到兩隻 DWM-156 的都是 CONNMGR
請問你有去改過嗎 LABEL 嗎?

另外
請你把 script 中的 CONNMGR 字串統統改成 SU-8500 再試試看吧
謝謝大大,改過了,仍然一樣的結果
我並沒有改過Label ,也沒刷過FW(還沒看到有FW可更新),H/W ver A1,F/W ver:1.00
那真怪了
我看到的 FW 一支是 1.00 一支是 1.03
都是 CONNMGR

不然你就用下列步驟手動試試看吧

1. $ sudo touch /media/SU-8500/wcdma.cfg ; umount /media/SU-8500
2. $ sudo modprobe usbserial vendor=0x07d1 product=0x3e02
3. $ sudo echo AT+CPIN=xxxx > /dev/ttyUSB0
xxxx 為你 SIM 卡的 PIN 碼, 如果沒有就不用作這步
4. $ sudo wvdial

你再試試看吧
感謝大大,手動連線成功了喔~

到step 3時有卡住,所以整個過程沒有很順利,我也無法確定步驟,尚無法feedback給你....
不過現在是靠DWM-156連線的,實在太感謝了.....

關閉廣告

今日熱門文章 網友點擊推薦!

文章分享
評分
複製連結