BETA

Ultra96V2環境構築メモ

投稿日:2019-12-28
最終更新:2019-12-30

Ultra96V2ボードを買ったので、備忘録です。

使い方がアレなのでいろいとと偏った情報かもしれませんが。
後から思い出して書いているものや、調べるだけで試していないものもあります。
随時更新中です。

ボードの情報

まずは回路図とか、BSPとか、ドキュメントとかゲット。

@ikwzm 氏の Debianイメージ

イメージ本体

VirtualBoxとかでSDカードのパーティーション切るときは安定しない場合はUSBカードリーダーを2.0ポートにさすと無難な模様(遅いけど)。

パーティーションは先頭に4Mほど空領域を置くと、クラスタとFlashのブロックの境界がそろいパフォーマンスが出るはず(未確認)。
※ SD Association 公式の SDフォーマッタ使うと先頭に空きができるのでそこからResizeする方がいいかも。

UART (JTAGカードなど) もしくは、DisplayPort があれば、コンソール使えるようなので、後半の設定はUltra96上でやった方が楽かも。
私は DisplayPortは AMC-MDPHD を使っています。

JTAG用の修正

uEnv.txt に cpuidle.off=1 を追加

ユーザー作成

adduser でユーザーを作る

sudo権限もつけておく

gpasswd -a username sudo  

sudo するたびに「sudo: unable to resolve host」と出たので
https://qiita.com/ogomr/items/89e19829eb8cc08fcebb
にならって

sudo sh -c 'echo 127.0.1.1 $(hostname) >> /etc/hosts'  

Samba設定

rootで入って

pdbedit -a username  
nano /etc/samba/smb.conf  
systemctl restart smbd nmbd  

こんな感じだったと思う

ssh と X-Windowポート転送

TeraTermの「設定」->「SSHポート転送」で「リモートのXアプリケーションをXサーバーに表示する」をONにして、「設定」->「設定の保存」。TeraTerm再起動して、sshで接続。
Windows側にはXmingなどを入れておく。

sudo apt install -yV xauth  
sudo apt install -yV x11-apps  

nano /etc/ssh/sshd_config  
sudo service sshd restart  

sshd_config は X11Forwarding yes とすればよいはずだ。当初 xauth を入れ忘れていた。

xclock &  
xeyes &  

として動作確認。

(ちなみにforwardで着なかったときに直接接続したが、Windows側でXmingの X0.hosts に Ultra96 のIP を追加して、ファイアーウォール確認して(Xmingに検眼付けるか、6000番を開ける)DISPLAYを定義すればX自体は動く模様です。
TeraTermではなくコマンドラインのsshで -v つけて確認しましたが、「X11 forwarding requested but DISPLAY not set」としか出てくれず悩んで、クライアント側の DISPLAY 設定したらエラーが 「Remote: No xauth program; cannot forward X11」に変わってxauthがいないのに気づいた次第。
GUI使っているといろいろ見落としますね。)

fpgautil

Python設定

やりかけ

sudo pip3 install jupyter  
sudo pip3 install matplotlib  

OpenCV

ただし

-D WITH_EIGEN=OFF \  
-D WITH_IPP=OFF \  
-D WITH_OPENCL=OFF \  
-D WITH_OPENGL=OFF \  
-D WITH_TBB=OFF \  
-D WITH_V4L=ON \  

あたりを変更しました
WITH_V4L=ON
しないとUSBカメラが動きませんでした。他は余計なものまでOFFしているかもしれません。

sudo apt-get -yV install cmake libeigen3-dev  
sudo apt-get -yV install libgtk-3-dev qt5-default freeglut3-dev libvtk6-qt-dev  
sudo apt-get -yV install libtbb-dev  
sudo apt-get -yV install libjpeg-dev libpng++-dev libtiff-dev libopenexr-dev  libwebp-dev  
# sudo apt-get -yV install libjasper-dev  
sudo apt-get -yV install libhdf5-dev  

sudo apt-get install -yV wget unzip  

mkdir opencv  
cd opencv  
wget https://github.com/opencv/opencv/archive/3.4.9.zip  
unzip 3.4.9.zip  
cd opencv-3.4.9  

# https://gist.github.com/atinfinity/0aea057af98dcf5a838da23becfdffbe  
sh build.sh  
cd build  
make -j4  
sudo make install  
sudo ldconfig  

Xに画像表示したら
「Error retrieving accessibility bus address: org.freedesktop.DBus.Error.ServiceUnknown: The name org.a11y.Bus was not provided by any .service files」というエラーが出たのですが

sudo apt install at-spi2-core  

としたら直ると書いてあったのでやったら直りました。

libjasper-dev 無いと言われたのでいったん外しました。OpenCV3 は 3.4.9が最新だったのでそれにしました。

USBカメラ

 sudo apt install usbutils  

C270を接続。 lsusb では、「Logitech, Inc. Webcam C270」と出てきた。

sudo apt install fswebcam  
sudo fswebcam test.jpg  

で、画像は test.jpg に取り込めた。

Petalinux

Vivadoで回路作ってexportした後、たぶんこんな感じだと思うけど、ディスク容量不足で通せていない

petalinux-create -t project -n ultra96v2 -s ultra96v2_oob_2018_3.bsp  
cd ultra96v2  
petalinux-config --get-hw-description=../ultra96v2.sdk  
petalinux-build  
petalinux-package --boot --force --fsbl images/linux/zynq_fsbl.elf --fpga images/linux/design_1_wrapper.bit --u-boot  
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

@HO9g75yotMBpKJfJの技術ブログ

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう