Armadilloフォーラム

Armadillo-IoT G3にてModemが見つからない

ippei

2017年1月17日 13時05分

Armadillo-IoT G3で3Gに接続できない不具合が発生したので解析したところ、
起動時にModem(PDS6-J)が見つかっていないようでした。

正常時のdmesg(normal-dmesg.log)と異常時のdmesg(error-dmesg.log)を添付いたします。

異常時にmmcli -Lでモデム一覧を出力してもモデムは出力されず、
mmcli -Sで改めて検索しても見つかりません。
そのため3Gに接続することができない、という状態でした。
マニュアル記載の3Gモデムの再起動方法や、
3g-recoverスクリプトはModemがある前提の動作なので効果ありませんでした。

この症状はrebootしても復帰せず、
3回以上rebootしてみましたが、
Modemが見つからない状態に変わりありませんでした。
電源を抜いて再度電源投入すると復帰しますが、
それ以外の方法では復帰できないようです。

なお、3Gに接続しない以外の動作は問題ないように思います。

dmesgの解析をしたところ、

通常はnormal-dmesg.log 390行目
[ 2.740664] cdc_acm 2-1.2:1.6: ttyACM3: USB ACM device
のようにttyACM3が見つかっているところ、

異常の場合は、error-dmesg.logの中でttyACMが見つけられていません。

USBドライバのcdc_acmは見つけられています。
203行目
[ 1.412587] usbcore: registered new interface driver cdc_acm
[ 1.416951] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

どうもusb hubの問題のように思えており、
usb hubの検出部分を抜粋すると、

通常(normal-dmesg.log)では
[ 1.968566] usb 2-1: new high-speed USB device number 2 using ci_hdrc
[ 2.120009] hub 2-1:1.0: USB hub found
[ 2.122662] hub 2-1:1.0: 3 ports detected
のように発見されていますが、

異常の場合(error-dmesg.log)は
[ 1.969044] usb 2-1: new high-speed USB device number 2 using ci_hdrc
[ 2.119117] usb 2-1: device no response, device descriptor read/64, error -71
[ 2.389035] usb 2-1: device no response, device descriptor read/64, error -71
のようにusb hubが応答していないように思います。

症状から見ると、なんらかの原因でusb hubがハングアップしていて、
電源入れ直さないとその症状が治らないように思われます。

この症状が起こっている(恒常的にModemが見つからない)状態を検知したら
自動復帰できるようにしたいのですが、
何か方法はありますでしょうか?
rebootしても直らないので、困っております。

何かご意見いただければ幸いです。
どうぞよろしくお願いいたします。

ファイル ファイルの説明
error-dmesg.log 3Gに繋がらない場合のdmesg
normal-dmesg.log 3Gに繋がる場合のdmesg
コメント

kes-konishi

2017年1月17日 14時59分

KES)小西です。

HUBのモジュール側であれば、
USBのVBUSをOFF→ONで再接続になるので、
HUBのモジュールがリセットされるのではないでしょうか?
(つまり抜き差ししているのと同じになります。)

参考URL:Documentation/usb/power-management.txt

at_koseki

2017年1月17日 17時13分

古関です。

U-Bootをバージョン: 2016.07-at3以降にアップデートしても問題が発生するでしょうか?
このバージョンで、搭載USB HUBが認識しないことがある不具合を修正しております。

下記の製品アップデートでリリースを行ったのですが、
リリースノートに記載漏れがありました。大変申し訳ございません。
http://armadillo.atmark-techno.com/news/20160929/software-update-aiotg3

リリースノートに追記致しました。

また、kernelもat2と古いバージョンをご利用されているようですので、
差し支えなければ、新しいバージョンへのアップデートを推奨致します。

よろしくおねがいします。

ippei

2017年1月17日 17時29分

ご回答ありがとうございます。
すでに確認、修正済みの件だったようで安心いたしました。
カーネルとU-Bootを最新版に変更して経過を見ます。
その状態でも発生してしまった場合は、USBのVBUSのOFF→ONを試してみます。
どうぞよろしくお願いいたします。