akira.shimomura
2019年9月3日 16時20分
https://users.atmark-techno.com/armadillo-iot-g3l/software-linux-3-14
に記載されているインストールディスクイメージをダウンロードし、このイメージファイルから
Armadillo-IoT G3Lをセットアップし、nmcliによるLTE設定、および
/etc/connection-recover/gsm-ttyACM0_connection-recover.conf
のPING_DEST_IPを通信できるIPアドレスに変更して再起動後、
https://armadillo.atmark-techno.com/howto/armadillo-iot-g3l-lte-firewall
に記載の方法2でLTEモジュールのFirewall無効化のコマンドを実行すると
root@armadillo:~# els31-firewall-disable error: els-firewall-disable root@armadillo:~# els31-firewall-get-status Error: No modem response
のようにエラーとなり、LTEモジュールのFirewall無効化ができません。
(PING_DEST_IPに設定したアドレスにはPingは通る状態です)
LTEモジュールのFirewall無効化を行えるようにするには、他に何か設定が必要なのでしょうか?
また、LTEモジュールのFirewall無効化のコマンドが公開された際に使用していたカーネル(v3.14-x1-at17)
では、特に追加設定することなく使用できていたコマンドでしたが、v3.14-x1-at22 では
追加設定が必要な理由はありますでしょうか?
コメント
akira.shimomura
at_mitsuhiro.yoshida
吉田です。
こちらでも同一の環境で動作確認したところ
https://armadillo.atmark-techno.com/howto/armadillo-iot-g3l-lte-firewall
の方法2で動作いたしました。
動作環境の確認ですが、インターネットに繋がっている環境でしょうか?
ツール内でping導通の確認を行っておりますので、
インターネットに接続していないとエラーになります。
ご確認お願いします。
akira.shimomura
akira.shimomura
吉田様
> こちらでも同一の環境で動作確認したところ
> https://armadillo.atmark-techno.com/howto/armadillo-iot-g3l-lte-firewall
> の方法2で動作いたしました。
動作したとのことですが、こちらではまだ動作できません。
下記の手順で行っているのですが、何か間違っている操作などありますでしょうか?
1.https://users.atmark-techno.com/files/downloads/armadillo-iot-g3l/image…
をダウンロードしてSDカードに書き込み。
2.SDカード・ジャンパーピンをG3Lに取り付けて、G3L電源ON。
3.G3Lのインストール完了後、電源OFFし、SDカード・ジャンパーピン取り外し。
4.G3Lの電源ON。
5.nmcliを使用してLTE設定。
6./etc/connection-recover/gsm-ttyACM0_connection-recover.conf
のPING_DEST_IPを通信できるIPアドレスに変更。
7.G3Lを再起動(rebootコマンド実行)。
8.LTE接続後、6でPING_DEST_IPに指定したIPアドレスにPing成功することを確認。
9.els31-firewall-disable / els31-firewall-get-status を実行するも、エラーになる。
at_mitsuhiro.yoshida
akira.shimomura
akira.shimomura
アットマークテクノ様
お世話になっております。
本件について、しばらく経過していますが、状況いかがでしょうか?
rebootコマンドによる再起動後、
els31-firewall-get-status/els31-firewall-disable 等
が失敗とならないようにする対処方法で、wwan-force-restart
ではなく別の方法で復旧させることはできないでしょうか?
wwan-force-restart で復旧させる場合、一度接続したLTE回線を
切断してしまい、起動シーケンスが遅くなってしまうので、
あまり良い方法ではないと考えています。
また、Kernel4.9(v4.9-at11)の下記インストールディスクイメージ
https://users.atmark-techno.com/files/downloads/armadillo-iot-g3l/image…
をArmadillo-IoT G3Lにセットアップし、
https://users.atmark-techno.com/comment/7479#comment-7479
に記載しました手順で確認しましたところ、同様に
els31-firewall-disable / els31-firewall-get-status
で実行エラーが発生しました。
今後、カーネルを更新しようとしていく際にこの不具合が絡んでくる訳
なのですが、この不具合が修正される見込みはありますでしょうか?
また、その時期はいつごろになりますでしょうか?
at_koseki
古関です。
> であれば、カーネル更新前(v3.14-x1-at17を使用)では問題なく閉域網でも上記
> コマンドは実行できていました。
> なぜ、v3.14-x1-at22で実行できなくなってしまったのでしょうか?
現在原因調査中です。
単純に二分探索をしていった所、以下のタイミングでデグレしている用に見えています。
- v3.14-at21では発生せず、v3.14-at22で発生する
- v4.9-at9では発生せず、v4.9-at10で発生する
症状としては/dev/ttymxc6というモデム用シリアルポートからATコマンドが受け付けなくなっていることで
firewallの設定変更ができない状況になっています。
根本対策には時間がかかりそうです。
> 再現した際手順9の後に、
> wwan-force-restart
> を実行した後に再度
> els31-firewall-disable / els31-firewall-get-status
> を実行すると動作しましたので、お手数ですが試して頂けますでしょうか?
大変申し訳ありませんが、直近できる対策としては、
弊社吉田が提示した上記のワークアラウンドとなります。
大変ご迷惑をおかけして申し訳ありません。
akira.shimomura
at_keita.mogaki
茂垣です。
本件に付きまして、対応が遅れてしまい
大変申し訳ありません。
原因が判明致しましたので、ご報告致します。
■不具合の原因
Armadillo-IoT G3LのELS31-J(LTEモジュール)に対してATコマンドで
SPOWパラメータを一度も設定していない時に、本不具合が発生することが判明致しました。
■発生する問題
Armadillo-IoT G3Lを"reboot"すると、ELS31-JのUARTの信号線(TXD)が、
LOWのままとなってしまう事態が発生しておりました。
この結果、"els31-firewall-disable"等のコマンドを実行しても
ELS31-JがUARTの応答を返せないため、error終了となっていました。
※"wwan-force-restart"の実行や、"poweroff"してから再起動を行うと、この問題は発生しませんでした。
■対策
以下のコマンドを実行して、ATコマンドからSPOWパラメータの上書きをして頂けると、不具合が解消されます。
root@armadillo:~# service connection-recover stop root@armadillo:~# service ModemManager stop root@armadillo:~# cu -l /dev/ttyACM0 -s 115200 Connected. ATE1 // キーボードから"ATE1"と入力してEnterを押下して下さい。※その後のコマンドが全て表示される様になります。 OK AT^SPOW? // キーボードから"AT^SPOW?"と入力してEnterを押下して下さい。 ^SPOW: 2,5000 // ここで表示されるSPOWの値を確認して下さい。今回の例では'2,5000'となっています。 OK AT^SPOW=2,5000 // キーボードから"AT^SPOW=[SPOWコマンドで表示された値]"を入力してEnterを押下して下さい。今回の例では'2,5000'を設定しています。 OK ~. // キーボードから"~."(チルダ ドット)を入力して、cuコマンドを終了します。 Disconnected. root@armadillo:~# poweroff
本コマンドは一度設定して頂ければ、その後設定を行う必要はありません。
■動作確認
上記の対策を実施したのち、電源を投入して頂くと、一連の不具合は発生しなくなります。
また、"els31-firewall-disable"コマンドに付きまして、LTEネットワークのコネクション確立中にerrorを返す事があります。
そのため、以下のコマンドで、"ttyACM0"の第三パラメータが"connected"になってから実行して頂けると、
確実に設定を行うことができます。
root@armadillo:~# nmcli device | grep ttyACM0 ttyACM0 gsm connecting (prepare) gsm-ttyACM0 // "connecting (prepare)":コネクション確立中 root@armadillo:~# els31-firewall-disable error: els-firewall-disable // "els-firewall-disable"コマンドはエラーになります。 root@armadillo:~# nmcli device | grep ttyACM0 ttyACM0 gsm connected gsm-ttyACM0 // "connected":コネクション完了 root@armadillo:~# els31-firewall-disable success: els-firewall-disable // "els-firewall-disable"コマンドは成功します。
ご確認の程、よろしくお願い致します。
以上です。
akira.shimomura
at_keita.mogaki
茂垣です。
> reboot
> でも問題ないでしょうか?
rebootだけではArmadillo-IoT G3LのELS31-J(LTEモジュール)のTXDが、LOWのまま起動してしまいます。
以下に記載しました手順の通り、reboot後に"wwan-force-restart"を実行すれば、TXDがLOWになる不具合は解消され、"els31-firewall-disable"コマンドも成功致します。
root@armadillo:~# service connection-recover stop root@armadillo:~# service ModemManager stop root@armadillo:~# cu -l /dev/ttyACM0 -s 115200 Connected. ATE1 // キーボードから"ATE1"と入力してEnterを押下して下さい。※その後のコマンドが全て表示される様になります。 OK AT^SPOW? // キーボードから"AT^SPOW?"と入力してEnterを押下して下さい。 ^SPOW: 2,5000 // ここで表示されるSPOWの値を確認して下さい。今回の例では'2,5000'となっています。 OK AT^SPOW=2,5000 // キーボードから"AT^SPOW=[SPOWコマンドで表示された値]"を入力してEnterを押下して下さい。今回の例では'2,5000'を設定しています。 OK ~. // キーボードから"~."(チルダ ドット)を入力して、cuコマンドを終了します。 Disconnected. root@armadillo:/# reboot // 〜再起動〜 root@armadillo:/# wwan-force-restart // 〜LTEモジュールの再起動〜 root@armadillo:/# nmcli device | grep ttyACM0 ttyACM0 gsm connected gsm-ttyACM0 // "connected"となっている事を確認 root@armadillo:/# els31-firewall-disable success: els-firewall-disable
これを一度実行すると、次回以降はrebootしても、LTEモジュールのFirewall無効化の設定が行えるようになります。
ご確認の程、よろしくお願い致します。
以上です。
akira.shimomura
アットマークテクノ 茂垣様
いつもお世話になっております。
> これを一度実行すると、次回以降はrebootしても、LTEモジュールのFirewall無効化の設定が行えるようになります。
確認しましたところ、
SPOW再設定 → 再起動 → wwan-force-restart → 電源OFF → 電源ON
とすると、再度
root@armadillo:~# els31-firewall-get-status Error: No modem response root@armadillo:~#
となりました。
また、電源OFF → 電源ON の操作を 再起動にしても同様になりました。
どうも、ご提示いただいた操作方法では問題解消されないようです。
at_keita.mogaki
茂垣です。
> どうも、ご提示いただいた操作方法では問題解消されないようです。
以下に提示するコマンドを実行し、コマンドの実行結果を教えて頂いてもよろしいでしょうか?
■ELS31-Jのファームウェアバージョン確認
root@armadillo:~# service connection-recover stop root@armadillo:~# service ModemManager stop root@armadillo:~# cu -l /dev/ttyACM0 -s 115200 Connected. ATE1 // キーボードから"ATE1"と入力してEnterを押下して下さい。※その後のコマンドが全て表示される様になります。 OK ATI1 // キーボードから"ATI1"と入力してEnterを押下して下さい。 Cinterion ELS31-J REVISION 4.3.2.1b A-REVISION 4.3.3.0-36584 L-REVISION 3.7.6 OK ~. // キーボードから"~."(チルダ ドット)を入力して、cuコマンドを終了します。 Disconnected. root@armadillo:~#
■els31-utilsのバージョンの確認
root@armadillo:~# apt show els31-utils Package: els31-utils Version: 1.1.0 Priority: extra Section: utils Maintainer: Tetsuhisa KOSEKI <koseki@atmark-techno.com> Installed-Size: 32.8 kB Depends: init-system-helpers (>= 1.18~), atmark-x1-base, expect Homepage: http://armadillo.atmark-techno.com/ Download-Size: 5022 B APT-Manual-Installed: yes APT-Sources: http://download.atmark-techno.com/debian stretch/main armhf Packages Description: Utilities for Gemalto ELS31 on Armadillo board root@armadillo:~#
また、本件は以下のお問い合わせ内容と同じ環境でしょうか?
https://users.atmark-techno.com/forum/armadillo/4336
よろしくお願い致します。
akira.shimomura
アットマークテクノ 茂垣様
いつもお世話になっております。
下記、回答いたします。
> ■ELS31-Jのファームウェアバージョン確認
root@armadillo:~# cu -l /dev/ttyACM0 -s 115200 Connected. OK ATI1 Cinterion ELS31-J REVISION 4.3.2.1b A-REVISION 4.3.3.0-36584 L-REVISION 3.7.6 OK ~. Disconnected.
■els31-utilsのバージョンの確認
root@armadillo:~# apt show els31-utils Package: els31-utils Version: 1.1.0 Maintainer: Tetsuhisa KOSEKI <koseki@atmark-techno.com> Installed-Size: 32.8 kB Depends: init-system-helpers (>= 1.18~), atmark-x1-base, expect Homepage: http://armadillo.atmark-techno.com/ Priority: extra Section: utils Download-Size: 5022 B APT-Manual-Installed: yes APT-Sources: http://download.atmark-techno.com/debian/ jessie/main armhf Packages Description: Utilities for Gemalto ELS31 on Armadillo board
> また、本件は以下のお問い合わせ内容と同じ環境でしょうか?
> https://users.atmark-techno.com/forum/armadillo/4336
いいえ、違います。
上記リンク先は、あるお客様環境において発生している問題です。
この問い合わせは、開発で使用しているG3L(3台)で確認しています。
3台ともバージョンは上記回答と同じものとなります。
at_keita.mogaki
akira.shimomura
アットマークテクノ 茂垣様
いつもお世話になっております。
> ・起動してから問題が発生するまでのsyslog
syslogとあわせてコンソールログを添付します。
> ・カーネルのバージョン
Linux armadillo 3.14.79-at22
です。
ご確認よろしくお願いいたします。
ファイル | ファイルの説明 |
---|---|
syslog.txt | SPOW再設定から問題発生までのsyslog |
console_log.txt | 上記操作時のコンソールログ |
at_keita.mogaki
茂垣です。
ご連絡が遅れてしまい、大変申し訳ありません。
以下製品アップデートにて不具合を解消致しましたので、ご報告致します。
■Armadillo 製品アップデートのお知らせ (2020年6月/Armadillo-IoT G3L対象)
https://armadillo.atmark-techno.com/news/20200629/software-update-aiotg…
■不具合の原因
本件はrebootコマンド実行時に、i.MX7より先に
LTEモジュールが起動してしまう事が原因でした。
LTEモジュールがi.MX7より先に起動する事で、
ファイアーフォール設定を行なう際に使用する
"/dev/ttymxc6"が無効状態になってしまい、
ATコマンドが失敗するという事態が発生していました。
■修正内容
rebootコマンド実行時に、
LTEモジュールをcold rebootさせるソフトウェア修正を行い、
i.MX7とLTEモジュールが同時に起動するように修正しました。
何卒よろしくお願い致します。
以上です。
akira.shimomura
akira.shimomura
at_keita.mogaki
at_keita.mogaki
茂垣です。
ご連絡が遅れてしまい、申し訳ありません。
> 本フォーラムの不具合について、2020年6月のアップデートではカーネル v4.9での対応をされていますが、
> カーネル V3.14での対応をする予定はありますでしょうか?
本件に付きまして、以下製品アップデートにて
不具合を解消致しましたので、ご報告致します。
■Armadillo 製品アップデートのお知らせ (2020年7月/Armadillo-IoT G3L対象)
https://armadillo.atmark-techno.com/news/20200720/software-update-aiotg…
よろしくお願い致します。
以上です。
akira.shimomura
2019年9月4日 10時13分
補足です。
> https://users.atmark-techno.com/armadillo-iot-g3l/software-linux-3-14
>
> に記載されているインストールディスクイメージをダウンロードし、このイメージファイルから
使用したイメージファイルのバージョンは「v20190830」です。
https://users.atmark-techno.com/files/downloads/armadillo-iot-g3l/image…
(URLだとバージョンが不明でしたので)
> に記載の方法2でLTEモジュールのFirewall無効化のコマンドを実行すると
> ・・・
> のようにエラーとなり、LTEモジュールのFirewall無効化ができません。
その後、電源OFF→ONで、Firewall無効化コマンドが実行できるようになりましたが、
そこから reboot すると、Firewall無効化コマンドの実行ができなくなります。
reboot で、シャットダウンしていく際、もしくは起動してくる際に何かの処理が
不足しているのではないでしょうか?