Nexus7(2012)のファームウェアをLoliPopにアップデート

手元にあるNexu7(2012/3Gモデル)をAndroid 5.1.1(LoliPop)にアップデートしてみます。
手順はFactory Images for Nexus Devicesに書かれているとおりです。下の方の使用条件に同意してチェックすると具体的なイメージやアップデートの方法が表示されます。

下記にLinuxMint17(64bit)での手順を記載しておきます。言うまでもないことですが、ファームアップデートは自己責任で。

1)ツールのインストール

2)Android端末を開発者モードに変更する

Android4.4.4ではUSBでPCに接続しても、PC側では認識されません。現在入っている
設定→タブレット情報をタップして、タブレット情報を表示させ、ビルド番号を連打すると「開発者モードになりました」という表示がされ、設定メニューの中に「開発者向けオプション」が現れます。開発者向けオプションの中の「USBデバッグ」にチェックを入れてからPCに接続します。

3)Android端末のUSBデバイスIDを確認する

この場合、最初の18d1:d002がNexus7(2012)デバイスIDです。(18d1がベンダID、d002がデバイスID)

4)udevルールを作成

内容はこんな感じ

5)パーミッションを変更して、udevを再起動

6)イメージのダウンロードと検証

以降は、公式サイトの手順の「Flashing instruction」に沿って進めていきます。

まずはイメージのダウンロードと検証です。適当なディレクトリにイメージをダウンロードして、

$ md5sum nakasig-lmy47v-factory-b2d44613.tgz
c30e5d3bd7cef9edde38ce58bf741857 nakasig-lmy47v-factory-b2d44613.tgz

としてファイルの正当性をチェックします。正しいファイルがダウンロードできたら、展開しておきます。

7)イメージの書き込み

Nexus7をPCに接続して、ターミナルから

でリブートさせます。初回はNexus側にUSBデバッグを許可するか表示されますので、「常に許可する」のチェックボックスにチェックを入れてOKを押します。
Nexus側にブートローダの画面が表示されますので、

として、ブートローダをアンロックします。自分の場合は、以前5.0.2から4.4.4に戻した際にアンロックしてありましたので、上記のように「already unlocked」となりました。

引き続きファームウェアアップデートに入ります。当然ですが、端末に保存されている情報はすべて消えてしまいますので、十分注意してください。また、不慮の事故等で端末が文鎮化するかもしれませんので、自己責任で。

完了すると、勝手に再起動します。
最初しばらくは倒れたドロイド君の上に赤三角内に「!」が表示されていて動きがないのでびっくりしますが、しばらくすると画面が変わって起動時の画面(Googleカラーのつぶつぶがぐるぐる廻る)に変わります。この状態が長く(5〜10分位?)続いた後、Welcome画面とともに言語選択する画面に遷移します。

Raspberry Pi 3にAndroidから接続する

Raspberry Pi 3はWiFiを標準で搭載しているのでモバイルルータとAndroid端末があれば、どこでも結線なしでAndroidから接続することができます。(もちろん、Raspberry Pi 3には電源供給してやらなければなりませんが・・・)

アクセスには適当なSSHクライアントとキーボードアプリ(標準のキーボードだとさすがにストレス溜まります)を使えば、簡単です。自分はConnectBotとHackers Keyboardを使っています。

ただし、AndroidはmDNS/Avahi/Bonjourに対応していないのでIPアドレスを直打ちしなければなりません。できればRaspberry Pi 3側はDHCPのままにしたいところ。

そこで、mDNS/Avahi/Bonjourでサービスを探してくれるアプリも必要になります。自分はBonjour Browserというのを使っています。

手順を纏めると、こんな感じです。(Raspberry Pi 3側のWiFi設定はできている前提です)

  1. モバイルルータ、Raspberry Pi 3の電源を投入。
  2. Android側でBonjuor BrowserでRaspberry Pi 3のIPアドレスを調べる
  3. ConnectBotでRaspberry Pi 3にSSHログインする
  4. キーボードをHackers Keyboardに切り替える

これでいつでもどこでもCUIベースの作業ができますw

GUIベースもxrdp(Raspberry Pi側)とaFreeRDP(Android側)で一応接続できているけど、使い勝手はイマイチっぽい感じです。もっとよい組み合わせがあれば知りたいところ。

Raspberry Pi 3をセットアップ

しばらく前に買ったけど動かしてなかったRaspberry Pi 3をセットアップしてみました。

1.ハマったポイント

Raspbianを使ってみたのだけど、32GBのMicroSDだと起動途中にパニックを起こす。2枚のMicroSDで同じ結果。結局、8GBのMicroSDだと問題なさそう。

 

2.設定した箇所

 

1)初期設定

起動すると自動的にグラフィカルログインした状態になるので、コンソールを開いて

でコンフィギュレーション設定する。Expand FilesystemでファイルシステムをMicroSDカードいっぱいまで拡大、Change User Passwordでパスワード設定、Internationalization Optionsでロケールの設定、タイムゾーンの設定、WiFiの国設定を実施して終了する。再起動すると、ファイルシステム拡大が実行される。

デスクトップ環境のMenu→Preference→Raspberry Pi ConfigurationのLocalizetionで日本語キーボードを設定。

パスワードの設定が終われば、リモートログインできる。ネットワークにつないであれば、mDNSとsshデーモンが動いているので、リモートから

とやると、sshでログインできる。(パスワード変更していない場合、初期パスワードはraspberry)

2)画面サイズ

画面サイズがVGAくらいのサイズをFullHDに拡大表示しかされなかったので、HDMIを強制的に表示させることにする。/boot/config.txtを修正。

さらに、オーバースキャン表示を想定しているため、画面周囲が黒枠になって実質的なデスクトップが狭い。液晶モニタでは関係ないので、オーバースキャン対応を禁止する。同じファイルのdisable_overscanのコメントを外す。

これでFullHDにピクセルバイピクセルで等倍表示されるようになった。

3)日本語化

で日本語フォントをインストール。インストール後、デスクトップ環境のMenu→Preference→Raspberry Pi ConfigurationのLocalizetionでLocaleをLanguageをja、CountryをJP、Character SetをUTF-8に設定。OKを押していくと再起動を要求されるので再起動すると日本語になっている。

次の項のアップデート後、

として日本語入力をインストールする。再起動後、右上の「US」を左クリックして「日本語 – Anthy」にすると日本語入力ができる。

4)その他

でアップデートをかけておくと基本的には完了。

でsynapticパッケージマネージャをインストールして、Synapticから好きなソフトをインストールすればOK。
WebブラウザはFirefoxベースのiceweaselとその日本語言語パックのiceweasel-l10n-jaをインストールしました。

ブラウザとしては十分に動きます。Youtubeも720pのビデオも一応再生できるようになりました。さすがにコマ落ちが激しいのと、16bitカラーになっているのか、グラデーション部分にマッハバンドが出ますが。