Gemini PDAで、Linuxを使ってみたかったので、Androidとのマルチブートにしてみました。
今日時点で、公式サイトで案内されているfirewareは、以下のとおり。
- Gemini Android-only firmware
 - Gemini Multi-Boot Firmware (Debian Linux, Sailfish OS, Standard and Rooted Android)
 - Team Win Recovery Project (TWRP alternative recovery image)
 - Lineage OS preview
 - Source Code https://github.com/dguidipc
 
今回、ワタシが試したのは、2のマルチブートです。こちらの説明によると、マルチブートにより、標準のAndroid、root化したAndroid、Debian Linux、Sailfish OSが混在可能と書かれてます。
公式:Gemini Firmware - Planet Computers
マルチブート化の手順
手順は、Linux Flashing Guideに書かれているとおり。まずは、注意事項から。
注意事項
注意事項 1つ目は、フラッシュするとデータが消えてしまうので、作業前にバックアップしといてねというもの。注意事項 2つ目は、他のツールを使ってフラッシュするとIMEI消えちゃったりするから気を付けて。特に、SP Flash Tool で Format all + downloadオプションは使っちゃダメ。絶対にだ。
大まかな流れ
- ドライバとFlashToolの準備
 - 起動OSの種類と割り当てるパーティションのサイズを決定し、設定ファイルとファームウェアをダウンロード
 - Gemini PDAにファームウェアをフラッシュ
 
ワタシは、Windows PCで作業しましたので、以下、Windows上での作業となります。
FlashToolの準備
ドライバをこちらからダウンロード。解凍したファイルの中からinstall.batを実行。不明な発行元と出るけど、くじけず実行。
ドライバのインストールが終わったら、FlashToolをダウンロードして解凍。ツールの実行は、flash_tool.exeを起動します。詳細は後ほど。
パーティション設定とモジュールのダウンロード
Gemini Partition Toolページで、以下の作業をおこないます。
- フラッシュするGemini PDAのバージョンを選択
 - デフォルトで起動するOSを選択(通常のAndroidにしました)
 - 通常以外のモードで起動するOSを選択(Debianにしました)
 - OSに割り当てるパーティションサイズを決定(半分ずつにしました)
 - フラッシュの定義ファイルの
scatter fileをダウンロード - 各OSのファームウェアをダウンロードして解凍
 - 定義ファイルと解凍したファームウェアのファイルをすべて同じフォルダ内に配置
 
LTE版のGemini PDAには、X25版とX27版があり、設定 -> 無線とネットワークに SIMカードという設定項目があればX27版で、なければX25版と書かれてます。ワタシのGemini PDAはX27版でした。また、定義ファイルの scatter file (Gemini_x27_AxxGB_LxxGB_Multi_Boot.txt)は、今後OSアップデートなどあった場合に、データを消去せずにアップデートをおこなうのに必要となるので、必ずバックアップを取っておくように書かれてます。
なお、起動OSは、以下の起動方法に照らし合わせて、好みのOSを設定します。
起動方法
- 電源OFFの状態からEscキーを1秒押すと、起動プロセス開始
 - 数秒後に画面が点灯し、Geminiは、下記のいずれの状態かをチェックして起動するOSを判定する
 
| モード | 各モードの起動判定 | 
|---|---|
| Boot1 | キーやボタンが押されていない場合には、Boot1に設定したデフォルトOSが起動 | 
| 回復モード | Escキーを押したままにしていると、リカバリモードで起動 | 
| Boot2 | スマートボタン(向かって右側面にある銀のボタン)を押したままにしていると、Boot2に設定したOSが起動 | 
| Boot3 | Escキーとスマートボタンを同時に押したままにしていると、Boot3に設定したOSが起動 | 
ワタシは、Boot1にAndroid、Boot2と3にDebianを割り当てました。
強制再起動
なんらかの原因でフリーズしてしまった場合など、強制敵に再起動するには、Escキーとスマートボタンを20秒ほど押し続けるといいそうです。幸いにもまだ未体験。
フラッシュ!!!!!!!!!
Flash Toolの設定
Windows Flash Toolのflash_tool.exeを起動して、Scatter-loading Fileにダウンロードした定義ファイルを選択すると、下記画面のように各メモリマップにダウンロードしたファイルが割り当てられます。すべてのパーティションにチェックが入っていれば、OKです。
NVRAMパーティションのバックアップ
マルチファームウェアをフラッシュする前にIMEIなどの重要な情報が入ったNVRAMパーティションのバックアップが推奨されているので、下記手順でバックアップをおこないます。
- Readbackタブに移動し、
Addをクリック - 1行目にバックアップ先が表示されたら、
Read Backをクリック - Gemini PDA(向かって左側)とPCをUSB接続し、Escキー長押しして、Gemini PDAを再起動
 - フラッシュツールがユニットを検出し、
NVRAM0ファイルをバックアップすると、下記画面のようになります 
バックアップ先にNVRAM0ファイルができていれば、NVRAMパーティションのバックアップ完了です。このNVRAM0ファイルとscatter fileを大切に保存しておくようにと書かれてます。
なお、説明では再起動しろとなっていますが、この作業の後、Gemini PDAは起動してきません。いったんGemini PDAからUSBケーブルを抜いて、Escキー長押しで起動しておきます。
ようやくFlash
- Downloadタブに移動し、
Firmware Upgradeオプションを選択 Downloadをクリック- Gemini PDA(向かって左側)とPCをUSB接続し、Gemini PDAEscキー長押しして、Gemini PDAを再起動
 - フラッシュツールがユニットを検出し、ファームウェアのフラッシュが始まります
 
この画面になったらファームウェアのフラッシュが完了です。
マルチブート起動
フラッシュが完了したら、Gemini PDAからUSBケーブルを抜いて、Escキー長押しで起動して、すぐにスマートボタンを押し続けていると、Linuxが起動しました。こばこさんの記事では、起動~デスクトップ表示~稼働まで随分と待たされたと書かれていたので、かなり待つつもりでいたのですが、下の画像のようになるまで起動から1分くらいだったので拍子抜けしました。最適化とかされたのでしょうか。
Androidの方は、通常起動するはずが、なぜかフラッシュ直後は、リカバリーモードに入るようになってましたので、いったんwipeして再起動したら、通常のAndroidが起動しました。
参考:Gemini PDAをデュアルブートに変更: こばこのひみつ
Debian 25th years
奇しくも、この作業を開始した2018/08/16は、Debian Project誕生から25年を迎えるという節目の日であったそうで、これも何かの縁かなと感じております。
参考:2018年8月17日 Debian,25歳になる:Linux Daily Topics|gihyo.jp … 技術評論社
おしまい。
    
コメント
コメントなどありましたら、GitHubのディスカッションへお願いします。(書き込みには、GitHubのアカウントが必要です)