Armadilloフォーラム

スリープ(SMS)モードでの間欠動作時に異常なタイミングで起床する

s1_ogura

2024年7月31日 9時20分

前提環境:
Armadillo-IoT ゲートウェイ A6E +Di8+Ai4
LTE:Cat.M1モデル

お世話になっております。
マニュアルの6.1.4. 状態遷移トリガにコンテナ終了通知を利用する を利用して間欠動作を行っております。

スリープ(SMS)モードを指定した際に、RTCに指定した起床時間とは全く異なるタイミングで起床することがあります。(RTC:120と指定した際に、コンテナ終了後30秒程度で起床する等)
SMSは送信していないため、こちらが意図していない何かしらのSMSを受信して起床しているのかと考え、起床後にmmcli -m 0 --messaging-list-smsを実行したところ結果は「No sms messages were found」となりました。このことから、SMSを受信しているわけではないと理解しております。

また、モードにスリープ・シャットダウンを指定して動作させた場合には正常にRTCのトリガー条件に指定した時間で起床しております。
そのため、RTC割り込み自体に問題はないと考えております。

なぜRTCで指定したのと異なる時間に起床しているのか、原因が分からず困っております。
原因や原因の調査方法など、何かご存じのことがありましたらご教示いただきたいです。
よろしくお願いいたします。

以下、各モードでの設定ファイル(/etc/atmark/power-utils.conf)の内容です。

スリープ・シャットダウン時:
TARGET='my_container'
MODE='SLEEP'('SHUTDOWN')
WAKEUP='RTC:120'

スリープ(SMS)時:
TARGET='my_container'
MODE='SLEEP'
WAKEUP='RTC:120', 'SMS'

コメント

at_mitsuhiro.yoshida

2024年8月1日 13時49分

吉田です。

SMS を起床トリガーに設定した際、グローバル IP を使用している SIM の場合、
なんらかのデーターを受信して起床する可能性はあります。

吉田様

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

詳しくは分かっていないのですが、SIMは閉域網のものを使用しているためグローバルIPではないと思っています。

もしなんらかのデーターを受信して起床している場合、そのなんらかのデーターが何かを確認する方法はございますでしょうか。
よろしくお願いいたします。

> 吉田です。
>
> SMS を起床トリガーに設定した際、グローバル IP を使用している SIM の場合、
> なんらかのデーターを受信して起床する可能性はあります。

at_mitsuhiro.yoshida

2024年8月2日 17時29分

吉田です、情報ありがとうございます。

> もしなんらかのデーターを受信して起床している場合、そのなんらかのデーターが何かを確認する方法はございますでしょうか。

ありません。
LTE モジュールがデーターを検知して起床していると思われますが、
どのようなデーターで起床しているかは確認できません。

吉田様
ご回答ありがとうございます。
どのようなデーターで起床しているか確認する方法がないとのこと、承知いたしました。

追加の情報として、異常なタイミングでの起床が発生した際の時間を記録したところ、ほとんどの場合コンテナ終了から20~30秒後に起床していることが分かりました。
このことから関係のない何かではなく、動作に関連した何かを受信しているのではないかと考えております。
コンテナ終了前に応答が返ってくるような送信をLTEモジュール側から行い、応答が返ってくる前にスリープに入っている(スリープに入った後にその応答を受信して起床している)といった可能性は考えられますでしょうか。

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

> 吉田です、情報ありがとうございます。
>
> > もしなんらかのデーターを受信して起床している場合、そのなんらかのデーターが何かを確認する方法はございますでしょうか。
>
> ありません。
> LTE モジュールがデーターを検知して起床していると思われますが、
> どのようなデーターで起床しているかは確認できません。