Orange Pi PC向けのLinuxについて 2015/10/26版


Allwinner H3搭載のOrange Pi PC / Orange Pi Plus / Orange Pi 2 / Orange Pi mini 2で使用できるLinux OSがいろいろ増えた。
また、Orange Pi PC向けにRaspbianがリリースされた。

なので、ここで整理。

まず、公式リースの方から・・・

・Orange Pi PC向けにRaspbianがリリース
Orange Pi公式としてRaspbianの移植版が提供開始。
ただ、いつものごとくにBaiduのみのアップロード。
dropboxに転載「Raspbian_For_OrangePi_PC_v0_8_0.img.xz」(2015/10/28 03:30にdropboxから「過剰リンクのトラフィックがあっため停止、とのメールあり。昨日はすぐに復旧できたもの2回目は消さなければ駄目的な雰囲気….しばらく様子見)
まだ、ダウンロードしただけなので、動作についてはまだわかりません・

・loboris版のLinuxディストリビューションが増加!
フォーラムでloborisさんが公開していたDebian/Ubuntuスレがパワーアップ
Linux Distributions for Orange PI H3 boards」というタイトルに変更。
2015/10/26現在、下記のディストリビューションを配布中
 Debian 8
 Ubuntu 15.04
 Fedora 22
 Kali Linux 2.0
 Arch Linux
 OpenSuse
 Gentoo

loboris版のディストリビューションはAllwinner H3搭載機種共通イメージによる配布で、microSDにイメージを書き込んだ後、各機種にあわせた「uImage」と「script.bin」を適切に配置しなければ、全ての機能が正常に使用できません。
下記ページを参考に書き込んでください。
Orange pi PCをLinuxで使う方法 / lobris版UbuntuをOrange pi 2などで使う

Orange pi Plus2とOrange pi Plus3がリリース予定


Orange Piの公式フォーラムに「OrangePi Plus2 and OrangePi Plus 3 is coming!」という投稿が!

・OrangePi Plus2
Allwinner H3
RAM 2GB
WiFi+Bluetooth4
SATAなし

・OrangePi Plus3
Allwinner H64
RAM 1GB / 2GB
WiFi+Bluetooth4
SATAなし

というスペックらしい。

Allwinner H64は、H3,H8と一緒に発表されたSoCで、H3:CortexA7*4,H8:CortexA7*8のところ、H64:CortexA53*4というもの
果たして、いくらで登場するか、続報に期待です

H3搭載のOrange Pi 2/Orange Pi PCでKodiを動かす


Allwinner H3搭載のOrange Pi 2(OPi2) / Orange Pi mini 2 / Orange Pi Plus(OPi-PLUS) / Orange Pi PC (OPi-PC)でkodi(XBMC)を動かす、という話。

いまのところ、動くのは、Android OSのみです。
Linux OS(Debian/Ubuntuなど)で動かすことに成功した事例はありません。

原因は、Linux OS向けにGPU用のドライバがない、というところがあります。
これにより、GLES関連が正常に動作せず、なんとかコンパイルしてもちゃんと起動しません。

Android OSにはGPUドライバが組み込まれたものが配布されているため、
こちらではKodiが正常に動きます。

ただし、HDMI接続時にTVのリモコンを使って操作する機能(CEC)が使えません。

公式のAndroid OSを使う、というのが本筋ではあるのですが、Play Storeが入ってないので、ちょっと使いにくいです。

フォーラムでloborisさんが公開している「OrangePI-2 Android 4.4.2 New Image」がおすめですが、Orange pi PCで使えるかは確認していません。

このイメージはPlay Storeが入っているので、Googleアカウントを登録して、ストアからのアプリインストールが可能です。
しかし、root関連が有効になっているので、DLNA系のソフトは動きません。(Huluはダメだった)

Allwinner H3用のAndroidイメージは「.img」という拡張子にはなっていますが、「dd」コマンドで単純にデータを流し込むような形式ではありません。
専用のツールを使って書き込む必要があります。
(ツールは、Orange Pi公式で配布しているものと同じ)
loboris版を使う場合は、Linux用の書き込みスクリプトを含んだ配布パッケージがあるので、そちらを使います。

書き込みに失敗している場合は、ロゴが静止した画面で止まります。
その場合は、もう1回書き込みなおしです。
(うちの場合、Windowsから書き込むとうまくいかなかったので、Linuxで書き込んだ)

Allwinner H3搭載のOrange piの機種間差異について(Orange pi 2 / pi mini 2 / pi PC)


Allwinner H3搭載のOrange piシリーズの違いについて、ハードウェアとOSの互換性に絞って解説。

2015/09/16現在、リリースされているAllwinner H3搭載のOrange piシリーズは下記の4機種
・Orange pi PLUS(OPi-PLUS)
Orange pi 2(OPi2)
Orange pi mini 2
Orange pi PC(OPi-PC)

