Armadillo-IoT G3ソフトバンク版にてさくらのセキュアモバイルコネクトのLTE網に接続できない

後藤です。

表題の件ですが、Armadillo-IoT G3ソフトバンク版にてさくらのセキュアモバイルコネクトのSIMでsoftbankのLTE網に接続できない問題がでています。

同じSIMでも、Armadillo-IoT G3 NTTドコモ版(動作環境はソフトバンク版と同一)、またLTE対応USBドングルでは問題無く接続できており、Armadillo-IoT G3ソフトバンク版でのみ接続できない状態です。

症状ですが、ModemManagerにて各種ATコマンドが実行された後、「AT+CREG?」の応答が「CREG: 2,0」となりネットワークの登録確認でタイムアウトとなるというものです(添付ログを参照)。mmcliで確認すると電波強度は0となっています。

過去のフォーラムへの投稿(https://users.atmark-techno.com/node/3452)も参考にしましたがSIMロックがかかっているという訳では無さそうです。

何か情報お持ちでしょうか?

■動作環境
実機:Armadillo-IoT G3 ソフトバンク版 (AGX3144-D00Z)
カーネル:v4.9-x1-at2
ルートファイルシステム:x1-debian-build v2.0.0 tar.gzで2018/10/10に構築したもの

■SIMの設定
APN:sakura
ユーザ名:無し
パスワード:無し
参考URL:https://www.sakura.ad.jp/services/sim/

ファイル名 ファイルの説明
syslog(Manager).log ModemManagerのログを含むsyslog
test.log mmcliの出力等
製品: 
Armadillo-IoT G3

古関です。

ネットワークレジストレーションできないように見えます。

お手数おかけしますが、問題切り分けのために、
下記コマンドの実行結果を教えていただけますでしょうか?
--------------------------------------------------------------
root@armadillo:~# cu -l /dev/ttymxc6 -s 115200
Connected.

ATI1

AT+CMEE=2

AT+CPIN?

AT+CNUM

AT+CSQ

AT+COPS=?
 ※ このコマンドはレスポンスに時間かかります

AT+COPS=0

AT+COPS?

~.(チルダドット)でcu終了

Disconnected.
root@armadillo:~#
--------------------------------------------------------------

古関様、

早速のご確認ありがとうございます。
コマンドの実行結果は以下の通りです。

----- ここから -----
root@armadillo:~# cu -l /dev/ttymxc6 -s 115200
Connected.
                               <------- ATI1
Quectel
EC25
Revision: EC25JFAR06A03M4G_SBK

OK
                               <------- AT+CMEE=2
OK
                               <------- AT+CPIN?
+CPIN: READY

OK
                               <------- AT+CNUM
OK
                               <------- AT+CSQ
+CSQ: 23,99

OK
                               <------- AT+COPS=?
+COPS: (0,"SoftBank","SoftBank","44020",7),(0,"KDDI","KDDI","44051",7),(0,"440 00","440 00","44000",7),(0,"KDDI","KDDI","44050",7),(0,"441 00","441 00","44100",7),(0,"JP DOCOMO","DOCOMO","44010",2),(0,"JP DOCOMO","DOCOMO","44010",7),(0,"440 52","440 52","44052",7),(0,"SoftBank","SoftBank","44020",2),,(0-4),(0-2)

OK
                               <------- AT+COPS=0
OK
                               <------- AT+COPS?
+COPS: 0

OK
~.

Disconnected.
root@armadillo:~#
----- ここまで -----

よろしくお願いいたします。

ファイル名 ファイルの説明
AT.log 本文に貼り付けたログと同じもの

古関です。

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

ハードウェアとしては電波強度に問題はなく、
登録可能なオペレータ一覧も基地局から取得できています。

ただ、オペレータ選択をオート設定にしているのですが、
ソフトバンクにオペレータ登録はされない状況です。

以下の手順で、オート登録ではなくマニュアルでソフトバンクに登録してみていただけますか?
--------------------------------------------------------------
 マニュアル設定
AT+COPS=1,2,"44020"

 確認
AT+COPS?
--------------------------------------------------------------

> 参考URL:https://www.sakura.ad.jp/services/sim/
1枚のSIMの3キャリアと書いているので、
オートではソフトバンクにならないのでは、と考えています。

※ 以下、さきほど頂いたログ内容の解析詳細です。
--------------------------------------------------------------
> <------- AT+CPIN?
> +CPIN: READY
SIMはREADYで問題なしです。

> <------- AT+CSQ
> +CSQ: 23,99
電波強度(ハードウェア的には)問題なしです。
ただし、オペレータ登録ができていませんので、
ソフトバンク電波のRSSI値では無く、他のキャリアの電波のRSSIの可能性もあります。
いずれにしろ、RF(ハードウェアの)不良では無さそうです。

ModemManagerで電波強度が0に見えるのは、ネットワークレジストレーションできないため、
電波強度取得に行かないためです。

> <------- AT+COPS=?
> +COPS: (0,"SoftBank","SoftBank","44020",7),(0,"KDDI","KDDI","44051",7),
> (0,"440 00","440 00","44000",7),(0,"KDDI","KDDI","44050",7),(0,"441 > 00","441 00","44100",7),
> (0,"JP DOCOMO","DOCOMO","44010",2),(0,"JP DOCOMO","DOCOMO","44010",7),
> (0,"440 52","440 52","44052",7),> (0,"SoftBank","SoftBank","44020",2),,(0-4),(0-2)
設定可能なオペレータ一覧は基地局から取得できています。

> <------- AT+COPS=0
> OK
オペレータ選択をオート設定にしてます。

> <------- AT+COPS?
> +COPS: 0
しかし、オペレータ登録はできていません。
--------------------------------------------------------------------

古関様、

ご提示頂きましたATコマンドを試してみたところ、ソフトバンクに固定されたようです。

そこで、nmcliでさくらに接続を試みたところ、ppp0へIPアドレスが自動で割り振られました。その後、Armadillo-IoT G3から他機器に対して疎通確認を行いましたが疎通できませんでした(Armadillo-IoT G3ではない別の機器から疎通確認は取れています)。さくらのクラウド上でセッションの確認を行ったところ、セッションが作られたことは確認できましたが、直ぐにセッションが削除されているようでした。

尚、ModemManagerのログを取得する目的で一度実機を再起動した所、「AT+COPS=1,2,"44020"」を実行すると「+CME ERROR: no network service」が発生するようになってしまいました(AT-ERROR.txt参照)。

ファイル名 ファイルの説明
test.log セッションが繋がった際のログ
AT-ERROR.txt 再起動後、AT+COPS=1,2,"44020"でエラーが発生するようになったログ

古関です。

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

やはり、マニュアル設定でなければソフトバンクにできないようですね。。

> -------------------------
> Status | lock: 'none'
> | unlock retries: 'unknown'
> | state: 'registered'
> | power state: 'on'
> | access tech: 'lte'
> | signal quality: '100' (recent)
> -------------------------
・・省略・・
> -------------------------
> 3GPP | imei: '861107030328893'
> | enabled locks: 'none'
> | operator id: '44020'
> | operator name: 'SoftBank SAKURA Internet'
> | subscription: 'unknown'
> | registration: 'roaming'
> -------------------------
registeredになったので、ネットワーク登録はできましたね。
registrationはローミングになるのですね。。

> そこで、nmcliでさくらに接続を試みたところ、ppp0へIPアドレスが自動で割り振られました。
> その後、Armadillo-IoT G3から他機器に対して疎通確認を行いましたが疎通できませんでした(Armadillo-IoT G3ではない別の機器から疎通確認は取れています)。
> さくらのクラウド上でセッションの確認を行ったところ、セッションが作られたことは確認できましたが、直ぐにセッションが削除されているようでした。

今回は、問題切り分けのために、ModemManagerが動作している横から
割り込んでATコマンドを手動実行しましたので、
この後に、nmcliコマンド(ModemManager経由)でデータ接続すると色々と状態の不一致が起きそうです。。

nmcliコマンドから接続するには、
ModemManager側からマニュアル設定でソフトバンク指定をする必要がありそうです。
※ デフォルトでは接続にAT+COPS=0が実行され、オート設定にされます。。

こちらで検証しておらず申し訳ないのですが、
nmcliコマンドでは次の手順でオペレータ指定できそうです。

以下の手順で接続できるか確認していただけますでしょうか?
(※ もし接続できない場合はModemManagerのデバッグログもいただきたいです)
------------------------------------------------------------------------
# nmcli connection modify gsm-ttyUSB2 gsm.sim-operator-id 44020
# nmcli connection down gsm-ttyUSB2
# nmcli connection up gsm-ttyUSB2
------------------------------------------------------------------------

古関様、

ご確認ありがとうございます。「nmcli connection up gsm-ttyUSB2」を実行すると以下の結果となるようです。

Error: Connection activation failed: No suitable device found for this connection.

各種ログを添付します。

ファイル名 ファイルの説明
syslog.txt syslog(Managerでgrepしています)
test.txt コマンド実行ログ

古関です。

> Nov 4 02:17:46 armadillo ModemManager[974]: (ttyUSB2): --> 'AT+COPS=0'
> Nov 4 02:17:46 armadillo ModemManager[974]: (ttyUSB2): <-- 'OK'
ログを確認しましたが、
マニュアルではなく、オート設定で接続にいってますね。。

申し訳ありません。
私が先程記載した方法ではできないようです。

ModemManagerのソースコードを見る限りでは、
マニュアル設定にするコードパス[※1]が存在しているので方法があるとは思うのですが、
まだオペレータの固定方法が分かっていません。

確認中です。

[※1] 以下コードパスです。
https://cgit.freedesktop.org/ModemManager/ModemManager/tree/src/mm-broadband-modem.c#n4559

ModemManagerを使用せずに、自前でチャットスクリプをを書いて
AT+COPS=1,2,"44020"を実行し、pppdすれば接続できるかもしれません。

古関です。

度々すみません。

> root@armadillo:~# nmcli connection add type gsm ifname ttyUSB2 apn sakura
> Connection 'gsm-ttyUSB2' (b25beeb5-0e34-423f-921f-8808d883327a) successfully added.
> root@armadillo:~# nmcli connection modify gsm-ttyUSB2 gsm.sim-operator-id 44020
> root@armadillo:~# nmcli connection down gsm-ttyUSB2
> Connection 'gsm-ttyUSB2' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1)
> root@armadillo:~# nmcli connection up gsm-ttyUSB2
> Error: Connection activation failed: No suitable device found for this connection.
> root@armadillo:~#

