Armadilloフォーラム

Signal Qualityが低いcellに接続してしまう現象について

sshida

2020年7月7日 17時51分

Armadillo IoT G3 M1内蔵の3G/LTEモデムで常時接続して利用しております

ある1台の機材で問題があり、何か対応方法を教えて下さい。

この機材は mmcli -m 0 で表示される Signal Quality がほとんどの時間帯では 40 または 60 ですが、ときおり Signal Quality が 20か10未満のCell IDに接続し、その後よく切断してしまいます。

定期的にmmcli -m 0 --location-get で Cell ID を確認すると、
Signal Quality が 40-60 の Cell IDと 10未満のCell ID には偏りがあり、
電波が良くない基地局に接続しているように見えます。

7日間で Signal Quality が 40 以上だったCell IDは次のとおりで、Cell ID に変化があった回数は次のとおりです。
ほとんどは先頭が 4 で始まる Cell ID です。


18 41882116
1609 41882132
1879 41882196
18 46749968
14 46749970
534 46750035
3 68518026
4 68518027
3 68518031
2 68550661
1 68550751
3 68550757

一方、Signal Qualityが 40 未満で出現したCell IDの回数は次のとおりです。


1 41882116
120 41882132
181 41882196
2 46749968
62 46750035
73 68517945
74 68518026
1853 68518027
1247 68518031
1 68550659
261 68550661
39 68550751
147 68550757

4で始まるCell IDもありますが、ほとんどは 6で始まるCell IDです。
6で始まるCell ID での Signal Quality は 20 か 10 未満でした。

この、Signal Qualityが低いCell IDに接続しないようにするにはどのようにしたらよいでしょうか?

参考に、7日間の記録をCSVで添付いたします。
CSV形式は空白区切りの「時刻(ms)、Signal Quality、Cell ID」です。

ファイル ファイルの説明
time-signal-cellId.txt 7日間の記録です。CSV形式は空白区切りの「時刻(ms)、Signal Quality、Cell ID」です。

コメント

at_mitsuhiro.yoshida

2020年7月9日 10時55分

吉田です。

セルの選択ロジックは、モデム内で閉じているので変更できないのですが、
もし6で始まる方に接続している時と、4で始まるときで3G/LTEが違うのであれば、
接続先を3GまたLTE固定にすることで、現象を回避できる可能性があります。

接続中のネットワークは、
mmcli -m 0 コマンドの "access tech" で確認できます。
access tech: 'umts' → 3G
access tech: 'lte' → LTE
3G/LTEの固定手順は製品マニュアルの「6.2.6.6.5. 使用する通信方式を固定する」を
参照ください。
https://manual.atmark-techno.com/armadillo-iot-g3/armadillo-iotg-g3_pro…

但し、3G/LTEを固定してしまうと、選択していない側のネットワークには
接続しなくなりますので、ご了承の上ご利用ください。

上手く切り替わらない場合は、一度再接続サービスと ModemManager の再起動をお願いします。
# systemctl stop connection-recover.service
# service ModemManager stop
# service ModemManager start
# systemctl start connection-recover.service

また、モデム内の不揮発領域をクリアすることで状況が変わる可能性はあります。
手順は、
再接続サービスと ModemManager を停止します。
# systemctl stop connection-recover.service
# service ModemManager stop
以下のコマンドを実行します。
# ec25-clean-reset
再接続サービスと ModemManager を起動します。
# service ModemManager start
# systemctl start connection-recover.service