Orange Pi 5のまとめ 2023/01/13版

Orange Pi 5 が届いた」を始めにいろいろOrange Pi 5に関する記事をいろいろ書いていったら探しにくくなってしまっているので、まとめ記事を作成しました。

この記事の更新履歴

2023/01/07: 作成
2023/01/13: Chromium OS(openFyde)について追加。microSDとM.2 SSDの優先順位について修正。M.2 SATA SSDの入れ替えに関して追加

仕様について

M.2スロットで使用できるもの

・M.2 NVMe SSD(M-key)

M.2 M-keyで使えるSSDには、M.2 NVMe SSDとM.2 SATA SSDの2種類があります。

Orange Pi 5の公式仕様としてはM.2 NVMe SSDが使用できる、ということになっています。

Orange Pi 5ではM.2 NVMe SSDの2242が適切なサイズですが、日本で買うと高いです。

aliexpressでは日本の半額程度で買え、2週間程度で届きます。

私はKingSpecというメーカの512GBを買いました。詳細は「aliexpressでM.2 2242サイズのSATAとNVMeを買ってみた

・コンバーターボード経由でM.2のA/E-keyのWiFiカード

本来はA/E-keyのM.2はM-keyにさすことが出来ませんが、コンバーターボードを使うことでさすことができます。

詳細については TechnicaLifeさん「Orange Pi 5 で Intel AX200 Wi-Fi を使う」にて

・限定的にM.2 SATA SSD(M-key)

2023/01/07時点ではOrange Pi 純正Ubuntu/Debianで使える手法ですが、microSDからLinuxを起動したあと、ssd-sataというkernelモジュールを読み込むことでM.2 SATA SSDを利用することができるようになります。

詳細「Orange Pi 5でデータディスクとしてならM.2 SATAも使える

2022/12/23に中国サイトでのみリリースされてたAndroidイメージではM.2 SATAから起動できるイメージなるものがありました。(いま気がついたのでダウンロード中です)

中国サイトのマニュアルにLinux/AndroidでM.2 SATA SSDから起動するための手順が書かれていました。
詳細「Orange Pi 5でAndroid/Linux共にM.2 SATA SSDから起動できるようになった

microSD起動とM.2 SSD起動の切り替え

microSDとM.2 SSDを両方入れている場合にどちらを優先するか、というあたりはnand領域に書き込んで設定しているようです。 基本的には起動できるmicroSDがあればそちらから起動するようです。

どちらかしかさしていない状態であれば、さしているデバイスから起動するようになっているようです。

このため、うちではM.2 NVMe SSDから起動するように設定した後、他のOS環境を試す際は、一度M.2にさしたSSDを取り外して、microSDのみにして起動しています。

M.2 NVMe SSD起動とM.2 SATA SSD起動の切り替え

「Androidを書き込んだM.2 NVMe SSD」と「Androidを書き込んだM.2 SATA SSD」をさしなおして環境をかえられるかな?とやってみましたが、無理でした。

SPIFlashの内容を書き換えないと駄目なようですが、RKDevToolで自動化されている作業を手動でできるのかが不明です。

なお、RKDevToolを使って、M.2 SSDをフォーマット/書き換えすれば切り替え自体はできました。

M.2 SATA SSDのLinuxとM.2 SATA SSDのAndroidの切り替え

M.2 SATA SSDを2枚用意して、差し替えることで起動を切り替えられるか試してみましたが上手くいきませんでした。どうやらLinux起動用の設定とAndroid起動用の設定は違うようです。

Linuxについて

Orange Pi純正のUbuntu/Debianの他に、2022年末にarmbianのベータ版公開が始まりました。

Orange Pi純正は2023年1月にも更新されてv1.0.8(年末はv1.0.6だった)になっていますが、v1.0.6からv1.0.8相当にアップデートする手法がわからない、というのが難点です。

GPUドライバがない件

2023/01/07時点ではOrange Pi純正もarmbianも初期設定では、ソフトウェア処理となっていて、SoCに含まれているGPUが有効活用されていません。

Panfrost GPU driverを適用するとSoCのGPUが活用できます。

Orange Pi 5純正のUbuntuのGPU表示を高速化できるのか?」で試したのですが、確かに数値としては速くなったものの全体的な動きに問題がありました。