これだと、
nmcli connection add を実行した後にデータ接続処理が自動で入り、
接続処理中に設定をmodifyしている可能性がありますね。。。

念の為、もう一度以下を実行するかリブートして試してみていただけないでしょうか?

root@armadillo:~# nmcli connection down gsm-ttyUSB2
root@armadillo:~# nmcli connection up gsm-ttyUSB2

古関様、

念のため、リブートした後に先のコマンドを実行しましたが、やはり同様に失敗しました。

接続処理を入れないようにする、ということで以下のように考えて実施しましたが(あっているかどうかはわかりませんが)、やはりダメでした。

nmcli connect add

nmcli connect down

nmcli connect modify

nmcli connect up

ファイル名 ファイルの説明
syslog3.txt
test3.txt

古関様、

下記のコマンドにて、オペレータをマニュアルで指定、ローミングを Off にすることができまたが接続に至らずでした。

------------------------------------------------------------------------
# nmcli connection modify gsm-ttyUSB2 gsm.network-id 44020 home-only true
# nmcli connection down gsm-ttyUSB2
# nmcli connection up gsm-ttyUSB2
------------------------------------------------------------------------

「AT+COPS=1,2,"44020"」コマンドがエラーとなっているのが気になります。

ファイル名 ファイルの説明
daemon.log

