web-dev-qa-db-ja.com

usb_modeswitchの実装の支援

usb_modeswitchの設定方法は誰でも知っていますか?私はドキュメントを読みましたが、それはあまり役に立ちませんでした。

私は次のデバイスを持っています:

oshirowanen@laptop:~$ lsusb
Bus 001 Device 003: ID 19d2:0031 ONDA Communication S.p.A. ZTE MF636

Ubuntu 10.04.2を使用しています。

基本的に、デバイスがusbストレージデバイスとして認識されることは望ましくありません。 USBブロードバンドモデムとして自動的に認識される前に、デバイスを手動で取り出す必要があります。

3
oshirowanen

sb_modeswitchに従ってデバイスがモデムモードになっているため、つまりデバイスID x0031はモデム用であるため、問題を完全に理解しているとは思いません。

これは、usb_modeswitchサイトで入手可能なdevice_reference.txtファイルからのものです。

########################################################
# ZTE MF622 (aka "Onda MDC502HS")
# ZTE MF626
# ZTE MF628+ (tested version from Telia / Sweden)
# ZTE MF633
# ZTE MF636 (aka "Telstra / BigPond 7.2 Mobile Card")
# ZTE MF637
#
# Contributor: Joakim Wennergren and others

DefaultVendor=  0x19d2
DefaultProduct= 0x2000

TargetVendor=   0x19d2
TargetProduct=  0x0031

MessageContent="5553424312345678000000000000061e000000000000000000000000000000"
MessageContent2="5553424312345679000000000000061b000000020000000000000000000000"

NeedResponse=1

ご覧のとおり、デバイスのターゲットIDは0x0031です。これは、デバイスがモデムモードであることを意味します。

したがって、システムの起動時にこの問題が発生している場合は、システムがUbuntuに起動する前ではなく、起動した後にデバイスを接続してみてください。

ただし、ネットワークの問題が原因でデバイスが切断された場合など、デバイスを再接続するときに問題が発生する場合は、デバイスをnplug and replugする必要があります。

更新
usb_modeswitchをインストールしたところ、設定ファイルのすべてのエントリがコメント化されていることがわかりました。 / etc/usb_modeswitch.confを開き、以下を含む行を探します

;TargetProduct=  0x0031

次の行の先頭からセミコロン(;)を削除します

;DefaultVendor=  0x19d2
;DefaultProduct= 0x2000

;TargetVendor=   0x19d2
;TargetProduct=  0x0031

# only for reference
# MessageEndpoint=0x01

;MessageContent="55534243123456782000000080000c85010101180101010101000000000000"

このファイルを保存して閉じます。これにはSudo権限が必要です。次に、デバイスを取り外してから再接続すると、動作するはずです。そうでない場合は、MessageContent行にコメントを付け、最初の行のすぐ下にある2番目のMessageContent行をコメント解除(セミコロンを削除)します。

3
binW

12.04のモデムにも同じ問題があります。あなたがしなければならないのは、次のことです:

まず、コンピューターにUSB_modeswitchをインストールします。 Software CenterまたはSynapticパッケージマネージャーからダウンロードしてみてください。また、シナプスでlibusbを確認します。

次に、/etc/mod_switch.confまたは/etc/mod_switch.dファイルがあるかどうかを確認します。それらのコンテンツについて心配する必要はありません。それらがあなたのシステム上にあるかどうかを確認するだけです。 /etc/mod_switch.confが存在しない場合は、手動で作成できます。

/usr/share/usb_modswitchのファイルを確認すると、デバイスに関する情報を含むtarファイルが見つかります。 tarファイルでデバイスファイルを探します。そこにあります。

必要なファイルを知るには、ターミナルでlsusbコマンドを実行して、それぞれvendor idproduct idを取得します。ファイルには次のような情報が含まれます。

TargetVendor=  0x12d1
TargetProductList="140b,1506,150f"

MessageContent="55534243123456780000000000000011062000000100000000000000000000"

TargetVendorTargetidTargetMessageのコンテンツを所有しています。

ターミナルに移動してgedit /etc/mod_switch.confを実行し、次の行を書き込みます:

DefaultVendor=  0x19d2
DefaultProduct= 0x2000

TargetVendor=   0x19d2
TargetProduct=  0x0031

MessageContent="5553424312345678000000000000061e000000000000000000000000000000

正しいエントリを入力してください。デフォルトのベンダーと製品は、lsusbコマンドから取得できます。上記のファイルのベンダー、製品、およびメッセージのコンテンツをターゲットにします。保存してファイルを閉じます。

ターミナルを開き、次のコマンドを実行します。

Sudo usb_modeswitch -c /etc/usb_modeswitch.conf 
3
user143030