armbianの方は、armbianのページにかかれている解説の通りに実行するこで組み込み正常動作はするのですが、あまり変化がなく微妙でした・・・

また、2023/01/03リリースの Orangepi5_1.0.8_ubuntu_jammy_desktop_xfce_linux5.10.110.img で起動した際、初期状態の /etc/chromium-browser/default に対して「CHROMIUM_FLAGS=”-use-gl=egl”」という変更を加えたところ、それだけで、chromiumブラウザ上でのWebアクアリウムがfps:3からfps:60に改善されるという状況に・・・

2023/01/07時点ではGPU周りはまだ混沌としている感じです。

Androidについて

2023/01/07時点で公式から配布されているAndroidイメージにはGoogle Playは含まれていません。
→「Orange Pi 5をAndroid 12で動かす

中国サイトにあるOrange Pi OS(Droid)にも含まれていませんでした。
→「Orange Piの中国サイトからだとOrange Pi OS(Droid)が入手できる

じゃあ、Google Playが使えないか、というとそうでもなくて、Androidの開発者向けオプションにあるDSU Loader機能を使うとなんとか使えるようになる、というのを発見しました。
→「Orange Pi 5用Android 12からGSIイメージの汎用Androidを起動する

また、Orange Piの中国サイトで2022/12/23にリリースされたAndroidイメージはM.2 SATA SSDから起動できるものがあるようです。(いま気がついたのでダウンロード中です…)

ためした限りではAndroid部分はWiringOPというGPIO関連のテストを行うアプリが追加されていましたが、それ以外はあまり差がないようでした。

Chromium OSについて

ChromeBookなどで使われているChromeOSには、オープンソースのみで構成されているChromium OSというものがあります。

このChromium OSをベースとしていろんな機種で動作させるようにするプロジェクトがいくつかあり、その1つのFydeOSという商業ベースのものがあります。

このFydeOSのオープンソース版は以前からあったのですが2022年になってからopenFydeという名称を付けて展開を始めています。このopenFydeで2023/01/07からOrange Pi 5向けの開発と提供が始まっていました。

さっそく導入してみました→「Orange Pi 5でChromium OS(openFyde)を動かす

ChromeアプリやLinuxについては特に問題無く動いています。音声出力にも問題はありません。

Orange Pi 5用Android 12からGSIイメージの汎用Androidを起動する

Orange Pi 5用として公式で出ているAndroid 12とOrange Pi OS (Droid)のどちらにもGoogle Playは入っていなかった。

しかし、開発者向けオプションを有効にしてみると、DSU Loaderが使えることがわかった。

また、root権限が使える状態であるため、DSU Sideloader を使うと好きなGSI イメージを使って起動させることができそうです。

(注: LCD用Androidイメージ+Type-Cディスプレイの場合、GSIイメージで起動すると最初はHDMI出力のみで、初期セットアップ完了後じゃないとType-Cディスプレイが使えませんでした)

phhussonさんとこのGeneric System Image (GSI) List からAOSP 12.1 v416を使って見ました。

(なお、GSIイメージによっては黒画面のまま起動してきません)

まず、起動したAndroid上の検索枠で「dsu loader github」と検索すると出てくるDSU Sideloaderのgithubページにある apkファイルをAndroidにインストールして、DSU Sideloaderアプリの設定で「Build-in installer」を有効にしてから、GSIイメージを選択してインストールします。

Userdate sizeを30GB以上に設定しないと原神はインストールできないと思います。(22GBだと駄目だったので、とりあえず50GBで設定した)

インストールに使用するGSIイメージは system-squeak-arm64-ab-gapps.img.xz を使いました。Androidブラウザでダウンロードするとファイル名が system-squeak-arm64-ab-gapps.bin で保存されてしまうので、保存完了後ファイル名を system-squeak-arm64-ab-gapps.img.xz に変更する必要があります。

正常に導入が終わると「Reboot into DSU」というボタンが現れるので、それをクリックすると、GSIイメージのAndroidが起動します。

正常に動作するGSIイメージであればAndroidの初期画面が表示されるでしょう

Google Playストアがありますね

で・・・原神も動きました。

ただ、Orange Pi 5のAndroidだとHDMI/Type-Cディスプレイで音が出るんですが、GSIイメージから起動すると、Orange Pi 5オンボードのイヤフォン端子からのみ音が出る、という状態でした。

