Armadilloフォーラム

SDカードからのインストールに関して

tipstar0125

2024年8月21日 13時24分

以下を参考にSDカードからインストールする方法を試しています。
https://manual.atmark-techno.com/armadillo-iot-g4/armadillo-base-os-dev…

一応インストールはできたのですが、以下の問題あります。
シリアル出力が一部ないのは問題ないのですが、たまに起動に失敗するのをなんとかしたいです。

・Armadillo起動時にアプリ起動のシリアル出力がされない
・Armadilloの電源オフ時にシャットダウンの様子がシリアル出力されない
・たまに起動に失敗する
※シリアル出力は何回か起動していると突然出力されるようになるものもありました。
出力されるようになると、起動も安定している?ように感じます。

安定して起動できるようにしたいのですが、何が原因かわからず、アドバイスいただけると助かります。

コメント

アットマークテクノの古賀です。

tipstar0125さん:
>以下を参考にSDカードからインストールする方法を試しています。
>https://manual.atmark-techno.com/armadillo-iot-g4/armadillo-base-os-dev…

abos-ctrl make-installer コマンドをお使いなのですね。
Armadillo-IoT A6E のマニュアルでも説明していますので、そちらもご覧になってみてください:
 https://manual.atmark-techno.com/armadillo-iot-a6e/armadillo-iotg-a6e_p…

>一応インストールはできたのですが、以下の問題あります。
>シリアル出力が一部ないのは問題ないのですが、たまに起動に失敗するのをなんとかしたいです。
>
>・Armadillo起動時にアプリ起動のシリアル出力がされない
>・Armadilloの電源オフ時にシャットダウンの様子がシリアル出力されない
>・たまに起動に失敗する
>※シリアル出力は何回か起動していると突然出力されるようになるものもありました。
>出力されるようになると、起動も安定している?ように感じます。
>
>安定して起動できるようにしたいのですが、何が原因かわからず、アドバイスいただけると助かります。

お手元の環境について、いくつか教えてください:

Q1.) お手元の Armadillo-IoT A6E のソフトウェアのバージョンを教えてください。複数台ある場合は、それぞれについて教えて頂けると助かります。
  次のコマンドを実行すると、ソフトウェアのバージョン一覧が出力されます:

# cat /etc/sw-versions

Q2.) お手元には、Armadillo-IoT A6E が何台かあるのでしょうか?
  「シリアル出力は何回か起動していると突然出力されるようになるものもありました。」と書いていらっしゃるのは、何台かある Armadillo-IoT A6E のうち、出力されるものとされないものがある、という意味でしょうか。

Q3.) (Q2) の回答が NO の場合の質問です:「シリアル出力は何回か起動していると突然出力されるようになるものもありました。」というのは、abos-ctrl make-installer コマンドでインストールディスクを作成してインストールする、という手順を何度か行った時に、インストール後の最初の起動から出力される場合と、何度か起動しないと出力されない場合があった、ということでしょうか。

Q4.) インストールディスクの microSD カードは、一つだけでしょうか?複数お使いの場合は、microSD カードでの違いがあるかどうかを教えてください。

以上、ひとまずのお返事です。お手数をかけますが、どうぞ宜しくお願いします。

古賀様

ご対応ありがとうございます。
ご質問の件、以下回答します。よろしくお願いします。

> Q1.) お手元の Armadillo-IoT A6E のソフトウェアのバージョンを教えてください。複数台ある場合は、それぞれについて教えて頂けると助かります。
>   次のコマンドを実行すると、ソフトウェアのバージョン一覧が出力されます:

以下の通りです。
base_os 3.18.4-at.5
boot 2020.4-at20

> Q2.) お手元には、Armadillo-IoT A6E が何台かあるのでしょうか?
>   「シリアル出力は何回か起動していると突然出力されるようになるものもありました。」と書いていらっしゃるのは、何台かある Armadillo-IoT A6E のうち、出力されるものとされないものがある、という意味でしょうか。