古関です。

まだ調査している途中なのですが、
ローミングは有効にする必要がありそうです。

以下URLに記載があります。
https://manual.sakura.ad.jp/cloud/mobile-connect/sim/device-settings.html
> デバイスのモバイルネットワークの設定でローミングをオンにする必要があります。
> サービスの対応ネットワークはLTEのみのため、設定が可能なデバイスでは「LTEのみ」接続する設定を推奨します。
> サービスエリアはソフトバンクの4G LTEのみです。

SIMのIMSIの先頭5バイトがオペレータ(MCC/MNC)となるわけですが、
本SIMでは45406(検索した限りでは 香港:SmarTone Mobile Communications Ltd.)となっています。

以下ログの部分です。
> Nov 4 02:17:10 armadillo ModemManager[899]: loading IMSI...
> Nov 4 02:17:10 armadillo ModemManager[899]: (ttyUSB2) device open count is 3 (open)
> Nov 4 02:17:10 armadillo ModemManager[899]: (ttyUSB2) device open count is 2 (close)
> Nov 4 02:17:10 armadillo ModemManager[899]: (ttyUSB2): --> 'AT+CIMI'
> Nov 4 02:17:10 armadillo ModemManager[899]: (ttyUSB2): <-- '454065830913131OK'
> Nov 4 02:17:10 armadillo ModemManager[899]: loaded IMSI: 454065830913131

45406のSIMで44010(ドコモ)や44020(ソフトバンク)につなげるため、
ローミングは有効とすべきなのかなと。

どちらかと言うと、
"設定が可能なデバイスでは「LTEのみ」接続する設定を推奨します"
こちらに引っかかっている気がしています。。

以下のATコマンドでLTE固定にできることは分かっていますが、
現在のModemManagerからは実行されません。。
AT+QCFG="nwscanmode",3,1

また、EC25-Jが動作確認済みデバイスとしてwebに記載されているので接続はできると見ています。
https://www.sakura.ad.jp/services/sim/device-list/

メーカーに接続方法や動作確認時の情報が無いか確認いたします。

返答が遅れ申し訳ありません。

ModemManagerでは、オペレータ指定及びLTE固定の設定が難しいため、
pppdでSIMの接続を行う設定ファイルとチャットスクリプトを作成しました。

