あるカメラ(モジュール)の動作確認・設定を行うための専用の端末が必要になりました。もちろん、そんなものはWindowsなりLinuxなりのPCでやるよう構築できるものと思いますが、現場作業ものだし、『専用』なので、それだけの投資(あるいは維持)をしないとならなくなってしまいます。
そういうこと?で、なるべくお手軽にしておきたいわけで、先日せっかくTinyDRM使って『小型端末化』できるようになったNanoPi NEOにご登場いただこうか、というところです。
OS
いつものごとくarmbian使うんですが、armbianサイトに置かれているbusterイメージ、ぶっ壊れているみたいで、torrentしても、その時はunxzすることできず。手っ取り早くbionicで進めることにしました。
一時は本家Debianばっかり使ってたんですが、rock64でayufanを使う必要があったところから、だんだんubuntuが増えてきてます。(ちなみに、インストール後数日経過してるところで書いてるんですが、今現在focalにupgrade中です…)
まずはシリアルコンソールで立ち上げ、先日のdtsを持ってきてoverlayを追加し、キーボードとマウス、それにUSBドングルタイプのWiFiを用意してセットアップ開始。何分、NEO2ではなくNEOなので、軽くしておきたくGUIとしてxubuntuを選択。
OpenCV
C++から使う能力は私にはないので、python3で使うべくopencv-pythonをpipでインストール。想定どおり、build過程でout of memoryしてこけるので、1Gのfilesystem swapを追加してしまいます。これ、安定して稼働してくれれば無くしても大丈夫なはず。
しかしout of spaceで再度build中断。おや?filesystem full?そんなはずは…と思ったら、どうも、opencv-pythonをソースからbuildさせるとダウンロードしてくるため、/tmpを食いつぶしてしまいそれで起こっているようです。
このため、TMPDIRを設定してやって仕切り直し。
これで問題ないかなーと言うとさにあらず。 No module named 'skbuild' ?なんじゃこりゃ、と、お助けを乞うたところ、pipが古いのだそうな。セットアップしたばっかりなのに…(ったって、そのインストールイメージ作られたのがいつなのか、と言う問題なんだから…)。その他に、setuptoolsもupgradeしておく必要があるようです。
さすがにopencv-pythonのbuildには数時間必要。計ってはないんですが、12時間くらいかかってますかね…。
動作確認。pythonでopencv使ってjpeg読んで、LCDサイズに合わせて表示させました。
『箱』
NanoPi NEOには、上の写真に見て取れる、アクリル板を使ったケースというかガードというかなんというかがオプション品にあるんですが、さすがに、用途的に、LCDと、それをつなぐケーブルをぷらぷらさせておくわけにはいきません。そのため、何らか箱に収めたいんですが、NanoPi NEOは高さが結構ある関係で、LCDの配置次第で、大体40mm以上高さがあるケースが必要になります。これって結構な制約条件で、高さ方向として約40mmとろうとすると、結構大きなケースになってしまいます。NanoPiとLCDを横に並べた場合でも、高さは概ね25mm必要です。
その昔、円筒形のガムの空きボトルを使ったことがあります。あれ、ポリエチレンで、カッターで切れるし、直径が70mm近くあるんですが、コネクタ類(USB、Ether)をちゃんと出したいしLCDが2.8"だと2:1くらいに縦割りし、横倒しして使うイメージになるため、転がらないような対策も必要だし、あまりよろしい結果になりそうにありません。アクリルケースは意外と希望サイズに近いものがなく、かつ加工の際に割れるとな〜、放熱もちょっとな〜と思うと、選定しづらい感じ。アクリルのパネルから6枚切り出して…と言うのも考えましたが、コーナーに角材を入れないと接着強度が気になる。
これはほぼ最終状態のスナップショットなので、アプリショートカットやら何やら設定した後になります。
おまけ -- focalへのupgrade
これを書いている間に、focalがリリースされたけどインストールする?と、ダイアログがでました。もちろん進めるんですが、do-release-upgradeで何かエラーが起こってる。なになに?KeyError: 'suite'?
これは(も?)初体験に付き調べ回っていると、事象はこちらのサイトで話されていることと同じようです。GzipIndexが使われているのは02-armbian-compress-indexesだけなので、こいつを変更してやると、あとはupgradeが進みました。
0 件のコメント:
コメントを投稿