原神は、初期設定だとグラフィック設定:低いとちょっと荒い表示ですが、設定で「最高」を選んでも問題無く動きました。

その際の消費電力は5V1.8Aぐらいを上限として1.1A~1.8Aを動いている感じでした。


Lenovo/ワコム液晶をType-Cコネクタ1本でつないだ場合の使い勝手について

OrangePi5_RK3588S_Android12_spi-nvme_lcd_v1.0.0.img
→ いまいち。タッチ動作がおかしくなったり、GSIイメージで起動した場合のディスプレイ出力が怪しかったりする
  なぜかGSIイメージで原神を起動するとすぐに落ちる
  ブート画面はType-C側に出力される

OrangePi5_RK3588S_Android12_spi-nvme_v1.0.0.img
→ 問題無し? 液晶側から音もなるが、GSIイメージ起動の場合はOrange Pi本体のイヤフォン端子からのみ音が出る
  GSIイメージで原神は問題無く動いた
  ブート画面はHDMI側に出力され、Type-Cディスプレイしかつないでない場合、起動が完了するころまで黒画面のままとなる

OrangePi-OS_Droid_orangepi5_spi-nvme_v0.0.2_beta.img
→ OrangePi5_RK3588S_Android12_spi-nvme_v1.0.0.imgとだいたい同じような感じ。
  v0.0.3へのアップデートがふってくることと来ないことがあるのが謎
  GSIイメージで原神は問題無く動いた
  ブート画面はHDMI側に出力され、Type-Cディスプレイしかつないでない場合、起動が完了するころまで黒画面のままとなる

Orange Piの中国サイトからだとOrange Pi OS(Droid)が入手できる

2023/01/04追記:Orange Pi 5でGoogle Play ストアを使うためには「Orange Pi 5用Android 12からGSIイメージの汎用Androidを起動する」の手順で十分です。


youtubeにOrange Pi 5のレビュー動画が公開されていた。

Androidのホーム画面にGoogle Playがいるばかりか、原神をプレイしている・・・

Google Play入りのOrange Pi 5用Androidイメージはどうやって入手するんだ?と思っていたらOrange Pi 5の中国語ページ にある「Orange Pi OS(Droid)」のリンク先でダウンロードできるようだ、というタレコミが・・・

たしかにOrange Pi OS(Droid)のファイルがある。

しかし、このサイト pan.baidu.com は専用クライアントソフトを使わないとファイルがダウンロードできない。

使わなくともダウンロードできるような手法もあるのですが、今回のファイルダウンロードでは上手く動作せず。

仕方が無いので、専用クライアントソフト+baiduアカウントでログインしてファイルをダウンロードします。

ダウンロード速度は低速で30Kbps~150Kbpsで推移していました。

課金すると早くなるらしいです。

こうして入手したファイル OrangePi-OS_Droid_orangepi5_v0.0.2_beta.tar.gz を展開して .imgファイルを SDDiskToolのSD_Firmware_Tool.exe で書き込みます(詳細)

ただ・・・いろいろ遊んでみたところ、容量が足らなかったので、NVMe SSDへインストールすることにしました。

Type-Cコネクタをパソコンにつないで、ボード上のMaskROMボタンを押しながら電源を繋ぎます。

そうすると、下記のような不明なデバイス(VID_2207&PID_350B)が現れます。

これは、DriverAssitant_v5.12\Driver にあるドライバを適用すると以下の認識になります。

そうするとRKDevTool上の表示が「Found One MASKROM Device」となります

次に「Upgrade Firmware」タブで「Firmware」をクリックし、書き込みイメージファイルを指定し、「Upgrade」をクリックして書き込みます

書き込みが始まると右側に状況が表示されます

進行中…

書き込みが完了すると、そのままAndroidが起動して、「Found One ADB Deivce」と表示されます

・・・・で、起動したわけなんですが、期待していたGoogle Playはありませんでした。

なんで、Chromeは入ってるんだろうか??

で・・・設定画面をいろいろ見ていたら「開発者向けオプション」に「DSU Loader」というのがあった

Dynamic System Updates(DSU)はGSIイメージを利用して別のAndroidを起動するための仕組み。