合計3台で、1台が、ABOS Web経由でアプリをインストールし、SDカードにインストールイメージを保存したもので、
残り2台が、SDカードよりインストールしました。
この2台とも、シリアル出力はされませんでした。コピー元は出力されています。
※ちなみに、インストールしたアプリはSDカードにログを書き出すので、インストールイメージの保存と干渉しないように、podman stopでアプリを停止してから、実行しました

> Q3.) (Q2) の回答が NO の場合の質問です:「シリアル出力は何回か起動していると突然出力されるようになるものもありました。」というのは、abos-ctrl make-installer コマンドでインストールディスクを作成してインストールする、という手順を何度か行った時に、インストール後の最初の起動から出力される場合と、何度か起動しないと出力されない場合があった、ということでしょうか。

これは、abos-ctrl make-installer コマンドでインストールディスクを作成してインストール自体は1度しかしてなくて、起動・停止を何回か繰り返すと、
SDカードよりインストールした2台のうち1台が、シリアル出力されるようになった、という意味です。

> Q4.) インストールディスクの microSD カードは、一つだけでしょうか?複数お使いの場合は、microSD カードでの違いがあるかどうかを教えてください。

microSDは1つだけです。
使用しているのは以下です。
ちなみに、https://www.amazon.co.jp/KIOXIA-%E3%82%AD%E3%82%AA%E3%82%AF%E3%82%B7%E3…

アットマークテクノの古賀です。

tipstar0125さん:
>ご対応ありがとうございます。
>ご質問の件、以下回答します。よろしくお願いします。
>
>>Q1.) お手元の Armadillo-IoT A6E のソフトウェアのバージョンを教えてください。複数台ある場合は、それぞれについて教えて頂けると助かります。
>>  次のコマンドを実行すると、ソフトウェアのバージョン一覧が出力されます:
>
>以下の通りです。
>base_os 3.18.4-at.5
>boot 2020.4-at20

昨年10月にリリースしたバージョンをお使いなのですね。了解しました:
 https://armadillo.atmark-techno.com/news/20231030/software-update-aiota…

>>Q2.) お手元には、Armadillo-IoT A6E が何台かあるのでしょうか?
>>  「シリアル出力は何回か起動していると突然出力されるようになるものもありました。」と書いて
>>いらっしゃるのは、何台かある Armadillo-IoT A6E のうち、出力されるものとされないものがある、
>>という意味でしょうか。
>
>合計3台で、1台が、ABOS Web経由でアプリをインストールし、SDカードにインストールイメージを保存したもので、
>残り2台が、SDカードよりインストールしました。
>この2台とも、シリアル出力はされませんでした。コピー元は出力されています。
>※ちなみに、インストールしたアプリはSDカードにログを書き出すので、インストールイメージの保存と干渉しない
>ように、podman stopでアプリを停止してから、実行しました
>
>>Q3.) (Q2) の回答が NO の場合の質問です:「シリアル出力は何回か起動していると突然出力される
>>ようになるものもありました。」というのは、abos-ctrl make-installer コマンドで
>>インストールディスクを作成してインストールする、という手順を何度か行った時に、
>>インストール後の最初の起動から出力される場合と、何度か起動しないと出力されない場合があった、
>>ということでしょうか。
>
>これは、abos-ctrl make-installer コマンドでインストールディスクを作成してインストール自体は1度しか
>してなくて、起動・停止を何回か繰り返すと、SDカードよりインストールした2台のうち1台が、シリアル出力
>されるようになった、という意味です。

了解しました。とすると、お手元の3台は、それぞれ次の状況という認識で合っているでしょうか?

A.) abos-ctrl make-install コマンドを実行した個体。最初からシリアル出力が問題ない。

B.) SD カードからインストールした2台のうち1台。何度か起動した後、シリアル出力されるようになった。

C.) SD カードからインストールした2台のうち1台。現在もシリアル出力されない。

ところで、シリアル出力されない状況について教えてください。次のどちらの状況でしょうか?

1.) シリアルコンソールに何も出力されず、Armadillo にログインして操作することができない状況。

2.) シリアルコンソールで Armadillo にログインして操作するのは問題ないが、次の出力だけが行われない状況:
 - Armadillo起動時にアプリ起動のシリアル出力がされない
 - Armadilloの電源オフ時にシャットダウンの様子がシリアル出力されない

