Armadilloフォーラム

X1でのUSBモデム認識について

tanaka779

2021年9月3日 12時21分

お世話になります。
下記の通り、wvdialとModemManagerにて接続を試みていますが接続できません。
syslogを確認したところ、下記エラーが出ています。
「not supported by any plugin」
ArmadilloX1では対応していないということでしょうか?
何かプラグインを追加すれば対応できるものなのでしょうか?

お手数ですが、情報ありましたらご教授いただきたくお願いいたします。

以下手順などの詳細です。
======================================
1)下記コマンドにてデバイスを認識させる
echo 0x15a9 0x0046 > /sys/bus/usb-serial/drivers/option1/new_id
 →結果:OK
 ttyUSB1が認識される

2)下記コマンドでモデムを認識させる
/usr/sbin/usb_modeswitch -v '0x15a9' -p '0x0046' -S
 →結果:OK
 コマンド結果としてエラーは出ない

3)wvdial.confを下記の通り設定
==========================================
[Dialer Defaults]
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = AT+CGDCONT=1,"IP","rcmvne.jp"
Dial Attempts = 3
Modem Type = Analog Modem
Dial Command = ATD
Stupid Mode = yes
Baud = 460800
New PPPD = yes
Modem = /dev/ttyUSB1
ISDN = 0
APN = rcmvne.jp
Phone = *99***1#
Username = xxxxx
Password = xxxxxx
Carrier Check = no
Auto DNS = 1
Check Def Route = 1
==========================================

4)コマンドwvdialを実行(競合するのでModemManagerは停止済み)
 →結果:NG
 ATZコマンドに対する応答がない

5)wvdialを停止しModemManagerを起動
6)下記コマンドにてconnectionを作成
nmcli connection add type gsm ifname ttyUSB1 apn rcmvne.jp user XXXX password XXXXXX
 →結果:OK
 追加はできた

7)nmcli device を実行
 →結果:NG
 gsmのデバイスがない

8)下記コマンドで接続を立ち上げようとする
nmcli connection up gsm-ttyUSB1
 →結果:NG
 デバイスが見つからないエラー

9)下記コマンドでモデムを認識しているか確認
nmcli -L
 →結果:NG
 no modemとなる

認識しようとする標準出力のログがでるので、syslogを確認したところ、下記エラーが出ています。
「not supported by any plugin」
ファイルも添付します
==============================================
Sep 2 12:26:46 armadillo ModemManager[15183]: (tty/ttyUSB1): released by modem /sys/devices/soc0/soc/30800000.aips-bus/30b10000.usb/ci_hdrc.0/usb1/1-1
Sep 2 12:26:48 armadillo kernel: usb 1-1: new high-speed USB device number 18 using ci_hdrc
Sep 2 12:26:48 armadillo kernel: option 1-1:1.0: GSM modem (1-port) converter detected
Sep 2 12:26:48 armadillo kernel: option 1-1:1.1: GSM modem (1-port) converter detected
Sep 2 12:26:48 armadillo kernel: usb 1-1: GSM modem (1-port) converter now attached to ttyUSB1
Sep 2 12:26:50 armadillo ModemManager[15183]: (ttyUSB1): port attributes not fully set
Sep 2 12:27:00 armadillo ModemManager[15183]: (ttyUSB1): port attributes not fully set
Sep 2 12:27:06 armadillo ModemManager[15183]: (ttyUSB1): port attributes not fully set
Sep 2 12:27:09 armadillo ModemManager[15183]: (ttyUSB1): port attributes not fully set
Sep 2 12:27:16 armadillo ModemManager[15183]: (ttyUSB1): port attributes not fully set
Sep 2 12:27:18 armadillo kernel: usb 1-1: USB disconnect, device number 18
Sep 2 12:27:18 armadillo kernel: option 1-1:1.0: device disconnected
Sep 2 12:27:18 armadillo ModemManager[15183]: Couldn't check support for device at '/sys/devices/soc0/soc/30800000.aips-bus/30b10000.usb/ci_hdrc.0/usb1/1-1': not supported by any plugin
Sep 2 12:27:18 armadillo kernel: option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
==============================================

以上

ファイル ファイルの説明
syslog.txt
コメント

アットマークテクノの古賀です。

tanaka779さん:
>下記の通り、wvdialとModemManagerにて接続を試みていますが接続できません。
>syslogを確認したところ、下記エラーが出ています。
>「not supported by any plugin」
>ArmadilloX1では対応していないということでしょうか?
>何かプラグインを追加すれば対応できるものなのでしょうか?
>
>お手数ですが、情報ありましたらご教授いただきたくお願いいたします。
>
>以下手順などの詳細です。
>======================================
>1)下記コマンドにてデバイスを認識させる
>echo 0x15a9 0x0046 >/sys/bus/usb-serial/drivers/option1/new_id
> →結果:OK
> ttyUSB1が認識される

VID と PID が 0x15a9, 0x0046 ということですから、この製品をお使いのようですね:
 https://www.amazon.co.jp/dp/B08MZNVLPH