選択してみるとGSI+GMSがある・・・GMS=Google Mobile ServiceということでGoogle Playストアが使えるイメージが選択できる、ということ

ただ、GSI+GMSのイメージを選択すると、ダウンロードが開始されて、用意が終わるとそのイメージで起動できるのですが、そのシステムディスクで使えるストレージが7GB程度と固定で、原神をインストールするには足りませんでした。

また、GSIで起動したAndroid側ではHDMI 経由の音声出力がうまくいかないようで、イヤフォン端子からのみ音が出ていました。

また、このDSU Loader経由での別のAndroidイメージの起動は、Orange Pi OS (Droid)じゃない、普通のAndroid 12イメージでも動きました。

詳細手順としては「Orange Pi 5用Android 12からGSIイメージの汎用Androidを起動する」にまとめました。

ということで、わざわざBaiduクライアントをインストールした意味があまりなかった、という話でした

Orange Pi 5をAndroid 12で動かす

2022/12/20時点で使えるOrange Pi 5のOSは、Ubuntu, Debian, Android 12。

Orange Pi (Droid)はリンクはあるもののファイル自体は存在していないという残念な状態

microSDで起動させる場合のAndroid 12はSDDiskTool_v1.72.zipに含まれているSD_Firmware_Tool.exe から書き込む。

中国語インタフェース…

config.iniを開いて「Selected=1」を「Selected=2」に替えたら英語インタフェースになった

まず「SD Boot」を選択してから、「Firmware」ボタンをクリックして、OrangePi5_RK3588S_Android12_v1.0.0.imgを指定して「Create」ボタンをクリックする。

書き込み確認で、はい、を選んで書き込み開始

書き込み完了

書き込んだmicroSDはこんな感じのパーテーションになりました。

NVMe SSDを取り外して、microSDのみ入れて電源オン…

しばらく待つと下記の画面となります。

アプリ一覧にブラウザはいませんが、検索欄をクリックすればブラウザとして使えます。

F-Droidでもアクセスしてフリーソフト中心のソフトウエアレポジトリにアクセスしてみましょう…

が・・・たいしていいアプリがあるわけじゃないので微妙なんですけど・・・

ただ、いい感じのブラウザがなくて・・・

Ubuntu Touchでも使ったBromite ブラウザ をF-Droidレポジトリに追加してインストールすると、Chromiumもダウンロードできるんですが、Google開発者サービスがない、といわれるのでBromiteの方を使った方がいいでしょう

で・・・ブラウザをインストールしてyoutubeにアクセスしてみたところ、HDMI経由の音声出力も動いていました。

うちの場合標準設定では音量が小さくて、大きくする必要がありました

ただ、結局アプリが微妙なので、使い道があまりないかなぁ・・と

スマホをゲーム機っぽくするGameSir X3 Type-C接続版が届いた

aliexpressでGameSir X3が$187.49 なんて値段で売ってるのを発見

あれ?いつのまに発売されてたの?と調べて見ると、Indiegogoでクラウドファンディングをやっていた。

GameSir X3 Type-C-The Ultimate Mobile Controller

GameSir X2と比べて背面に冷却用ファンが追加された、という違いのようだ。

GameSir X2はタイミング逃して買わず、原神をプレイしだしてからGameSir T6miniをやってみたけど、こいつだけGameSirのマッピングアプリ非対応で使えないとか縁がなかったけど

$69 ならちょうどいいか?と1口購入

ちなみに5/12になったらaliexpressの販売ページは $99.97に値下がっていました。

驚いたのは「June 2022」という予定だったものが、 5/20に発送連絡が来たということ。

まあ、5/24に発送手法変更ということでトラッキング番号が再発行になりましたが、5/25に中国を出て5/29に到着という快速具合でした。

で・・・到着

中身

で・・・手持ちのスマホを入れてみる

Androidの「設定」画面で「その他の設定」などにある「OTG接続」を有効化しないと認識できないのですが、Qualcomm/スナップドラゴン SoCのスマホでは認識しましたが、MediaTek SoCのスマホでは認識できませんでした。

動作確認はGameSirアプリを使って行います。GameSirアプリは https://github.com/gamesir123/app/blob/master/readme_en.md から入手します。apkをインストールすると下記の様にGoogle Playが文句を言ってきます。

