Armadillo-640で、ブートローダーでGPIOを設定する方法です。
個人別ブログ
at_kazutaka.bito さんのブログ
-
at_kazutaka.bito
-
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1を無線LANアクセスポイントのように使う方法です。
ここでは、dnsmasq+hostapdを使います。 -
at_kazutaka.bito
Armadillo Base OSでnanoエディタを使う方法です。
-
at_kazutaka.bito
Armadilloでネットワーク通信のパケットを確認する方法です。
ここでは、Debianで動作するArmadilloでtsharkを使用します。 -
at_kazutaka.bito
Armadillo-640でLANインタフェースを追加する方法として、USB-LAN変換アダプタ(LAN-TXU2C)を使ってみました
-
at_kazutaka.bito
Armadillo-IoT A6で、SORACOM Napterを使用してリモートアクセス(TLS接続)する方法です。
ここでは、SORACOM Users 「IoT デバイスにTLS接続する」 の方法で確認します。 -
at_kazutaka.bito
Armadillo-IoT A6で、SORACOM Napterを使用してリモートアクセス(SSH接続)する方法です。
ここでは、SORACOM Users 「IoT デバイスにSSH接続する」 の方法で確認します。 -
at_kazutaka.bito
無線LANの電波強度を確認する方法です。
ここでは、wavemonを使用します。 -
at_kazutaka.bito
UDP通信できているか簡易的に確認する方法です。
ディストリビューションがDebianのArmadilloを対象としています。
ここでは、通信の対向側にはATDEを使用します。 -
at_kazutaka.bito
Armadillo-IoT(G3L)をSDブートさせるためのブートディスクを作成する方法です。
各製品マニュアルには、PC上で動作する開発環境(ATDE)を使って作成する方法が記載されていますが、
ここでは、Armadillo-IoT(G3L)上で作成します。 -
at_kazutaka.bito
Armadillo-IoT(A6)で、ソフトバージョンを確認する方法です。
ここでは、製品アップデートで主に対象となるソフトのバージョン確認方法を紹介します。 -
at_kazutaka.bito
Debian busterで動作するArmadillo(X1、IoT(G3)、640等)で、pythonスクリプトを実行ファイル化する方法です。
-
at_kazutaka.bito
Armadillo-640 製品マニュアル「7.3.13. パワーマネジメント」、 Armadillo-610 製品マニュアル「7.3.15. パワーマネジメント」 には、パワーマネジメント状態からの起床要因の一つに、UART1を有効化する方法を示しています。
この起床要因には、UART1以外のUARTも使用できます。 -
at_kazutaka.bito
Armadillo-IoT(A6)の開発/メンテナンス等に使用するデフォルトのコンソールは、RS232Cインタフェースに設定されています。
ここでは、コンソールを拡張インタフェースのUARTに変更する方法を説明します。
活用例)
RS232Cインタフェースをコンソールではなく、他機器とのシリアル通信にしたい場合
→コンソールを拡張インタフェースのUARTに変更し、RS232Cインタフェースを他機器とのシリアル通信専用にする
-
at_kazutaka.bito
Armadillo-640/IoT(A6)をネットワーク経由で、Webブラウザの画面から制御する方法です。
ここでは、lighttpd+php-cgiを使用します。
例として、WebブラウザからArmadillo-640/IoT(A6)の赤/緑LEDを制御します。 -
at_kazutaka.bito
Armadillo-X1:製品アップデート/ソフトバージョン相関早見表(Linux-4.9/Buster版)
(2022年6月時点) -
at_kazutaka.bito
Armadillo-640/610:製品アップデート/ソフトバージョン相関早見表(Linux-4.14/Buster版)
(2022年6月時点) -
at_kazutaka.bito
Armadillo-IoT(G3):製品アップデート/ソフトバージョン相関早見表(Linux-4.9/Buster版)
(2022年6月時点) -
at_kazutaka.bito
SDブートを活用して、eMMC内のルートファイルシステムの一部を書き換える方法です。
活用例)
eMMC内のソフトが意図した動作をせず、起動途中で止まる、ログインできないなど操作不能の状態に陥った場合
→SDブートで起動して、eMMC内の問題となるソフトを停止、削除、正常なソフトに書き換える。 -
at_kazutaka.bito
Armadillo-IoT(G3):製品アップデート/ソフトバージョン相関早見表(Linux-4.9/Stretch版)
(2022年6月時点) -
at_kazutaka.bito
Armadillo-IoT(G4):製品アップデート/ソフトバージョン相関早見表
(2022年5月時点) -
at_kazutaka.bito
Armadillo-IoT(G3L):製品アップデート/ソフトバージョン相関早見表(Linux-4.9/Buster版)
(2022年4月時点) -
at_kazutaka.bito
Armadillo-IoT(G3L):製品アップデート/ソフトバージョン相関早見表(Linux-4.9/Stretch版)
(2022年4月時点) -
at_kazutaka.bito
開発中など、何らかの理由でSWUイメージ作成環境が変わってしまった場合(※)、
SWUイメージの鍵とArmadillo-IoT(G4)上の鍵と整合がとれず、以降のアップデートができなくなります。
※)基本的には、ソフトウェアアップデートの管理の点からSWUイメージ作成環境は変えないような運用が望ましい。
ここでは、SWUイメージ作成環境が変わってしまった場合に、Armadillo-IoT(G4)上の鍵を
新しいSWUイメージ作成環境の鍵にインストールし直す方法を説明します。 -
at_kazutaka.bito
購入製品登録ための正規認証ファイルの取得には、Armadillo-X1/IoT(G3/G3L)上でget-board-infoを実行しますが、
Linuxディストリビューションによって、手順に若干の違いがあります。
正規認証ファイルの取得(get-board-info)が失敗する場合は、下記のようにLinuxディストリビューションを確認の上、
get-board-infoを実行ください。 -
at_kazutaka.bito
シリアル通信で制御コードを含むデータの送信/受信する簡易的な方法です。
ここでは、pyserialを使用します。 -
at_kazutaka.bito
コマンドのみで、シリアル通信で制御コードを含むデータを送信する方法です。
-
at_kazutaka.bito
シリアルポートを持つ2つのデバイス間(※)のシリアル通信をArmadillo-640経由でブリッジする方法です。
ここでは、socatを使います。 -
at_kazutaka.bito
Armadillo-640で、RS232C-パラレルI/O変換器(CNV-I/O TB)を使う方法です。
-
at_kazutaka.bito
apt-get updateでエラーになる場合の対策方法の一つです。
-
at_kazutaka.bito
Armadillo-X1/IoT(G3/G3L)/640/610は、インストールディスクイメージを書き込んだ
SDカードを使ってインストールすることができます。
各製品マニュアルには、Armadilloの開発環境(ATDE)を使ったインストール手順を記載してますが、
ここでは、ATDEを使わずに標準のインストールディスクイメージでインストールする手順を説明します。 -
at_kazutaka.bito
ATDE9の画面がロックされるまでの時間(デフォルトだと5分)を変更する方法です。
-
at_kazutaka.bito
VMwareで、ATDE9(ゲストOS)とWindows(ホストOS)のファイルを共有する方法です。
-
at_kazutaka.bito
Armadillo-640+無線LANオプション(OP-A600-AWLMOD-00)で、無線LANをアドホックモードで動かします。
Armadillo-640
OP-A600-AWLMOD-00 -
at_kazutaka.bito
Armadillo-440:無線LANオプション(OP-A400-AWLMOD-10)で、無線LANをアドホックモードで動かします。
Armadillo-440
OP-A400-AWLMOD-10 -
at_kazutaka.bito
Armadillo-X1/IoT(G3/G3L)のeMMCのパーティションを5つ以上に切りなおす方法です。
参考)eMMCのパーティションを4つに切りなおす方法は下記になります。ここでは、インストールディスクイメージを使ったインストール(※1)の際にパーティションを切りなおす方法をとります。
Armadillo-X1/IoT(G3/G3L):eMMCのパーティションを切りなおす方法(インストールディスクイメージ作成ツールを活用)
(以下、主にArmadillo-IoT(G3)の場合で説明しますが、Armadillo-X1/IoT(G3/G3L)は同じ手順になります。)
※1)
Armadillo-IoT ゲートウェイ G3製品マニュアル
11.1. インストールディスクを使用する
-
at_kazutaka.bito
Armadillo-X1/IoT(G3/G3L)のeMMCのパーティションを切りなおす方法です。
ここでは、インストールディスクイメージを使ったインストール(※1)の際にパーティションを切りなおす方法をとります。
(以下、主にArmadillo-IoT(G3)の場合で説明しますが、Armadillo-X1/IoT(G3/G3L)は同じ手順になります。)
※1)
Armadillo-IoT ゲートウェイ G3製品マニュアル
11.1. インストールディスクを使用する -
at_kazutaka.bito
Armadillo-X1の拡張I/F(CON7/CON8)で、GPIOクラスディレクトリ(/sys/class/gpio/)に見えていないGPIOを
export(注)する際の「GPIO番号」の計算方法です。
注)
ドライバで使用中の端子については、GPIOクラスディレクトリにexportできません。 -
at_kazutaka.bito
Armadillo-IoT(G3L)を無線LANルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
補足)
Armadillo-IoT(G3)は、複数のディストリビューションに対応しています。
本ブログでは、Debian GNU/Linux 10 (buster) の方法になります。
Debian GNU/Linux 9 (stretch)の方法については、下記を参考ください。
Armadillo-IoT(G3L):無線LANルーターのように動かす(dnsmasqで実現)
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
ネットワーク端末--(無線LAN)--Armadillo-IoT(G3L)--(LTE)--インターネット
-
at_kazutaka.bito
Armadillo-IoT(G3)をルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
補足)
Armadillo-IoT(G3)は、複数のディストリビューションに対応しています。
本ブログでは、Debian GNU/Linux 10 (buster) の方法になります。
Debian GNU/Linux 9 (stretch)の方法については、下記を参考ください。
Armadillo-IoT(G3):ルーターのように動かす(dnsmasqで実現)
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
ネットワーク端末--(有線LAN)--Armadillo-IoT(G3)--(3G/LTE)--インターネット
-
at_kazutaka.bito
Armadillo-IoT(G3L)をルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
補足)
Armadillo-IoT(G3L)は、複数のディストリビューションに対応しています。
本ブログでは、Debian GNU/Linux 10 (buster) の方法になります。
Debian GNU/Linux 9 (stretch)の方法については、下記を参考ください。
Armadillo-IoT(G3L):ルーターのように動かす(dnsmasqで実現)
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
ネットワーク端末--(有線LAN)--Armadillo-IoT(G3L)--(LTE)--インターネット
-
at_kazutaka.bito
Armadillo-610:製品アップデート/ソフトバージョン相関早見表(Linux-4.14/Stretch版)
(2022年6月時点) -
at_kazutaka.bito
Armadillo-IoT(A6):製品アップデート/ソフトバージョン相関早見表(Linux-4.14/Buster版)
(2021年7月時点) -
at_kazutaka.bito
Armadillo-IoT(G3)を無線LANルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
補足)
Armadillo-IoT(G3)は、複数のディストリビューションに対応しています。
本ブログでは、Debian GNU/Linux 10 (buster) の方法になります。
Debian GNU/Linux 9 (stretch)の方法については、下記を参考ください。
Armadillo-IoT(G3):無線LANルーターのように動かす(dnsmasqで実現)
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
ネットワーク端末--(無線LAN)--Armadillo-IoT(G3)--(3G/LTE)--インターネット
-
at_kazutaka.bito
Armadillo-X1/IoT(G3/G3L)では、突然の電源断などによるeMMC上のソフトウェアの破壊を防ぐ方法として、
overlayfsを使ったルートファイルシステムの保護機能(※)が使用できます。
※)
Armadillo-IoT ゲートウェイ G3製品マニュアル
22.2. ルートファイルシステムへの書き込みと電源断からの保護機能
ただし、overlayfsを有効にした状態では、ファイルはRAM上に生成されるため、
rebootなどにより再起動すると、再起動前のログやデータは残りません。
ここでは、overlayfs有効時に、再起動前のログやデータをeMMC上に残す方法として、
ルートファイルシステムとは別の領域(パーティション3(※注意事項※))にファイルを保存します。
※注意事項※
eMMCのパーティション3は、node-eye使用時のリカバリーイメージ用の領域(※)です。
よって、本ブログの方法は、node-eye使用時は使用できません。
※)
Armadillo-IoT ゲートウェイ G3製品マニュアル
表3.10 eMMC メモリマップ (型番: AGX314* の場合)
-
at_kazutaka.bito
Armadillo-X1/IoT(G3/G3L)のeMMCの予約領域(パーティション3)のファイルシステムは、標準ではFAT32になっています。
この領域を他のファイルシステムに変更する方法です。
ここでは、インストールディスクイメージを使ったインストールの際にext4に設定する方法をとります。
-
at_kazutaka.bito
Armadillo-640でUSBカメラの画像を保存します。
ここでは、UVC対応のUSBカメラから、MJPEG形式の画像を入力し、mkvファイルに保存します。 -
at_kazutaka.bito
ATDE8の画面がロックされるまでの時間(デフォルトだと5分)を変更する方法です。
-
at_kazutaka.bito
Armadillo-IoT(A6)で、USBカメラの画像をmjpg-streamerを使って、ネットワーク経由でPCのWebブラウザで見る方法です。
本手順は、下記のようなネットワーク構成の場合の方法になります。
USBカメラ--(USB)--Armadillo-IoT(A6)--(LAN)--PC
-
at_kazutaka.bito
Armadillo-IoT(G3/G3L)では、3G/LTE再接続サービス(connection-recover)がデフォルトで動作します。
3G/LTE再接続サービス(connection-recover)は、microSIMが接続されており、
NetworkManagerの有効な3G/LTEのコネクション設定がされているとき、
120秒に一度、コネクションの状態を監視します。
デフォルトでは、ping 8.8.8.8が失敗した場合、/var/log/syslogにログが出力されます。
ここでは、ping 8.8.8.8が成功した場合も、/var/log/syslogにログを出力するようにします。