もし (2) の場合ですが、「電源オフ時にシャットダウンの様子がシリアル出力されない」というのは、poweroff コマンドを実行した後、何も出力されない状況なのでしょうか?
何か出力されるのであれば、上記 (A) の個体との違いを教えてくださいませ。

>>Q4.) インストールディスクの microSD カードは、一つだけでしょうか?複数お使いの場合は、microSD カードでの違いがあるかどうかを教えてください。
>
>microSDは1つだけです。
>使用しているのは以下です。
>ちなみに、https://www.amazon.co.jp/KIOXIA-%E3%82%AD%E3%82%AA%E3%82%AF%E3%82%B7%E3…

これについては、了解しました。有難うございます。

古賀さま

ご対応ありがとうございます。

> 了解しました。とすると、お手元の3台は、それぞれ次の状況という認識で合っているでしょうか?
> A.) abos-ctrl make-install コマンドを実行した個体。最初からシリアル出力が問題ない。
> B.) SD カードからインストールした2台のうち1台。何度か起動した後、シリアル出力されるようになった。
> C.) SD カードからインストールした2台のうち1台。現在もシリアル出力されない。

はい。合っています。

> ところで、シリアル出力されない状況について教えてください。次のどちらの状況でしょうか?
> 1.) シリアルコンソールに何も出力されず、Armadillo にログインして操作することができない状況。
> 2.) シリアルコンソールで Armadillo にログインして操作するのは問題ないが、次の出力だけが行われない状況:
>  - Armadillo起動時にアプリ起動のシリアル出力がされない
>  - Armadilloの電源オフ時にシャットダウンの様子がシリアル出力されない
> もし (2) の場合ですが、「電源オフ時にシャットダウンの様子がシリアル出力されない」というのは、poweroff コマンドを実行した後、何も出力されない状況なのでしょうか?
> 何か出力されるのであれば、上記 (A) の個体との違いを教えてくださいませ。

(2)の状況です。
(A)の個体の違いとしては、インストール方法が異なる以外の違いはないと思っています。

何点かお伝えし忘れていた事項があります。
初期化インストールが効いていそうな気もしています。
・個体Aに関しては、A6E用の初期化インストールディスク(SDカード)で初期化してから、ABOS Webでインストール
・個体Bに関しては、A6E用の初期化インストールディスク(SDカード)で初期化してから、個体Aのインストールディスクでインストール
・個体Cに関しては、初期化せず、個体Aのインストールディスクでインストール

アットマークテクノの古賀です。
取り急ぎ、一点コメント/質問です。

tipstar0125さん:
>>ところで、シリアル出力されない状況について教えてください。次のどちらの状況でしょうか?
>>1.) シリアルコンソールに何も出力されず、Armadillo にログインして操作することができない状況。
>>2.) シリアルコンソールで Armadillo にログインして操作するのは問題ないが、次の出力だけが行われない状況:
>> - Armadillo起動時にアプリ起動のシリアル出力がされない
>> - Armadilloの電源オフ時にシャットダウンの様子がシリアル出力されない
>>もし (2) の場合ですが、「電源オフ時にシャットダウンの様子がシリアル出力されない」というのは、poweroff コマンドを実行した後、何も出力されない状況なのでしょうか?
>>何か出力されるのであれば、上記 (A) の個体との違いを教えてくださいませ。
>
>(2)の状況です。
>(A)の個体の違いとしては、インストール方法が異なる以外の違いはないと思っています。

お聞きしたいのは、

・poweroff コマンドを実行した後、何も出力されない状況なのかどうか
・何か出力されるのであれば、(A) の個体との、出力内容の違い

です。

古賀さま

失礼しました。
poweroffコマンド実行後は、「armadillo:~#」が出力され、見た目はpoweroffコマンドが実行されていないように見えますが、SYS LEDが点滅し、一定時間立つと停止します。

個体Aは、以下が出力されます。

 4R * WARNING: clock skew detected!