2022/06/07追記: Google Playストア配布版 でも動く、という話を聞いて試したところ、原神、PS Remote Playで使って見たところ特に問題なく動作しています。

これは「キー入力と画面操作を乗っ取るなんて悪いやつに違いない」ということで警告を出しているというわけです。どうにもならないのでコレは無視します。(Android の今後のバージョンでこういう機能が完全に使えなくされる可能性もあります)

GameSirアプリをインストールして、必要ないろいろな設定をしてから「Gamepas testing」にてボタンの反応を確認します。

動作に問題がなければゲームで遊んで見ます。


StreamLinkだとそのままコントローラとして認識してくれます。

「プレイ開始」を選んでパソコンと接続するとこんな感じ

この「BACKを長押ししてリモートセッションを制御します」というのは、左上の「G」ボタンを長押しする、という意味になります。

とりあえずライザのアトリエを起動してみたところ、まあ普通に動きました。


続いて今回のメイン目的の原神ですが、原神はコントローラに対応していないため、GameSirアプリを入れてマッピング機能を有効にしないと使えません。

また、OPPOスマホの場合、OSの省電力設定の影響で画面上にGameSirアプリのアイコン群は表示されるけど、キーマップ動作はしない、という面倒くさい状態になっていました。

これは原神などの重いソフトを動かすと、他のアプリを強制終了させる、という機能によるものでした。

これを解消するにはOS設定画面からアプリ情報の「GameSir」を選択し、「省エネ」から「バックグラウンド実行を許可する」を選択して、強制終了されないようにする必要がありました。

必要な設定を行ったあと、GameSirアプリを起動して、GameSirアプリ内のMy Gamesに「原神」「StreamLink」などGameSir X3を使って操作したいアプリを登録します。

この場合、「原神」をクリックすると原神用のマッピング設定で起動します。

「StreamLink」をクリックするとマッピング設定を無効化してからStreamLinkが起動します。マッピングをしないからといってStreamLinkを登録しないでいると、原神で遊んだあとStreamLinkを起動すると原神用のマッピング設定のまま動いてしまう形になるので注意が必要です。

マッピング設定を有効にする場合、GameSirアプリでの有効化の他に、GameSir X3側での操作が必要となります。

原神が起動したあと左上の「G」ボタンを、右下の「Home」ボタンを同時に押すと緑丸内の上側のLED1が緑色の点灯に変わり、マッピング機能が有効化されます。

押したあと、下記の様な「GameSirに Gamesir-X3 Type-Cへのアクセスを許可しますか?」というダイアログが表示された場合は「OK」を選択します。

これでアナログキーでの操作ができるようになります。

LED1が緑にならなかったりした場合は、もう1回 G+Homeボタンを押して様子を見てください。

さて、原神の操作をしてみたところ標準で設定されているマッピングはPS4ユーザにとってちょっと使いにくいので、変更しようと思ったのですが、どこで設定変更できるかがよく分かりませんでした。

あ・・・ローディング画面で何かが見える・・・

ということで、下記の赤丸の部分がGameSirアプリのマッピング設定を変更するためのアイコンでした。

ここをタップして設定変更を行います。

割り当てるキーがタップするあたりを設定していきます。

設定完了したら×ボタンタップのあと「Save to accessory」で保存します。

こんなあたりで大丈夫かと思います。


PS4 Proを遊ぶのにSONY純正PS Remote Playというのがありますが、これはコントローラ非対応なので、GameSirアプリでマッピングして遊べます。

スクリーンショットはPS Remote Playアプリ側の制限で撮れませんでした・・・


で・・・GameSir X3ですが、でかいファンがついているのですが、これ、ファン専用Type-Cコネクタにケーブルを繋いで電源供給しない限りファンがまわらないので、かなり面倒くさいんですよね・・・

ファン専用バッテリーとか内蔵してくれればよかったかも?という感じがしなくもないです。


2022/10/12追記

マッピング設定をした場合、画面上にうっすら割当ボタンの表示がされています。

この表示度合いは設定で変えられます。

GameSirアプリの設定画面を開いて「Advanced」にある「General settings」を選択。

そこにある「Button transparency」の値を左側(-)にずらしていくと、どんどん薄くなっていき、一番左だと消えます。