Armadilloフォーラム

LEDの有無

manamana

2023年5月18日 8時54分

armadillo起動時にLEDの有無を自動判別することは可能でしょうか?
可能でありましたらその方法を教示いただきたく存じます。

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

コメント

at_koseki

2023年5月18日 10時11分

古関です。

> armadillo起動時にLEDの有無を自動判別することは可能でしょうか?
「LEDの有無を自動判別」とは、本来あるはずのLEDが正しく実装されているか、不良などで外れているかを
Armadillo上で動いているソフトウェアからセルフテストで判別したいという意味でしょうか?
もし、そういう意図であればソフトウェアのみからの判別は難しいです。

Armadillo側が点灯させたつもりになるだけで、
目視やカメラ等から点灯しているかの画像解析といった方法を取らないと
難しいと考えています。

Armadillo-IoT G3LのユーザーLEDは3つあり、
LinuxのLEDクラスディレクトリ内のファイルから制御が可能です。

仕様は以下をご確認ください。
https://manual.atmark-techno.com/armadillo-iot-g3l/armadillo-iotg-g3l_p…

Armadillo-IoT G3Lを使っている限りは、LEDクラスディレクトリのパスは変わりません。
別製品を使った場合は別のパスになりますが、製品ごとに仕様は固定です。

求めている回答とズレていたらご指摘ください。

manamana

2023年5月18日 10時22分

> 古関です。
>
> > armadillo起動時にLEDの有無を自動判別することは可能でしょうか?
> 「LEDの有無を自動判別」とは、本来あるはずのLEDが正しく実装されているか、不良などで外れているかを
> Armadillo上で動いているソフトウェアからセルフテストで判別したいという意味でしょうか?
> もし、そういう意図であればソフトウェアのみからの判別は難しいです。
>
> Armadillo側が点灯させたつもりになるだけで、
> 目視やカメラ等から点灯しているかの画像解析といった方法を取らないと
> 難しいと考えています。
>
>
> Armadillo-IoT G3LのユーザーLEDは3つあり、
> LinuxのLEDクラスディレクトリ内のファイルから制御が可能です。
>
> 仕様は以下をご確認ください。
> https://manual.atmark-techno.com/armadillo-iot-g3l/armadillo-iotg-g3l_p…
>
> Armadillo-IoT G3Lを使っている限りは、LEDクラスディレクトリのパスは変わりません。
> 別製品を使った場合は別のパスになりますが、製品ごとに仕様は固定です。
>
> 求めている回答とズレていたらご指摘ください。

manamana

2023年5月18日 10時24分

> 古関です。
>
> > armadillo起動時にLEDの有無を自動判別することは可能でしょうか?
> 「LEDの有無を自動判別」とは、本来あるはずのLEDが正しく実装されているか、不良などで外れているかを
> Armadillo上で動いているソフトウェアからセルフテストで判別したいという意味でしょうか?
> もし、そういう意図であればソフトウェアのみからの判別は難しいです。
>
> Armadillo側が点灯させたつもりになるだけで、
> 目視やカメラ等から点灯しているかの画像解析といった方法を取らないと
> 難しいと考えています。
>
>
> Armadillo-IoT G3LのユーザーLEDは3つあり、
> LinuxのLEDクラスディレクトリ内のファイルから制御が可能です。
>
> 仕様は以下をご確認ください。
> https://manual.atmark-techno.com/armadillo-iot-g3l/armadillo-iotg-g3l_p…
>
> Armadillo-IoT G3Lを使っている限りは、LEDクラスディレクトリのパスは変わりません。
> 別製品を使った場合は別のパスになりますが、製品ごとに仕様は固定です。
>
> 求めている回答とズレていたらご指摘ください。

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

質問の意図がわかりにくく申し訳ございません

お聞きしたいのは
armadilloの基盤上にLEDが実装されているか否かをソフトウェアで判別可能であるかです。

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

at_koseki

2023年5月18日 10時40分

古関です。

> armadilloの基盤上にLEDが実装されているか否かをソフトウェアで判別可能であるかです。

どのような目的で判断したいでしょうか?
LEDの不良検出のためにキッティング時などの検査をすることが目的でしょうか。