zramswap                 | * Deactivating zram swap device ...local                    | * Stopping local ...podman-atmark            | * Stopping all podman containers ... [ ok ]
modemmanager             | * Stopping modemmanager ... [ ok ]
wwan-led                 | * Stopping wwan-led ...avahi-daemon             | * Stopping avahi-daemon ...atmark-power-utils       | * Stopping atmark-power-utils ...ems31-boot               | * Stopping ems31-boot ... [ ok ]
 * start-stop-daemon: no matching processes found
ems31-boot               | [ ok ]
buttond                  | * Stopping button watching daemon ...dnsmasq                  | * Stopping dnsmasq ...sshd                     | * Stopping sshd ...abos-web                 | * Stopping abos-web ...chronyd                  | * Stopping chronyd ... * start-stop-daemon: no matching processes found
atmark-power-utils       | [ ok ]
 [ ok ]
 [ ok ]
 [ ok ]
 [ ok ]
 [ ok ]
klogd                    | * Stopping busybox klogd ... [ ok ]
 [ ok ]
networkmanager           | * Stopping networkmanager ... [ ok ]
syslog                   | * Stopping busybox syslog ... [ ok ]
udev                     | * Stopping udev ... [ ok ]
nm-dispatcher: req:1 'down' [ttyCommModem], "/etc/NetworkManager/dispatcher.d/chrony": complete: failed with Script '/etc/NetworkManager/dispatcher.d/chrony' exited with status 1.
 [ ok ]
dbus                     | * Stopping System Message Bus ...nm-dispatcher: Caught signal 15, shutting down...
 [ ok ]
cgroups                  | * cgroups: waiting for podman-atmark (50 seconds)
sysfs                    | * sysfs: waiting for podman-atmark (50 seconds)
 [ ok ]
localmount               | * Unmounting loop devices
localmount               | * Unmounting filesystems
localmount               | *   Unmounting /run/netns ... [ ok ]
localmount               | *   Unmounting /var/app/volumes/sdcard ... [ ok ]
localmount               | *   Unmounting /var/tmp ... [ ok ]
localmount               | *   Unmounting /var/app/volumes ... [ ok ]
localmount               | *   Unmounting /var/app/rollback/volumes ... [ ok ]
localmount               | *   Unmounting /var/lib/containers/storage_readonly ... [ ok ]
localmount               | *   Unmounting /tmp ... [ ok ]
localmount               | *   Unmounting /var/log ... [ ok ]
localmount               | *   Unmounting /var/at-log ... [ ok ]
killprocs                | * Terminating remaining processes ... [ ok ]
killprocs                | * Killing remaining processes ... [ ok ]
wwan-safe-poweroff       | * Starting safe poweroff for WWAN ...mount-ro                 | * Remounting remaining filesystems read-only ...tty: ignoring all arguments
wwan-safe-poweroff       |not a tty
 *   Remounting / read only ... [ ok ]
mount-ro                 | [ ok ]
wwan-safe-poweroff       |OK
wwan-safe-poweroff       | [ ok ]
indicator_signals        | * Signaling external devices we are shutting down ... [ ok ]
The system is going down NOW!
Sent SIGTERM to all processes
Sent SIGKILL to all processes
Requesting system poweroff
[   85.726907] imx2-wdt 20bc000.watchdog: Device shutdown: Expect reboot!
[   85.733909] reboot: Power down

アットマークテクノの古賀です。

tipstar0125さん:
>失礼しました。

あ、いえいえ。

>poweroffコマンド実行後は、「armadillo:~#」が出力され、見た目はpoweroffコマンドが実行されていないように見えますが、SYS LEDが点滅し、一定時間立つと停止します。
>
>個体Aは、以下が出力されます。

有難うございます。poweroff コマンドの実行後、何も出力されないという症状なのですね。
それでは、次のコマンドを実行した時の出力がどうなるか、試してみていただいてもよいですか:

# fw_printenv | grep optargs

もし、このコマンドの出力内容に違いがあれば、それが要因です。
ただし、少々不思議ではありますので、こちらでも調べてみたいと思います。お手数をかけてしまい、申し訳ありません。

古賀さま

ご対応ありがとうございます。
コマンド(fw_printenv | grep optargs)を各個体で試したのですが、全て同じ結果で以下の通りでした。

