Armadillo-640:製品アップデート/ソフトバージョン相関早見表(Linux-4.14/Stretch版)
(2022年6月時点)
個人別ブログ
at_kazutaka.bito さんのブログ
-
at_kazutaka.bito
-
at_kazutaka.bito
Armadillo-X1:製品アップデート/ソフトバージョン相関早見表(Linux-4.9/Stretch版)
(2022年6月時点) -
at_kazutaka.bito
Armadillo-X1:製品アップデート/ソフトバージョン相関早見表(Linux-3.14版)
(2021年1月時点) -
at_kazutaka.bito
Armadillo-IoT(G3L):製品アップデート/ソフトバージョン相関早見表(Linux-3.14版)
(2020年12月時点) -
at_kazutaka.bito
Armadillo-IoT(G3):製品アップデート/ソフトバージョン相関早見表(Linux-3.14版)
(2020年11月時点) -
at_kazutaka.bito
Armadillo-IoT(G3)と組み合わせて利用可能な RS232Cアドオン(OP-AGA-RS00-00) の
CON3/CON4(テストインタフェース)のスルーホールで、
Armadillo-IoTゲートウェイ G3 マルチプレクス表のUART、I2C、GPIO等の機能(※)が使用できます。
※)同表の「RS232C RS00」列で使用されている端子以外で使用可能な機能。
ここでは、Armadillo-IoT(G3)のアドオンインタフェース(CON2)に接続した場合に、
RS232CアドオンのテストインタフェースでUART3を使用可能にします。 -
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1/640で、USB-HDMI変換アダプタ(GX-HDMI/U2)を使って
HDMIモニタに表示する方法(※)です。
※)この製品はDisplayLinkに対応しているため、下記方法で動作しました。
DisplayLinkに対応していない製品では本方法では動作しません。
DisplayLinkに対応している製品でもデバイスによっては、本方法で動作しない可能性があります。 -
at_kazutaka.bito
Armadillo-X1のWLANコンボ搭載モデルは無線LANモジュールが搭載されています。
ここでは、USBドングルの無線LAN(WI-U2-433DHP/WI-U2-433DMS)を追加して、2系統にしてみました。 -
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1のルートファイルシステムは、eMMC上に配置されています。
そのため、下記(※1)の保護機能を無効にしている場合、haltなどの終了処理を行わずに電源断をすると、
eMMC上のルートファイルシステムが壊れ、電源を投入しても起動しなくなる可能性(※2)があります。
この場合は、下記(※3)ようにインストールディスクイメージを使って、 正常なルートファイルシステムでeMMCを書き換えることで起動できることが見込まれます -
at_kazutaka.bito
Armadillo-X1で、CON8(拡張インタフェース)のUSB(USB_OTG2)で
USBガジェット(シリアル通信/マスストレージ)を使う方法です -
at_kazutaka.bito
Armadillo-IoT(G3)/X1で、無線LANをアドホックモードで動かします。
ここでは、iwコマンドで設定します。 -
at_kazutaka.bito
コンソールのログを残す方法です。
ここでは、下記の2つの方法を紹介します。
A. PCのシリアル通信ソフト(TeraTerm)で残す方法
B. Armadillo上で残す方法 -
at_kazutaka.bito
Armadillo-640で、USBドングルの5GHz対応無線LAN(WI-U2-433DHP、WI-U2-433DMS)を使う方法です。
-
at_kazutaka.bito
Armadillo-IoT(G3L)を無線LANルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
ネットワーク端末--(無線LAN)--Armadillo-IoT(G3L)--(LTE)--インターネット
-
at_kazutaka.bito
Armadillo-IoT(G3L)をルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
-
at_kazutaka.bito
Armadillo-IoT(G3)を無線LANルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
補足)
Armadillo-IoT(G3)は、複数のディストリビューションにに対応しています。
本ブログでは、Debian GNU/Linux 9 (stretch) の方法になります。
Debian GNU/Linux 10 (buster)の方法については、下記を参考ください。
Armadillo-IoT(G3):無線LANルーターのように動かす(dnsmasqで実現:buster版)
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
ネットワーク端末--(無線LAN)--Armadillo-IoT(G3)--(3G/LTE)--インターネット
-
at_kazutaka.bito
Armadillo-IoT(G3)をルーターのように動かす方法です。
ここでは、isc-dhcp-server(DHCPサーバー)とdnsmasq(DNSキャッシュ)の組み合わせて実現します。
参考)dnsmasqのみでもDHCPサーバーとDNSキャッシュは実現できます。
Armadillo-IoT(G3):ルーターのように動かす(dnsmasqで実現)
ネットワーク構成
本手順は、下記構成でネットワーク端末からインターネットにアクセスすることを想定した例です。
ネットワーク端末--(有線LAN)--Armadillo-IoT(G3)--(3G/LTE)--インターネット
-
at_kazutaka.bito
Armadillo-IoT(G3)をルーターのように動かす方法です。
ここでは、dnsmasqのDHCPサーバーとDNSキャッシュの機能を使って実現します。
参考)isc-dhcp-server(DHCPサーバー)とdnsmasq(DNSキャッシュの機能のみ使用)の組み合わせて実現する方法もあります。
Armadillo-IoT(G3):ルーターのように動かす(isc-dhcp-server+dnsmasqで実現)
-
at_kazutaka.bito
Armadillo-610/640/X1/IoT(G3/G3L)で、ソフトバージョンを確認する方法です。
ここでは、製品アップデートで主に対象となるソフトのバージョン確認方法を紹介します。 -
at_kazutaka.bito
Armadillo-640/610で、eMMCのパーティションを切りなおす方法です。
-
at_kazutaka.bito
Armadillo-640で、pythonでGPIO制御する例です。
-
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1/640で、無線LANの受信感度の確認する方法です。
-
at_kazutaka.bito
Armadillo-X1の拡張I/F(CON8)にはCPUのSPIが3系統ありますが、他の機能で使ったりなどで、
SPIが不足した場合に、GPIOをSPI化して代替することが可能です。
ここでは、spi-gpioで下記表のようにCON8のGPIOをSPI化します。 -
at_kazutaka.bito
Armadillo実践開発ガイド 第3部(linux-3.14-at対応)
2.3. SPI接続A/Dコンバーター
に紹介されているspidevでSPIデバイス(MCP3204)を制御するサンプルプログラムを
カーネル(Linux-4.9)で動作するように変更しました。 -
at_kazutaka.bito
Linuxでは、認識したUSBデバイスに応じて、自動的にデバイスファイル名が付きます。
udevを使うと、USBデバイス(※1)を認識した際にデバイスファイルに別名を付けることができます。
ここでは、例として、USBシリアルを認識した際に、独自のデバイスファイル名を付ける(※2)ようにします。
※1)VenderID、ProductIDは予め確認しておく必要があります。
※2)自動的についたデバイスファイルに対して、シンボリックリンクを貼る方法になります。
-
at_kazutaka.bito
WLAN+BT搭載のArmadillo-X1で、Bluetooth対応機器とシリアル通信を確認しました。
ここでは、Bluetooth対応機器としてPCを使用しました。 -
at_kazutaka.bito
カスタマイズしたデバイスツリーをArmadillo上で簡易的に見分けられるようにする方法です。
例えば、デバイスツリーに応じて、アプリケーションの設定などを選択するような用途に使用できます。 -
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1/640で、USBメモリ認識時に自動マウントする方法です。
udevルールを定義することで自動マウントできます。 -
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1/640:Armadillo上でデバイスツリーの対象製品名を見分ける方法です。
-
at_kazutaka.bito
Armadillo-IoT(G3/G3L)で、閉域網の3G/LTE再接続サービス(connection-recover)の設定の注意点です。
-
at_kazutaka.bito
Armadillo-640で、PWM出力を使ってみました。
ここでは、下記の2つの端子をPWM出力にする例で説明します。
CON9の13:PWM5
CON9の14:PWM6 -
at_kazutaka.bito
Armadillo-X1、Armadillo-IoT(G3/G3L)、Armadillo-640と作業用PCとシリアル経由でファイルの送受信を行う方法です。
通信速度が遅いので、大きなサイズのファイルの転送には向いてませんが、簡単なスクリプトや、 小さいサイズのログファイルの転送などには便利です。 -
at_kazutaka.bito
Armadillo-640で、音声ファイル(mp3)を再生する方法です。
-
at_kazutaka.bito
Armadillo-640で、USBオーディオで録音、再生を試してみました。
-
at_kazutaka.bito
Armadillo-640で、デバイスツリーで、GPIOのデフォルトを出力に設定する方法です。
備考)
Armadillo-640:デバイスツリーで、GPIOのデフォルトを出力に設定する(その1)
の方法では、ユーザー領域からは、Low/High出力を切り替えることができません。
ここでは、簡易的にGPIO 接続用LED ドライバ (leds-gpio)を活用して、
ユーザー領域からLow/High出力を切り替えれるようにします。 -
at_kazutaka.bito
Armadillo-640で、デバイスツリーで、GPIOのデフォルトを出力に設定する方法です。
備考)
この方法の場合、ユーザー領域で、GPIO出力のLow/Highの切り替えができません。
ユーザー領域からGPIO出力のLow/Highの切り替えを行う場合は、
Armadillo-640:デバイスツリーで、GPIOのデフォルトを出力に設定する(その2)
を参照ください。 -
at_kazutaka.bito
Armadillo-640で、OpenCVを使った画像処理を試してみました。
-
at_kazutaka.bito
Armadillo-640:OpenCVを使ってみる
では、画像処理結果をbmpファイルに出力していましたが、
ここでは、Armadillo-640で、OpenCVの画像処理結果をネットワーク経由で確認できるようにしてみます。 -
at_kazutaka.bito
Armadillo-640:USBカメラの画像をmjpg-streamerを使って、ネットワーク経由でPCのWebブラウザで見る方法は、
USBカメラから、画像をYUV入力してMJPEGにエンコードしているため、CPUの負荷が高くなっています。
ここでは、MJPEG出力可能なUSBカメラから、画像をMJPEG入力する方法を確認してみました。 -
at_kazutaka.bito
Armadillo-640 製品マニュアル
SDブートの活用
の手順では、
14.4. SDブートの実行
のとおり、最初の起動時にU-bootの環境変数をコンソールから設定する必要があります。
ここでは、SDブート起動用の環境変数設定済みのU-bootを作成します。
ここでの手順で作成したU-bootを、SDカードのブートディスクのU-bootにすることで、
最初の起動時にU-bootの環境変数をコンソールから設定する必要がなくなります。 -
at_kazutaka.bito
Armadillo-800シリーズで、NORに書き込み済みのイメージがオリジナルのイメージと同じかどうか確認する方法です。
-
at_kazutaka.bito
Armadillo-IoT(G3)で、USB(CON7)の電源(CON7_USB_VBUS)をGPIOで制御する方法です。
-
at_kazutaka.bito
historyコマンドの表記に日時を付ける方法です。
デバッグ時に/var/log/syslogなどのログと、コンソールから実行したコマンドとの相関をとる際に便利です。
-
at_kazutaka.bito
Armadillo-400シリーズで、NORに書き込み済みのイメージがオリジナルのイメージと同じかどうか確認する方法です。
-
at_kazutaka.bito
-
at_kazutaka.bito
Armadillo 製品アップデートのお知らせ (2019年1月/Armadillo-640対象) で、追加されたat-dtwebを使って、
Device Treeをカスタマイズしてみます。
ここでは、I2CとUART(コンソール用)の設定を行ってみます。
I2C2
CON9の4ピン:SDA
CON9の6ピン:SCL
UART1
CON9の3ピン:RXD
CON9の5ピン:TXD
-
at_kazutaka.bito
Armadillo-640で、I2C通信の熱電対温度センサ(MCP9600)からデータ取得を取得してみました。
ここでは、MCP9600熱電対温度センサモジュールを使用しました。
プログラムは、pythonで作成しています。 -
at_kazutaka.bito
Armadillo-X1/IoT(G3/G3L)に接続したUSBカメラの画像を無線LAN経由で見る方法です。
-
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1やATDE7などの、Debian「stretch」上でext4にフォーマットにした記録メディアが、
Armadillo-400/800シリーズでマウントできない場合の回避策です。 -
at_kazutaka.bito
Armadillo-IoT(G3/G3L)/X1のBT機能を使って、
ラトックシステム株式会社のBluetooth RS-232C 変換アダプターREX-BT60
とシリアル通信してみました。