下記の内容を行い、状況が改善されるかご確認ください。

1. 添付のsakura_softbank.zipを展開し、中のファイルをArmadillo上に配置してください
sakura_softbankを /etc/ppp/peers/ に、
sakura_softbank_chatを /etc/chatscripts/ に配置

2. 次に、以下のコマンドを実行してください。

systemctl stop NetworkManager*
systemctl stop ModemManager.service
send-at /dev/ttymxc6 AT+CFUN=1,1

3. 実行したら、次のような表示が出るまでお待ちください。

usb 2-1.2: USB disconnect, device number 4
option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
option 2-1.2:1.0: device disconnected
option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
option 2-1.2:1.1: device disconnected
option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
option 2-1.2:1.2: device disconnected
option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
option 2-1.2:1.3: device disconnected
usb 2-1.2: new high-speed USB device number 5 using ci_hdrc
option 2-1.2:1.0: GSM modem (1-port) converter detected
usb 2-1.2: GSM modem (1-port) converter now attached to ttyUSB0
option 2-1.2:1.1: GSM modem (1-port) converter detected
usb 2-1.2: GSM modem (1-port) converter now attached to ttyUSB1
option 2-1.2:1.2: GSM modem (1-port) converter detected
usb 2-1.2: GSM modem (1-port) converter now attached to ttyUSB2
option 2-1.2:1.3: GSM modem (1-port) converter detected
usb 2-1.2: GSM modem (1-port) converter now attached to ttyUSB3

4. その後、以下のコマンドを実行し、接続を確認してください。

pon sakura_softbank
# 数秒待つ
plog -n 60
ファイル名 ファイルの説明
sakura_softbank.zip

> 返答が遅れ申し訳ありません。
>
> ModemManagerでは、オペレータ指定及びLTE固定の設定が難しいため、
> pppdでSIMの接続を行う設定ファイルとチャットスクリプトを作成しました。
>
> 下記の内容を行い、状況が改善されるかご確認ください。

お忙しい所、ご対応ありがとうございます。確認致します。

> > 返答が遅れ申し訳ありません。
> >
> > ModemManagerでは、オペレータ指定及びLTE固定の設定が難しいため、
> > pppdでSIMの接続を行う設定ファイルとチャットスクリプトを作成しました。
> >
> > 下記の内容を行い、状況が改善されるかご確認ください。
>
> お忙しい所、ご対応ありがとうございます。確認致します。

接続確認しましたが、以下のような結果となりました。

結果:
chatscript内で書かれたATコマンドで、ソフトバンク回線を
指定する箇所(AT+COPS)で失敗しました。
これは数回ponし直しても同様の結果でした。

上記のコマンドをコメントアウトしたところ基地局との接続を
確立したようですがLCPのところ(?)でハングアップして
しまいます。
これも数回やり直しても同様の結果でした。

ファイル名 ファイルの説明
sakura_softbank.log

古関です。

検証いただいたにも関わらず大変申し訳ありませんが、
モジュールメーカーから以下の回答をいただきました。

EC25-J SBK(ソフトバンク版)ではSIMロック機能の関係で
純正なソフトバンクキャリアのSIM以外は、接続できない可能性があるとの事です。

本SIMは海外オペレータコードで、ローミングする仕様ですので、
ソフトバンク版でのサポートは難しい状況です。

ご不便をおかけしますが、よろしくお願いいたします。

古関様、

モジュールメーカーへの問い合わせ有難うございます。
本件の組み合わせでは接続が困難である旨承知致しました。

これにて本トピックはクローズさせて頂きます。
ご協力ありがとうございました。

> 古関です。
>
> 検証いただいたにも関わらず大変申し訳ありませんが、
> モジュールメーカーから以下の回答をいただきました。
>
> EC25-J SBK(ソフトバンク版)ではSIMロック機能の関係で
> 純正なソフトバンクキャリアのSIM以外は、接続できない可能性があるとの事です。
>
> 本SIMは海外オペレータコードで、ローミングする仕様ですので、
> ソフトバンク版でのサポートは難しい状況です。
>
> ご不便をおかけしますが、よろしくお願いいたします。

古関です。

本SIMを入手したため動作確認しましたが、
以下の2製品では問題なく通信できています。

* AGX3142-(EC25-J DoCoMo版搭載品)
* AGX3146-(EC25-J KDDI版搭載品)

古関様、

お忙しい所、ご確認ありがとうございます。
今後の参考にさせて頂きます。

以上です。

> 古関です。
>
> 本SIMを入手したため動作確認しましたが、
> 以下の2製品では問題なく通信できています。
>
> * AGX3142-(EC25-J DoCoMo版搭載品)
> * AGX3146-(EC25-J KDDI版搭載品)