mmcargs=setenv bootargs console=${console} root=${mmcroot} ${optargs}
optargs=quiet

アットマークテクノの古賀です。返事が遅くなりました。

tipstar0125さん(2024年8月23日 18時22分):
>ご対応ありがとうございます。
>コマンド(fw_printenv | grep optargs)を各個体で試したのですが、全て同じ結果で以下の通りでした。

mmcargs=setenv bootargs console=${console} root=${mmcroot} ${optargs}
optargs=quiet

了解しました。こちらは無関係ということですね。

>>了解しました。とすると、お手元の3台は、それぞれ次の状況という認識で合っているでしょうか?
>>A.) abos-ctrl make-install コマンドを実行した個体。最初からシリアル出力が問題ない。
>>B.) SD カードからインストールした2台のうち1台。何度か起動した後、シリアル出力されるようになった。
>>C.) SD カードからインストールした2台のうち1台。現在もシリアル出力されない。
>
>はい。合っています。
...
>何点かお伝えし忘れていた事項があります。
>初期化インストールが効いていそうな気もしています。
>・個体Aに関しては、A6E用の初期化インストールディスク(SDカード)で初期化してから、ABOS Webでインストール
>・個体Bに関しては、A6E用の初期化インストールディスク(SDカード)で初期化してから、個体Aのインストールディスクでインストール
>・個体Cに関しては、初期化せず、個体Aのインストールディスクでインストール

(C) の個体について、「初期化インストールディスク(SDカード)」で初期化した場合にどうなるか、試してみて頂くことは可能でしょうか?

もし、それでシリアル出力されるようになるのであれば、「初期化インストールディスク(SDカード)」での初期化有無が要因ということになりますが、工場出荷時には、弊社からリリースしているのと同じ内容のインストールディスクイメージで初期化していますので、不思議ではあります。

古賀さま

ご対応ありがとうございます。
「初期化インストールディスク(SDカード)」で初期化を試してみたのですが、シリアル出力されませんでした。

色々私の方でも調査しているのですが、この問題の他に使用しているUART(ttymxc0)が高頻度で不通になる現象が発生しています。
※もう一つUARTは使用していますが、ttymxc6は特に問題ありません

podman exec -itでUARTを使用しているコンテナに入って、cat /dev/ttymxc0をしてみたのですが、
不通が発生しているときは、catコマンドが終了せず、何かしらのデータ書き込みが続いているように見えます。
これはpodman restartすれば正常に戻ります。

また、cat /var/log/messages | grep ttymxcをしてみました。
以下の通り、コンソールがttymxc0に設定されており、
このUART不通と起動時やシャットダウン時にシリアル出力されない問題はリンクしていそうな気がしています。

Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk1p1 rootwait ro quiet

ちなみに、ABOS Webからインストールしたときは以下の通りで、ttymxc2に設定されていました。

Kernel command line: console=ttymxc2,115200 root=/dev/mmcblk0p1 rootwait ro quiet

これが原因そうな気がしていますが、インストールの仕方でこの設定が変わる原因がわからず、
何かわかれば教えていただけると助かります。

アットマークテクノの古賀です。

tipstar0125さん:
>ご対応ありがとうございます。
>「初期化インストールディスク(SDカード)」で初期化を試してみたのですが、シリアル出力されませんでした。

ご確認有り難うございます。了解しました。

>色々私の方でも調査しているのですが、この問題の他に使用しているUART(ttymxc0)が高頻度で不通になる現象が発生しています。
>※もう一つUARTは使用していますが、ttymxc6は特に問題ありません
>
>podman exec -itでUARTを使用しているコンテナに入って、cat /dev/ttymxc0をしてみたのですが、
>不通が発生しているときは、catコマンドが終了せず、何かしらのデータ書き込みが続いているように見えます。
>これはpodman restartすれば正常に戻ります。
>
>また、cat /var/log/messages | grep ttymxcをしてみました。
>以下の通り、コンソールがttymxc0に設定されており、
>このUART不通と起動時やシャットダウン時にシリアル出力されない問題はリンクしていそうな気がしています。

そうですね。

Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk1p1 rootwait ro quiet

