ブログ

Armadillo-IoT G4:MIPIカメラを使用する(KBCR-S08MMの場合)

at_takuma.fukuda
2022年5月23日 13時02分

Armadillo-IoT G4にシキノハイテック社製MIPI出力カメラモジュール KBCR-S08MMを接続して使用するための手順をご紹介します。

動画

準備

設定ファイルを書き換えて、フラットケーブルを接続するだけで使用可能となります。

DTS overlayの編集

CON10にMIPIカメラを接続する際、それぞれのカメラのピンアサインに合わせて、 CON10のピンアサインを変更する必要があります。
Device Treeをカスタマイズすることでピンアサインを変更できます。
KBCR-S08MMの場合は、プリセットされている「armadillo_iotg_g4-con10-ox01f10.dtbo」をDTS overlayで読み込むことで対応出来ます。
以下のように/boot/overlays.txtを書き換えて保存し再起動すると、CON10のピンアサインがKBCR-S08MMに対応した状態で起動します。

[armadillo ~]# vi /boot/overlays.txt
fdt_overlays=armadillo_iotg_g4-con10-ox01f10.dtbo
 
[armadillo ~]# persist_file -vp /boot/overlays.txt

フラットケーブルの接続

Armadillo-IoT G4のCON10にKBCR-S08MMのフラットケーブルを接続します。
この時、必ずArmadillo-IoT G4の電源アダプタは取り外しておいてください。
フラットケーブルを接続する際、Armadillo-IoT G4のCON10のピン1~15とKBCR-S08MMのピン15~ピン1が接続されるようにしてください。

動作確認

実際にカメラから画像を取得し、画面に表示させてみます。
Armadillo-IoT G4の製品マニュアルを参考にGStreamer の v4l2src エレメントを使って、カメラから入力された画像を画面に表示させます。
実施の前提事項は以下の通りです。構成などが異な鵜場合はデバイス名などを適宜変更してください。

  • USBカメラなどのKBCR-S08MM以外のカメラデバイスは接続していない
  • KBCR-S08MMは/dev/video2および/dev/video3として認識されている
  • HDMIでディスプレイに接続している

コンテナ作成イメージ取得

以下を参考に、当社から配布しているDebianのコンテナイメージを使用してコンテナ構築の準備を行います。
9.1.3. アットマークテクノが提供するイメージを使う

ファイルダウンロード
[armadillo ~]# wget https://armadillo.atmark-techno.com/files/downloads/armadillo-
iot-g4/container/at-debian-image-v1.0.5.tar
ファイル読み込み
[armadillo ~]# podman load -i at-debian-image-v1.0.5.tar

コンテナ作成・起動

以下を参考に、コンテナを作成します。
9.3.2. GStreamer 実行用コンテナを作成する

[armadillo ~]# podman run -it --name=gst-example \
--env=XDG_RUNTIME_DIR=/tmp \
--volume=/sys:/sys \
--volume=/dev:/dev \
--volume=/run/udev:/run/udev \
--volume=/opt/firmware:/opt/firmware \
--privileged \
localhost/at-debian-image:latest /bin/bash

パッケージインストール

GStreamer等のパッケージをインストールしておきます。

GStreamerインストール
[container /]# apt install gstreamer1.0-imx libgstreamer-imx gstreamer1.0-plugins-bad \
libgstreamer-plugins-bad1.0-0 gstreamer1.0-plugins-base libgstreamer-plugins-base1.0-0 \
gstreamer1.0-plugins-good libgstreamer1.0-0 gstreamer1.0-tools gstreamer1.0-imx-tools
v4l-utilsインストール
[container /]# apt-get install  v4l-utils

カメラ情報の確認

v4l2-ctlを使用して接続されているカメラデバイスの情報を確認します。

カメラデバイス一覧表示
[container /]# v4l2-ctl --list-device
/dev/video2の詳細確認 画面サイズなどが確認出来ます。
[container /]# v4l2-ctl -d /dev/video2 --list-formats-ext

画像表示

カメラから入力された画像をHDMIで接続したディスプレイに表示します。

デスクトップ環境の起動
[container /]# weston --tty=1 &
GStreamer実行
[container /]# gst-launch-1.0 v4l2src device=/dev/video2 \
! video/x-raw,width=1344,height=1020,framerate=30/1 \
! waylandsink window-width=1344 window-height=1020