【NanoPi NEO/Armbian】環境構築 ~Armbianインストール~起動まで~

シングルボードコンピュータ(SBC)

組み込みLinux学習にオススメのSBC、NanoPi NEO

組み込みLinux学習に適した環境といえば、なんといっても情報量の多いRaspberry Piですが、2023年4月現在で引き続き手困難が続いている様です。そんな中、個人的に組み込みLinux学習に最適だなと感じたSBCがあるので紹介します。

‎Friendly NanoPi NEO

NanoPi NEO
The NanoPi NEO(abbreviated as NEO) is another fun board developed by friendlyelecfor makers, hobbyists, and fans.
NanoPi NEO - FriendlyELEC WiKi

より高性能な上位機種もありますが、学習用としてはこれで充分かと思います。RAM容量が256MBのものと512MBのものがありますが、価格差が小さいので512MBを選んでおくのが無難です。

Amazonでは複数の出品があるようですので、信頼できそうなところから入手しましょう。筆者はヒートシンク込で4000円前後で購入しました(2023年4月現在の情報)。

※2023年4月現在 秋月電子通商でも入手可能です

Allwinner H3(クアッドコア Cortex-A7 @1.2GHz)採用のSBCです。今となっては高性能とは云い難いですが、必要最小限の外部インタフェースでHDMIは装備しておらずCLI(Command Line Interface)での操作がメインとなります。組み込みLinux開発の学習ならその方が実践に即していますし、比較的入手し易く小型・軽量・シンプルで取っ付きやすいかと思います。

使用するにあたって必要なものは以下の通りです。

  • 母艦となるPC (Micro SDカードを読み書きできる必要があります) & インターネット接続環境
  • NanoPi NEO 本体 & ヒートシンク (安定的運用の為にはあったほうが良いでしょう)
  • Micro SDカード (おすすめ容量は32GB or 64GB)
  • USB Micro-Bケーブル (データ通信可能なものを選びましょう)

以下ネットワーク接続用に必要なもの

  • Ethenetケーブル、もしくはUSB WiFiアダプタ

Ethernetケーブルで有線接続でも良いですが、筆者はWiFi接続で使用することとしました。実は事前にWiFiドングルを接続した状態でNanoPi NEOを初回起動するとWiFiセッティング画面が自動的に表示されて合わせてセッティングできてしまいます。

WiFiアダプタはメジャーなものなら使用可能と思われますが、どんなものでも使用できるというわけではありません。今回筆者が使用したものを紹介しておきます。

電源はMicro-B USB端子で供給します。定格5V2Aですが、外部に電力消費の激しいUSB機器を接続するなどしなければ、通常は母艦PCとのUSBでの電源供給で問題ないかと思います。

Armbianのイメージ取得~起動

Linuxソフト環境としては、純正公式の「FriendlyCore」もありますが、今回は「Armbian」を使用します。FriendlyCoreは別途コンソール接続のためのシリアルケーブルをDebug UARTピンに接続する必要がありますが、Armbianは電源供給とシリアルコンソール接続をUSB接続で行うことができる様になっているため、ピンを空けることができます。

非常にシンプルな手順で起動までいけます。

  • イメージ書き込みソフトを入手
  • イメージファイルをダウンロード
  • イメージ書き込みソフトでイメージファイルをMicro SDカードに書き込み

イメージ書き込みソフトを入手&インストール

フリーのイメージ書き込みツールはいろいろありますが、筆者は「Raspberry Pi Imager」を利用しています。以下からダウンロードできます。

Raspberry Pi OS – Raspberry Pi
From industries large and small, to the kitchen table tinkerer, to the classroom coder, we make computing accessible and...

イメージファイルをダウンロード

以下からNanoPi NEO用のArmbianイメージをダウンロードします。

Nanopi Neo and Core

DebianベースのものとUbuntuベースのもの、更には夫々のMinimal版が提供されていますので好みのものを選びましょう。今回、筆者はDebianベースの「Armbian 23.02 Bullseye」を選んでみました。

イメージファイルをSDカードに書き込み

PCにSDカードを接続し「Raspberry Pi Imager」を起動、「OSを選ぶ」を選び「カスタムイメージを使う」を選びます。