>
>ちなみに、ABOS Webからインストールしたときは以下の通りで、ttymxc2に設定されていました。

Kernel command line: console=ttymxc2,115200 root=/dev/mmcblk0p1 rootwait ro quiet

console の設定はブートローダー(u-boot)の環境変数で変更できますので、次のコマンドを実行してからリブートするとどうなるか、試してみてくださいませ:

# fw_setenv console ttymxc2,115200

ところで、console の設定に加えて、シリアル出力されない個体では、ルートファイルシステムのパーティションが eMMC のもの(/dev/mmcblk0p1)ではなく SD カードのもの(/dev/mmcblk1p1)になっていますね。これも気になります。

>これが原因そうな気がしていますが、インストールの仕方でこの設定が変わる原因がわからず、
>何かわかれば教えていただけると助かります。

念のため確認ですが、「起動デバイス設定スイッチ」は、eMMC 側になっているでしょうか?
 https://manual.atmark-techno.com/armadillo-iot-a6e/armadillo-iotg-a6e_p…

古賀さま

ご対応ありがとうございます。
ご提案のコマンドを試したところ、シリアル出力が正常になり、UARTの不通も解消されました。

パーティションがSDカードになっているとのことで、もう一度ログをgrepしたところ以下の通りでした。
パーティションが/dev/mmcblk1p1で表示されているのは初回だけなので、SDインストールをしたときのログが出力されているだけかなと思います。

Jan  1 00:00:01 (none) kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk1p1 rootwait ro quiet
Aug 28 17:16:06 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 28 17:26:09 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 28 17:30:41 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 28 17:39:03 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 28 17:45:19 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 28 17:53:12 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Jan  1 09:00:14 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 08:58:17 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 09:00:43 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 09:27:23 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 09:35:03 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Jan  1 09:00:11 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc0,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 16:24:18 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc2,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 16:28:42 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc2,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 16:35:24 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc2,115200 root=/dev/mmcblk0p1 rootwait ro quiet
Aug 29 16:37:54 armadillo kern.notice kernel: [    0.000000] Kernel command line: console=ttymxc2,115200 root=/dev/mmcblk0p1 rootwait ro quiet

一旦の応急処置としては、インストール時の任意のシェルスクリプトを実行できるようなので、ご提案のコマンドを追加することを試してみたいと思います。
また、根本原因は何か分かりますでしょうか?わかり次第教えていただけると助かります。
ちなみに、base osが最新でないことが原因である可能性はありますか?(一度最新版にしてどうなるか試してみます)

アットマークテクノの古賀です。

tipstar0125さん:
>ご対応ありがとうございます。
>ご提案のコマンドを試したところ、シリアル出力が正常になり、UARTの不通も解消されました。

ご確認有り難うございます。何らかの要因で、u-boot がカーネル引数に渡す console デバイス指定の環境変数の値が、変わってしまっていたようですね。

>パーティションがSDカードになっているとのことで、もう一度ログをgrepしたところ以下の通りでした。
>パーティションが/dev/mmcblk1p1で表示されているのは初回だけなので、SDインストールをしたときのログが出力されているだけかなと思います。

これについては、了解しました。おっしゃる通りのようですね。

>一旦の応急処置としては、インストール時の任意のシェルスクリプトを実行できるようなので、ご提案のコマンドを追加することを試してみたいと思います。
>また、根本原因は何か分かりますでしょうか?わかり次第教えていただけると助かります。
>ちなみに、base osが最新でないことが原因である可能性はありますか?(一度最新版にしてどうなるか試してみます)

UART デバイスと、それから、最初の質問で書いていらした abos-ctrl make-installer コマンドでインストールディスクを作成した時の、Armadillo の状態について確認させてください。
UART デバイスについて、先の質問で次のように書いていらっしゃいましたよね。

tipstar0125さん(2024年8月29日 13時21分):
>色々私の方でも調査しているのですが、この問題の他に使用しているUART(ttymxc0)が高頻度で不通になる現象が発生しています。
>※もう一つUARTは使用していますが、ttymxc6は特に問題ありません