とすると、次のページが参考になりそうです:
 https://blog.zelkova.cc/2021/03/pixela-pix-mt110.html
 https://asukiaaa.blogspot.com/2016/05/raspberry-pipixelalteusbmt100.html

上の二番目のページの説明によると、製品の取扱説明書に従い、同製品に装着する SIM カードに対する設定を PC で行い、その後、Armadillo の /etc/network/interfaces で usb0 の設定を追加すればよいようです:
 http://www.pixela.co.jp/products/network/pix_mt110/data/pix_mt110_setup…
ただし、カーネルのコンフィグレーションを変更してビルドし直す必要があるかも知れません。X1 の defconfig と、上の一番目のページをご覧ください。

以上、もし参考になりましたら幸いです。

古関です。

ModemManagerはプラグインが無くてもひとまず、genericプラグインで動こうとするはずで、
制御できないデバイス判定されている気がします。

■ モデムの型番
差し支えなければ接続しているモデムの型番を教えていただけますでしょうか。

> echo 0x15a9 0x0046 > /sys/bus/usb-serial/drivers/option1/new_id
USBのVendorID/ProductIDではGemtek製?に見えますが。。

■ USBデバイスの情報取得
以下のコマンドの実行結果いただけますでしょうか。
lsusb -v -d"15a9:0046"

■ ATコマンド実行可否
ttyUSB1からATコマンドは実行可能でしょうか?
cu -l /dev/ttyUSB1 -s 115200
ATI1
結果がもどってくるか

もしかするとボーレートは9600かもしれません。
cu -l /dev/ttyUSB1 -s 9600
ATI1
結果がもどってくるか

ATコマンドが実行できないのだとすると、
何か初期化の為の処理があるのかもしれません。

ご回答ありがとうございます。

> ■ モデムの型番
> 差し支えなければ接続しているモデムの型番を教えていただけますでしょうか。

Pixela LTE対応 USBドングル PIX-MT110です

> ■ USBデバイスの情報取得
> 以下のコマンドの実行結果いただけますでしょうか。
> lsusb -v -d"15a9:0046"

少し長いので、ファイルにて添付します。

> ■ ATコマンド実行可否

ATコマンドの応答がありません。
115200、9600どちらも試しましたが何も返ってきませんでした。

ファイル ファイルの説明
lsusb.txt コマンド実行結果転記

古関です。

ご確認ありがとうございます。

> Pixela LTE対応 USBドングル PIX-MT110です

であれば、弊社古賀が回答した以下が参考になると思います。
-----------------
VID と PID が 0x15a9, 0x0046 ということですから、この製品をお使いのようですね:
 https://www.amazon.co.jp/dp/B08MZNVLPH

とすると、次のページが参考になりそうです:
 https://blog.zelkova.cc/2021/03/pixela-pix-mt110.html
 https://asukiaaa.blogspot.com/2016/05/raspberry-pipixelalteusbmt100.html

上の二番目のページの説明によると、製品の取扱説明書に従い、同製品に装着する SIM カードに対する設定を PC で行い、
その後、Armadillo の /etc/network/interfaces で usb0 の設定を追加すればよいようです:
 http://www.pixela.co.jp/products/network/pix_mt110/data/pix_mt110_setup
ただし、カーネルのコンフィグレーションを変更してビルドし直す必要があるかも知れません。
X1 の defconfig と、上の一番目のページをご覧ください。
-----------------

lsusbの実行結果を見る限り、必要になりそうなコンフィグレーションは以下ですね。

CONFIG_USB_NET_CDCETHER: すでに有効
CONFIG_USB_NET_RNDIS_HOST: 無効なので有効に
CONFIG_USB_NET_RNDIS_WLAN: 無効なので有効に

> lsusbの実行結果を見る限り、必要になりそうなコンフィグレーションは以下ですね。
>
> CONFIG_USB_NET_CDCETHER: すでに有効
> CONFIG_USB_NET_RNDIS_HOST: 無効なので有効に
> CONFIG_USB_NET_RNDIS_WLAN: 無効なので有効に

ありがとうございます。
有効にする方法ですが、下記コマンドから該当のパラメータを探し当てるという手順であっていますでしょうか?

make ARCH=arm menuconfig
Network device support --->
※このメニューより該当のものを探す

認識不足で申し訳ありませんが、確認させてください

古関です。

> 有効にする方法ですが、下記コマンドから該当のパラメータを探し当てるという手順であっていますでしょうか?
はい。
menuconfig画面が出てから、/ スラッシュで検索できます。
見つけたらカーソルを合わせえてスペースキーを押せば選択できます。

RNDISはナシでもCDC-Ethernetで動くかもしれません。
ifconfig -aしたときに、usb0とかwwan0とか新しいネットワークデバイス見えていたりしないでしょうか。

ご回答ありがとうございます。
報告が遅くなり申し訳ありません。
ご教授いただいた方法で、パラメータを有効にしカーネルの書き換えを行うことで認識しました。

特に手動でネットワークインタフェースの追加は必要ありませんでした。
カーネルを書き換え、USBを挿して再起動するとeth1として認識されIPが割り振られることを確認できました。

ありがとうございました。