それとも、例えばArmadillo-IoT G3LとArmadilloの別製品が
共通のソフトウェアになっていて、
処理を分岐して制御するLEDクラスディレクトリを切り替えたりすることが目的でしょうか。

manamana

2023年5月18日 10時49分

> 古関です。
>
> > armadilloの基盤上にLEDが実装されているか否かをソフトウェアで判別可能であるかです。
>
> どのような目的で判断したいでしょうか?
> LEDの不良検出のためにキッティング時などの検査をすることが目的でしょうか。
>
> それとも、例えばArmadillo-IoT G3LとArmadilloの別製品が
> 共通のソフトウェアになっていて、
> 処理を分岐して制御するLEDクラスディレクトリを切り替えたりすることが目的でしょうか。
>

目的としましては、
現在ソフトウェアでLEDの点灯処理を制御していますが、
基盤上にLEDが存在しなければ不要な処理ですので、ソフトウェア上で該当する箇所をマスクしたく考えています。

at_koseki

2023年5月18日 11時16分

古関です。

> 目的としましては、
> 現在ソフトウェアでLEDの点灯処理を制御していますが、
> 基盤上にLEDが存在しなければ不要な処理ですので、ソフトウェア上で該当する箇所をマスクしたく考えています。

ありがとうございます。理解できました。

Armadillo-IoT G3Lを使っている限りは
改造しなければLEDは3つまま仕様が変わることはありません。

ですので、例えば、製品種別を判定してG3Lでなければ該当のLEDの制御をしない
といった分岐をするのはどうでしょうか。

「/proc/device-tree/model」を確認し、
「Atmark-Techno Armadillo-X1L Board」という文字列がヒットすればG3Lと判別可能です。

shellの例です。

#!/bin/sh
 
strings /proc/device-tree/model | grep -q "Atmark-Techno Armadillo-X1L Board"
if [ $? -eq 0 ]; then
        echo "G3L"
else
        echo "not G3L"
fi

manamana

2023年5月18日 13時44分

> 古関です。
>
> > 目的としましては、
> > 現在ソフトウェアでLEDの点灯処理を制御していますが、
> > 基盤上にLEDが存在しなければ不要な処理ですので、ソフトウェア上で該当する箇所をマスクしたく考えています。
>
> ありがとうございます。理解できました。
>
> Armadillo-IoT G3Lを使っている限りは
> 改造しなければLEDは3つまま仕様が変わることはありません。
>
> ですので、例えば、製品種別を判定してG3Lでなければ該当のLEDの制御をしない
> といった分岐をするのはどうでしょうか。
>
> 「/proc/device-tree/model」を確認し、
> 「Atmark-Techno Armadillo-X1L Board」という文字列がヒットすればG3Lと判別可能です。
>
> shellの例です。
>
>

> #!/bin/sh
> 
> strings /proc/device-tree/model | grep -q "Atmark-Techno Armadillo-X1L Board"
> if [ $? -eq 0 ]; then
>         echo "G3L"
> else
>         echo "not G3L"
> fi
> 

何度も申し訳ございません。
実際にarmadilloを改造します。

LEDが取り付けられたサブ基盤を取り外した状態での運用になります。
この場合でもソフトウェアでの状態確認は難しいでしょうか

at_koseki

2023年5月18日 14時59分

古関です。

サブ基板を接続しなかった場合
以下のLEDクラスディレクトリは生成されません。

/sys/class/leds/led3/
/sys/class/leds/led4/
/sys/class/leds/led5/

ディレクトリの有無で判定するのはいかがでしょうか。

なお、サブ基板を外した場合、
Armadillo-IoT G3Lとしての動作は保証できかねますので、
自己責任で対応お願いいたします。

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

manamana

2023年5月22日 11時19分

> 古関です。
>
> サブ基板を接続しなかった場合
> 以下のLEDクラスディレクトリは生成されません。
>
> /sys/class/leds/led3/
> /sys/class/leds/led4/
> /sys/class/leds/led5/
>
> ディレクトリの有無で判定するのはいかがでしょうか。
>
> なお、サブ基板を外した場合、
> Armadillo-IoT G3Lとしての動作は保証できかねますので、
> 自己責任で対応お願いいたします。
>
> よろしくお願いいたします。

回答ありがとうございます。
サブ基盤を外したArmadilloが入手できましたら確認する予定です。