次に、「ストレージを選ぶ」から書き込むSDカードを選択します。

複数のストレージがある場合、上記画像のように複数のドライブがリスト表示されますので、書き込むべきSDカードを選択します。ここは絶対に間違えてはいけないところですので注意して選択してください。

書き込むSDカードを選択したら、「書き込む」を選択します。書き込みが開始されますので書き込み完了まで待ちましょう。

「書き込みが正常に終了しました」のポップアップが表示されたら完了です。SDカードをPCから取り外し、NanoPi NEOに装着します。

ここまでできたら、USBケーブルでPCと接続することで電源が供給されて数十秒程度でArmbianが起動するはずです(WiFi接続する場合はUSB WiFiアダプタを接続しておきましょう)。USBのドライバはPC側の環境次第の面もありますが、接続時におそらく自動インストール&認識されるかと思います。

PC側からターミナルソフトにてシリアル接続します。ターミナルソフトですが、筆者は定番の「Tera Term」を使用しています。

窓の杜
「Tera Term」定番のターミナルエミュレーター

COMポートの番号は各自環境によって異なります。

ボーレートはデフォルトの9600bpsでも接続可能ですが115200bpsにしておきます。

そのまま暫く待つと・・・起動しました!

rootパスワード、デフォルトのcommand shell選択、usernameなどを促されるままに入力します。

基本的な使用法はDebianやUbuntu同様です。最低限のLinux知識がある方なら特に迷うことはないかと思います。Armbian公式のドキュメントは以下にあります。

Armbian Documentation

USB WiFiアダプタによるWiFi接続

NanoPi NEOはEthernetポートを備えているため有線で接続してもいいのですが、前述の通り、後付のUSB WifiアタプタでWiFi接続してみます。使用可能なWiFiアダプタがどれなのかは調べようと思えば調べられると思いますが、色々知識が必要ですので、まずはネットで実績ありそうなアダプタを調べてみるのが無難です。手元に余っているWiFiアダプタがあるなら接続してみて認識されるか確認するのが手っ取り早いです。最新規格のものより少し前の枯れた製品のほうがオススメです。

筆者が今回使用して接続実績あるWiFiアダプタを改めて紹介します。

前述の通り、WiFiアダプタを接続した状態で起動すると、userアカウント、userパスワード、username入力後に引き続いてWiFi設定画面が表示されます。

最初に接続先を選択します。

接続先を選択したら接続パスワード入力画面が表示されますので入力します。

接続に成功したら、Quitを選んでWiFi設定画面を抜けます。

引き続き言語環境について確認されますので好みで選んでください。

これで初回起動時の初期設定は完了です。うーん、なんて簡単!

インターネット接続によるソフトウェア更新

一旦、rebootコマンドでLinuxを再起動します。

# reboot

ターミナルソフトを一旦終了し、NanoPi NEOが再起動するまで数十秒程度待ってからターミナルを再接続します。Enterキーを入力するとloginプロンプトが表示されるので初回起動時に設定したuserアカウントでログインしましょう。

インターネット接続できている場合、ソフトウェアを更新しておきます。

$ sudo apt update
$ sudo apt upgrade

SSH接続

そのままシリアルコンソールで操作しても良いですが、ネットワークに接続したならSSH接続で使用するのがオススメです。スクリーンサイズを調整できますし、複数セッションで接続できるのも便利です。

SSHサーバーはデフォルトでインストールされていましたので、NanoPi NEOに割り当てられたIPアドレスを調べてSSH接続可能なPC側ターミナルソフト(我らがTera TermでOKです)から接続するのみです。

まず、ipコマンドでIPアドレスを調べます。環境によって異なりますが「inet XXX.XXX.XXX.XXX」のような形で表示されます。

$ ip address

IPアドレスがわかったらターミナルソフトからIPアドレスで接続し、userアカウントでログインします。
※IPアドレスやユーザー名は筆者の環境のものですので実際と異なります。

次回予告

基本的な環境構築としては以上となります。次回は定番のLチカしてみたいと思います。

コメント

Amazon プライム対象
タイトルとURLをコピーしました