手元の HTC One (M7_UL) を完全に Google Play Edition にする
今更なんですが、手元の HTC One (M7_UL) を Google Play Edition にしてみようと思いました。
というのも、そろそろ、 Android 5.0 (Lollipop) の OTA が来るらしいので、今、GPEにしておけば、直ぐにアップデートできるんじゃなかろうかという思惑もあるからです。
何か、既に Google からストップがかかっているらしく、少し遅れているらしいですけど・・・。
基本的には、下記の記事に従っています:
とりあえず、ここでは、 Android SDK とか adb については説明しません。適当にインストールしてパスが通っていることが前提です。
S-OFF する
完全に Google Play Edition のふりをするためにはいろいろと弄らないといけないんですが、これには S-OFF (Security Offかな?)しないといけません。
adb が繋がっていれば(そして繋がっている Android デバイスが1台だけならば: 誤爆とか防ぐためにも作業対象の Android 端末以外は全部、外しておくべきです)、
C:\work>adb reboot-bootloader
とやれば、 HTC One がブートローダーモードで起動します。ここで、ボリュームキーで、 FASTBOOT を選択して、電源ボタンでモード変更します。
で、ここで、 fastboot というコマンドが使えるようになるはずです。
試しに、次の様に打ってみましょう:
C:\work>fastboot getvar modelid modelid: PN0710000 finished. total time: 0.004s
なんですが、 Windows 8/8.1 だと反応がない状態になると思います。そういう人は、
を参考にして頑張ってください。
あとは、 revone とか moonshine とか rumrunner とかをダウンロードしてきて、実行すれば、ほぼ自動でS-OFFできますので頑張ってください。
modelid を書き換える
さて、既に最初の記事の内容を無視しますが、ここで提供されている ROM (RUU-HTC_One_GE-2.14.1700.15.zip っていうファイル)が PN0712000 という modelid を前提にしています。
僕の持っている M7_UL だと、PN0710000 なので、最初に modelid を PN0712000 に書き換えないといけません。これには次の記事を参考にします。
PL83IMG.zip をダウンロードする
最初に下記のファイルをダウンロードします。
このファイルは、 modelid を書き換えるための一時的なROMとなります。
PL83IMG.zip を展開して、 android-info.txt を書き換える
PL83IMG.zip を展開すると、中に、android-info.txt というテキストファイルがあるのですが、コレの中の、 modelid, cidnum, mainver を現在の環境に合わせて修正します。
これら(modelid, cidnum, mainver)の値は、それぞれ、 fastboot getvar で取得します:
C:\work>fastboot getvar modelid modelid: PN0710000 finished. total time: 0.004s
C:\work>fastboot oem readcid ... (bootloader) cid: HTC__001 OKAY [ 0.013s] finished. total time: 0.013s
C:\work> fastboot getvar mainver mainver: 2.24.401.8 finished. total time: 0.003s
僕の場合は、 modelid=PN0710000, cidnum=HTC__001, mainver=2.24.401.8 でした。
なので、 android-info.txt を
modelid: PN0710000 cidnum: HTC__001 mainver: 2.24.401.8 btype:1 aareport:1 hbootpreupdate:12
のように書き換えます(改行コードはLFであることに注意)。そして、そのまま、android-info.txt, HBOOT.nb0 を圧縮して、ZIPを作り直します。ここでは、 PN0710000.zip という名前にしました(zipの名前は何でも良い)。
rebootRUU
ROM 書き換えモードに切り替えます。
C:\work>fastboot oem rebootRUU ... (bootloader) Start Verify: 0 OKAY [ 0.047s] finished. total time: 0.049s
切り替えが終わると、 HTC のロゴの画面になります。
ROM 書き換え
さっき作ったファイルで ROM を書き換えます:
C:\work>fastboot flash zip PN0710000.zip sending 'zip' (475 KB)... OKAY [ 0.246s] writing 'zip'... (bootloader) zip header checking... (bootloader) zip info parsing... (bootloader) checking model ID... (bootloader) checking custom ID... (bootloader) start image[hboot] unzipping & flushing... (bootloader) [RUU]UZ,hboot,0 (bootloader) [RUU]UZ,hboot,43 (bootloader) [RUU]UZ,hboot,99 (bootloader) [RUU]UZ,hboot,100 (bootloader) [RUU]WP,hboot,0 (bootloader) [RUU]WP,hboot,100 (bootloader) ...... Successful OKAY [ 2.227s] finished. total time: 2.477s
一度リブート
書き込んだ ROM を有効にするために、一度、再起動します。
C:\work>fastboot reboot-bootloader rebooting into bootloader... OKAY [ 0.036s] finished. total time: 0.038s
再起動後の画面がバグってないっていうと嘘ってぐらい恐ろしいことになるけど、気にしなくて良いです。
modelid の書き換え
恐ろしい画面のままでも、 fastboot は使えるはずなので、
ここで、 modelid を書き換えます。
C:\work>fastboot oem writemid PN0712000 ... (bootloader) Start Verify: 0 OKAY [ 0.079s] finished. total time: 0.080s
念のためにチェック:
C:\work>fastboot getvar modelid modelid: PN0712000 finished. total time: 0.004s
マジで modelid が書き換わってる。
cid の書き換え
同じように cid も書き換えます。
C:\work>fastboot oem writecid GOOGL001 ... (bootloader) Start Verify: 0 OKAY [ 0.018s] finished. total time: 0.019s
こっちも念のためにチェック:
C:\work>fastboot getvar cid cid: GOOGL001 finished. total time: 0.004s
Google Play Edition の ROM を焼く
これでやっと書き換えたい先の ROM に書き換えられます。
Google Play Edition事態の ROM は下記からダウンロードできます:
https://mega.co.nz/#!3cwxzAoR!cNNlvVTqzO1wTnmZLytV2mIHtrtOOFXGMyMQjH-KsIo
でこれを fastboot flash zip で書き込みます:
C:\work>fastboot flash zip RUU-HTC_One_GE-2.14.1700.15.zip sending 'zip' (467625 KB)... OKAY [ 17.247s] writing 'zip'... (bootloader) zip header checking... (bootloader) zip info parsing... (bootloader) checking model ID... (bootloader) start image[hboot] unzipping for pre-update check... (bootloader) start image[hboot] flushing... (bootloader) ...... Successful FAILED (remote: hboot pre-update! please flush image again immediately) finished. total time: 18.321s
ここですかさず、もう一度、同じコマンドを実行!
C:\work>fastboot flash zip RUU-HTC_One_GE-2.14.1700.15.zip target reported max download size of 1526722560 bytes sending 'zip' (467625 KB)... OKAY [ 19.929s] writing 'zip'... (bootloader) zip header checking... (bootloader) zip info parsing... (bootloader) checking model ID... (bootloader) checking custom ID... (bootloader) start image[adsp] unzipping & flushing... .....<省略>.... (bootloader) [RUU]WP,radio,100 (bootloader) ...... Successful OKAY [181.350s] finished. total time: 201.282s
あとは、デバイス側にブートローダーの画面が出てくるので、 REBOOT を選んで再起動すればうまく行くんじゃないでしょうか。
おしまい!あとは、何度もOTAで降ってくるアップデートをこなすだけの簡単な作業です。
2度目のコマンド入力が間に合わないと・・・・
画面が真っ暗になって・・・・何にも反応がなくなります・・・・・うきゃー
じゃなくて、とりあえず、電源とボリューム下長押しで再起動させます。
そうすると、 HBOOT の画面が表示されますので、ここで、 実機の画面で、FASTBOOT を選択して、 fastboot モードに切り替えます。
そうして、もう一度、ROM 書き換えモードに切り替えます。
C:\work>fastboot oem rebootRUU ... (bootloader) Start Verify: 0 OKAY [ 0.047s] finished. total time: 0.049s
今度こそって気持ちで、 ROM のアップデート:
C:\work>fastboot flash zip RUU-HTC_One_GE-2.14.1700.15.zip
でどうにかなります。テレビとか見ながらやってるとビックリすることになります(自分)。
Intel Edisonで遊ぶ
全然まとまっていません。
自分用の作業履歴的な状態です。
一言で言うと、この大きさでメモリ1GB、x86 Linuxが動いて、Wi-Fi, Bluetoothも使える。
gcc/g++も動くよんという。遅いけど、いろんな物をセルフビルドも出来る。
最初の起動
8 J16 をUSBで接続
Edisonに給電する。J21とか、J2でも給電できるが、今回は、マスストレージでマウントしたいので、いずれにしてもJ16を接続する。
8 J3 をUSBで接続する
Windows 8.1だと、シリアルのドライバは自動インストールされる。
Edison に接続
putty とか、 poderosa とか、あるいは、 TeraTerm などお好きな物でどうぞ。
COMポートとかあんまり使ってないマシンの場合は、COM3になってることが多いようです。(デバイスマネージャで、 USB Serial Port という名前のポートを探してください)
注意点としては、接続スピードを、 115200 にすることだけ。他のパラメータは弄る必要なし。
[Enter]を何回か叩いたらログイン画面が出るので、 root でログイン、初期状態ならパスワードなしのはず。
configure_edison --help でいろいろと分かる。
usage: configure_edison [-h] [--server] [[--setup | --name | --password | --wifi] [--showWiFiIP | --version | --latest-version | --upgrade | --disableOneTimeSetup | --enableOneTimeSetup | --flash <version> [<release name> ...] | --showNames] optional arguments: -h, --help show this help message and exit --server Starts the server (testing only) --setup Goes through changing the device name, password, and wifi options --name Changes the device name --password Changes the device password --wifi Changes the wifi options --showWiFiIP IP address associated with the wireless interface --version Gets the current firmware version --latest-version Gets the latest firmware version --upgrade Downloads the latest firmware --disableOneTimeSetup Disable one-time setup and WiFi access point --enableOneTimeSetup Enable one-time setup and WiFi access point --flash <version> [<release name> ...] Downloads and flashes an image --showNames Show device name and SSID
ログイン出来たら、 マシン名とか、Wi-Fiを設定しよう。
configure_edison --setup
これで、ネットワーク越しにsshできるようになる。Edisonでは、mdns(Bonjour/Zero Configuration)が動いているようで、
名前を、 hogehoge にしたら、
slogin root@hogehoge.local
で接続できるようになるはず。
opkg
Edisonは、opkgでパッケージ管理をしていて、install/update/upgradeといったコマンドで簡単にパッケージをインストールしたりできる。
ただ、標準状態では、いろいろと困るので、参照するリポジトリを設定する。
http://nonnoise.github.io/Edison/#id5
が参考にはなりますが、結論だけ書くと、/etc/opkg/下に、
base-feeds.conf:
src/gz all http://repo.opkg.net/edison/repo/all src/gz edison http://repo.opkg.net/edison/repo/edison src/gz core2-32 http://repo.opkg.net/edison/repo/core2-32
intel-iotdk.conf:
src intel-iotdk http://iotdk.intel.com/repos/1.1/intelgalactic src intel-all http://iotdk.intel.com/repos/1.1/iotdk/all src intel-quark http://iotdk.intel.com/repos/1.1/iotdk/quark src intel-i586 http://iotdk.intel.com/repos/1.1/iotdk/i586 src intel-x86 http://iotdk.intel.com/repos/1.1/iotdk/x86
みたいな感じで*.confファイルを作成して、その中に参照するURLを記述していけばOK。
これをやった後に、
opkg update opkg upgrade
とすると、いろいろとアップグレードされる。
欲しいパッケージをインストールするときには、
opkg list
とかで利用できるパッケージ一覧を眺めてから、
opkg install bash
などとやれば良い。
Edisonのファームというかシステムを最新にする
僕のEdisonは、最初、 edison-weekly_build_56_2014-08-20_15-54-05 だったんですが、新しいファームウェアだと、
configure_edison --upgrade
でもアップグレードできそうです。
configure_edison 自体が古くて出来ない場合は
https://communities.intel.com/docs/DOC-23192
に書いてある方法でアップグレードできます。いろいろと書いてあるけど、やることは簡単:
Edison Yocto complete image をダウンロードする
https://communities.intel.com/docs/DOC-23242
ここから、 Edison Yocto complete image をダウンロード。 zipを展開して、Edisonのストレージ上に展開する。ストレージの直下にそのままファイル群が展開されるようにする。
※画像は上記サイトからの引用です
そして、ターミナルから次の様に入力する。
reboot ota
これで、OTAモードでリブートする。
しばらくすると、ストレージにコピーされたファイル群を認識して、自動的にアップグレードが始まる。
この辺は、sshより、シリアルコンソールからやった方が良いと思う。
ネットワークは途中で切られるので、何が起きているのか把握しにくい。
電源
電源は、USBから取れるので、別にポータブルバッテリーでも何でも利用できるんですが、小さいLi-Po使いたいという人のために。
Edisonは、普通のLi-Po (3.7V)で駆動できるようになっているだけでなく、実は、100mAでの充電にも対応しており、300mAH以上の容量のもの使えとあります。
なので、僕が使っているのは、次のバッテリーです:
- SFE-PRT-10718 リチウムイオンポリマー電池400mAh
http://www.switch-science.com/catalog/821/
ただ、直接結線すると後が面倒そうなのと、スイッチも付いていると便利なことを考えて、次の部品も使っています:
http://www.switch-science.com/catalog/1776/
1.48Whもあると、Edisonは、最大1Wらしいので、最低でも90分ぐらいは稼働するのではないかと。正確なところは、電力消費を計ってみないとわかりませんが。
Xperia Z2 Tablet は以外と小さい
今日、初めて気づいたことなんですが、 Xperia Z2 Tablet は、milesto の小さいポーチ?メッセンジャーバッグ?って奴に入ります。
ジッパーは閉まらなくなるわけですが、防水ですし、中に極端に小さな物を入れない限り、あんまり困らないのかなぁと思いました。
僕みたいに、傷を気にせず、道具として利用しようっていう感覚の人間なら、このバッグに、デジカメ、スマフォ、Xperia Z2 Tabletっていうのでも全然悪くない感じだと思います。
Surface Pro 3のタイプカバーは撥水加工
さすがに、タッチカバーみたいにラバーじゃないので、キーボード側にコーヒーとかをこぼすとどうなるのかは不明ですが、裏側なら、
何ともありません。
拭き取ればコーヒーの匂いすら残りません!
Surface Pro 3用のUS配列タイプカバー入手
やっと届いたよん!
転送業者を使う
僕は、US配列信者ですので、実のところ、PCの調達には特定のメーカーを使わざるを得ないという問題があります。Lenovo, Apple辺りは問題無くUS配列が選択できますが、SonyというかVaioは最近、残念ながら方針転換してしまったようです。
ということで、Surface Pro 3のタイプカバー(US配列版: RD2-00077)をどうにかして入手したかったのですが、今回は、スピアネットの転送サービスを利用しました。
金額としては、
キーボード(RD2-00077) | $129.99 |
Amazonの業者の配送料・手数料 | $8.74 |
スピアネットの送料(宅配:日通) | $22.00 |
スピアネットの手数料 | $9.00 |
合計 | $169.73 |
ぐらいです。レートにもよりますが、クレジットカードだと、18000円ぐらいでしょうか。安いのか高いのかは・・・。日本のAmazonに出品している業者だと、24000円ぐらい、ebayだと、20000円強ぐらいでした。まぁ、いろんな手間との天秤です。
で、USでもタイプカバー自体はかなり品薄の様で、Amazon.comでポチったのが、7/20(PST)、出荷されたのが、7/24(PST)、スピアネットの倉庫に届いたのが、7/30(PST)です。
つまり、US内だけで、10日もかかってる。
スピアネットでの手続きは直ぐに行ったので、荷物は、8/1(PST)にはポートランドの空港に。手続き後、8/2 14:04(PST)には飛行機に搭載され、8/3 16:09(JST)には成田に来ました!
・・・で、日通のいつものパターンですが、成田で2泊ほど。Lenovoとかでも同じ奴を良く食らいます。東京の我が家に届いたのは、8/6 12:45(JST)です。早いのか遅いのか。
転送はトラブルがなければ十分に早いのです。悪いのは日通ですが、これは安いから仕方がない。EMSとかPMIだと、日本に届いてからが早い「可能性」があります。(税関の手続きとかはいろんな事に影響するので必ずしも早いとも言えない。)
さてさて
Microsoft直販限定(?)の赤です。
カワイイです。キーを叩くと、下が空洞なのでペコペコですが、意外と悪くない打ち心地です。また、タッチパッドの感度は素晴らしく、Macbook Airとかにも劣らないというのは言い過ぎかも知れませんが、悪くないです。少なくとも、ThinkPad X1 Carbon (2014)よりも良いです。
以下、今更レビューしてもしょうがないんですが、これだけは自分のためにもメモしておきたいことを書いておきます:
ファンクションキーが普通に使えるようにする
例えば、デフォルトでは、[F1]を押すには、[Fn]+[F1]ですが、[Fn]+[CapsLock]を押すと、[Fn]の状態がトグルされます。
タッチパッドのタッチによるクリックをOFFにする
これ、ぱっと見、どこでやるのかわかりません・・・。一番下の、「入力中に誤ってカーソルを動かさないように、タップを無効にするか、タップが作動するまでの待ち時間を変更します。」ってやるのドロップダウンの中に、「タップの無効化」というのがあります。
ちなみに、この画面に行くためには、個人的には、Windows 8.1の検索を使うのが一番早いと思います。