まず、「Orange pi 2」と「Orange pi mini 2」はWiFi対応のためのチップの有無で、基盤自体は共通になるためどちらも「OPi2」としてとして扱われる。

「Orange pi PLUS」は、内蔵ストレージがある(eMMC)、SATAコネクタがある、など、差異が大きく、別扱いとなっている。

「Orange pi 2/mini 2」と「Orange pi PC」は、だいたい同じだが、特にUSB周りの構成が異なっている。
「Orange pi 2/mini2」では、基板上にUSBハブのチップが載っており、そこを経由してUSB機器を接続している。
「Orange pi PC」では、H3チップの持つUSBコントローラ機能を直接コネクタにつないでいる。
コスト削減になっているが、USB機器側でなにか変な動作した場合に、直接H3チップに影響がいくことになるため、壊れやすくはなっていると思われる。

機種間の差異はLinux起動時に読み込まれる「script.bin」と「uImage」にて対応している。
/bootディレクトリか/media/bootディレクトリに配置されている。
また、HDMI出力時の解像度変更は「script.bin」内の設定で行われている。

script.binについては、ある程度汎用性があるようで、他の機種用に出ているOSのscript.binを置き換えて、無理やり対応させる、ということは可能。

uImageのほうは、Linux kernelと関係しているので、置き換えてもうまく動かない可能性の方が高い。

Orange pi PCをLinuxで使う方法 / lobris版UbuntuをOrange pi 2などで使う


Allwinner H3搭載のOrange pi PC(OPi-PC)でLinux OSを使う方法は2つあります。

1つは、公式がリリースしているLubuntu 14.04 LTSイメージを使用する。
もう1つは、フォーラムでloborisさんが公開しているUbuntu 15.04 / Debian 8イメージを使用する。

公式のLubuntu 14.04は、一見、特に問題なく動くように見えますが
よくよく見てみると/lib/modules/ディレクトリの下とか、/bootの下のファイルとかに整合性がとれて無い部分があってちょっとアレです。

もう1つのloborisさんが公開している方がちゃんとしている感じがします。
公開場所「Debian & Ubuntu for Orange PI H3 boards

このイメージは下記のAllwinner H3搭載機で動作します。
・Orange pi plus(WiFi,内蔵フラッシュストレージ,SATAコネクタ搭載)
・Orange pi 2(WiFi搭載)
・Orange pi mini 2(WiFi無し)
・Orange pi PC(WiFi無し)

機種間で差異がありますが、それは機種毎に用意されている「script.bin」と「uImage」を適切に配置することで対処できます。

初心者に優しくない導入手順

1. 配布ディレクトリから必要なイメージファイルを入手
 「~.img.xz」がディスクイメージファイルです。
 目的とするOSのものをダウンロードします。

2. 配布ディレクトリから、最新のscriptbin_kernel.tar.gzを入手
 ディスクイメージの日付とscriptbin_kernel.tar.gzの日付を比較し
 scritbinの方が新しい場合、これもダウンロードします。

3. xzファイルを解凍
 「7-Zip」などを使ってファイルを解凍します

4. Win32 Disk Imager などを使ってmicroSDにディスクイメージを書き込みます
 書き込み後のmicroSDは、FAT32のパーテーションと、ext4のパーテーションにわかれます。

5. FAT32パーテーションをマウントし「script.bin」と「uImage」をコピーする
 FAT32パーテーションの中にscript.bin.OPI-2_1080p50などのファイルがあります。
 必要なファイルをコピーして配置します。
 Orange pi 2とOrange pi mini 2の場合
  「script.bin.OPI-2_~」から使いたいHDMIの解像度のファイルを「script.bin」としてコピー
  「uImage_OPI-2」を「uImage」としてコピー
 Orange pi PCの場合
  「script.bin.OPI-PC_~」から使いたいHDMIの解像度のファイルを「script.bin」としてコピー
  「uImage_OPI-2」を「uImage」としてコピー
 Orange pi plusの場合
  「script.bin.OPI-PLUS_~」から使いたいHDMIの解像度のファイルを「script.bin」としてコピー
  「uImage_OPI-PLUS」を「uImage」としてコピー

6. Orange piにmicroSDを入れて起動

7. Orange piにログイン
 ユーザ名「orangepi」、パスワード「orangepi」

8. ファイルシステムの拡張
 そのままだとmicroSDの一部しか使われていないので、未使用領域も使える様にコマンドを実行
 「sudo fs_resize」
 パスワードは「orangepi」

9. 再起動
 「sudo reboot」

10. 再起動後、scriptbin_kernel.tar.gzをOrange piに転送

11. scriptbin_kernel.tar.gzを展開

12. 配布物にあるlib/modules/3.4.39/を/lib/modules/3.4.39/にコピーして置き換え

13. script.binとuImageを/media/boot/ にコピーして置き換え

14. 再起動