/dev/ttymxc0 と /dev/ttymxc6 は、初期状態では存在していないと思うのですが、DTS overlay ファイル(.dtbo)やブートローダー(u-boot)は変更なしでお使いでしょうか?
ご使用のコンテナアプリケーションを開発する途上で、それらに何か変更を加えていらっしゃるのであれば、変更内容を教えてくださいませ。

古賀さま

ご対応ありがとうございます。

>UART デバイスと、それから、最初の質問で書いていらした abos-ctrl make-installer コマンドでインストールディスクを作成した時の、Armadillo の状態について確認させてください。
>/dev/ttymxc0 と /dev/ttymxc6 は、初期状態では存在していないと思うのですが、DTS overlay ファイル(.dtbo)やブートローダー(u-boot)は変更なしでお使いでしょうか?
>ご使用のコンテナアプリケーションを開発する途上で、それらに何か変更を加えていらっしゃるのであれば、変更内容を教えてくださいませ。

ハードウェアの設定に関しては、at-dtwebを用いてswuを生成して、インストールしています。

ちなみに、base_osを最新版の以下にしたところ、正常にインストールできました。

base_os 3.20.2-at.2

abos-ctrl make-installerしたときのログがbase_osで異なり、最新版だと以下の通りで、
consoleがttymxc2に設定されるようなログが出力されていました。
更新前だとこの出力はなかったと記憶しています。

armadillo:~# abos-ctrl make-installer
Checking if /dev/mmcblk1 can be used safely...
An installer system is already available on SD card. Use it? [Y/n]
Y
Setting console to console=ttymxc2,115200 in installer
Environment OK, copy 0
Copying boot image
Copying rootfs
Copying appfs
At subvol app/snapshots/volumes
At subvol app/snapshots/boot_volumes
At subvol app/snapshots/boot_containers_storage
Cleaning up and syncing changes to disk...
Installer updated successfully!

アットマークテクノの古賀です。

tipstar0125さん:
>>UART デバイスと、それから、最初の質問で書いていらした abos-ctrl make-installer コマンドでインストールディスクを作成した時の、Armadillo の状態について確認させてください。
>>/dev/ttymxc0 と /dev/ttymxc6 は、初期状態では存在していないと思うのですが、DTS overlay ファイル(.dtbo)やブートローダー(u-boot)は変更なしでお使いでしょうか?
>>ご使用のコンテナアプリケーションを開発する途上で、それらに何か変更を加えていらっしゃるのであれば、変更内容を教えてくださいませ。
>
>ハードウェアの設定に関しては、at-dtwebを用いてswuを生成して、インストールしています。

了解しました。

>ちなみに、base_osを最新版の以下にしたところ、正常にインストールできました。

>base_os 3.20.2-at.2

>
>abos-ctrl make-installerしたときのログがbase_osで異なり、最新版だと以下の通りで、
>consoleがttymxc2に設定されるようなログが出力されていました。
>更新前だとこの出力はなかったと記憶しています。

ご確認有り難うございます。これは、今年4月のアップデート(3.19.1-at.3)に含まれる、abos-ctrl make-installer (2.4.1-r0) で修正された以下の動作によるものです:
 https://armadillo.atmark-techno.com/news/20240423/update-aiota6e

「・abos-ctrl make-installer: 使用するコンソールを自動的に選択するように変更」

古賀さま

ありがとうございます。
原因としては、base_osが3.18以前だと、コンソールを自動選択されるようになってなかったので、
デフォルト?でttymxc0が選択されてしまった、という理解をしました。
これが原因であれば、その他の機能への波及とかはなさそうと思っているのですが、同じ見解でしょうか?

アットマークテクノの古賀です。

tipstar0125さん:
>ありがとうございます。
>原因としては、base_osが3.18以前だと、コンソールを自動選択されるようになってなかったので、
>デフォルト?でttymxc0が選択されてしまった、という理解をしました。
>これが原因であれば、その他の機能への波及とかはなさそうと思っているのですが、同じ見解でしょうか?

そうですね。同じ見解です。
ttymxc0 が選択されていたのは、abos-ctrl make-installer コマンドを実行した Armadillo での設定が影響していたのだと思います。