LinuxでのHX003ZT使用
概要
WILLCOM CORE 3GのUSBモデムHX003ZTをLinux (Fedora Core6)から使えるように設定する。
手順
(1) ZeroCDの抑止
HX003ZTにはZeroCD機能がついており、USBポートに挿すとCD-ROMドライブに見えてしまうため、ZeroCDを抑止する。
機能を抑止するには、HX003ZTに以下のATコマンドを実行する。
AT+ZCDRUN=8
再びZeroCDを有効にしたい場合は、AT+ZCDRUN=9 とする模様。
上記ATコマンドの実行はWindowsのハイパーターミナルから行った。(HX003ZTのCOMポートを指定して、ATコマンド実行)
(2) ドライバのインストール
Linuxを起動してHX003ZTをUSBポートに挿した後、以下のコマンドを実行してドライバを読み込む。(要root権限)
# /sbin/modprobe usbserial vendor=0x19d2 product=0x0031
うまくいけば、/dev/ttyUSBx(x:0〜2)のデバイスファイルが作成される。
(3) wvdial.confの修正
/etc/wvdial.cnfを編集してダイアルアップ情報を設定する。とりあえず接続ができた時のファイルは以下のとおり。(修正元ファイルの修正が残って無駄な記述がある可能性あり)[Modem0] Modem = /dev/ttyUSB2 SetVolume = 0 Dial Command = ATDT Init1 = ATZ Init3 = ATM0 FlowControl = CRTSCTS Baud = 460800 [Dialer Prin] Username = xxx <-- 適宜指定 Password = xxx <-- 適宜指定 Phone = *99# Stupid Mode = 1 Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0 Inherits = Modem0Modemには、/dev/ttyUSB0〜2を設定してみたが、なぜかttyUSB2でしか接続できなかった。(NO CARRIERになる)
上記の設定後、GNOMEのsystem-config-networkから接続できた。
(4) ドライバの自動インストール
Linuxを起動後、毎回(2)のドライバのインストールをするのは面倒なので、udevの設定を行いドライバが自動で読み込まれるようにする。
/etc/udev/rules.d/60-zte.ruleという名前で以下のファイルを作成した。
ACTION!="add", GOTO="ZTE_End" # Is this the actual modem? SUBSYSTEM=="usb", SYSFS{idProduct}=="0031", SYSFS{idVendor}=="19d2", GOTO="ZTE_Modem" LABEL="ZTE_Modem" # This is the Modem part of the card, let's # load usbserial with the correct vendor # and product ID's so we get our usb serial devices RUN+="/sbin/modprobe usbserial vendor=0x19d2 product=0x0031", # Make users belonging to the dialout group # able to use the usb serial devices. MODE="660", GROUP="dialout" LABEL="ZTE_End"
再起動して、/dev/ttyUSB*が勝手に作成されていれば成功している。
(udevの設定に関しては"zte modem udev"で検索すると参考になる記述がたくさん出てくる。)