Firefox OS Advent Calendar 2015

12月16日 Firefox OS 端末つくりたい

Firefox OSと関係性が薄くなってしまいましたが、いちFxOS好きの物語として、御了承下さい。

その報道は、2015年のFirefox OS Advent Calendar中に突然舞い込んできた...。

Mozilla Will Stop Developing And Selling Firefox OS Smartphones

( ゚д゚) ・・・ 
  
(つд⊂)ゴシゴシ 
  
(;゚д゚) ・・・ 
  
(つд⊂)ゴシゴシゴシ 
 _, ._   
(;゚ Д゚) …!?

au涙目? Firefox OS搭載スマホの打ち切りをMozillaが発表…

ガ━━━━(;゚д゚)━━━━━ン 

Mozillaが「Firefox OSのスマートフォン向け展開を終了」と発表、リリースからわずか2年でFirefox OSスマホは消滅することに

。・゚゚(ノД`)・゚゚・。 ウワ〜ン

そんな私に、一筋の光が…

Firefox OSの開発は打ち切りも終了も中止もしていません。


そうだ…そうですよね。
キャリアさんからの携帯電話としての発売は中止されても、Firefox OSの開発は続くのですよね。
またいつか かわいい端末が作られて、触ったり遊んだりできるのですよね。(自己暗示)

モバイル端末好きの苦悩

とは言え、モバイル端末好きの私は、実際に触れたり遊んだりできる実機が大好きです。
実機なら、お外に持ちすことも、実際に使ってみて実感することもできるからです。

現在の私は、Flameも持っていますが、小さめの端末がかわいくて好きなので、 ZTE OPEN がお気に入りとなり、Ver.2.0 のカスタムROMを入れてあげて使っています。


でも次の実機が販売されるまで、どうしのぎましょう…。

    |     
\  __ /       
_ (m) _ピコーン
   |ミ|           
/  `´ \        
そうだ、raspberry pi があるじゃないか!
タッチディスプレイを装着すれば、モバイルバッテリーにつなげてお外でも使えるぞ



raspberry pi2 と PiTFT タッチディスプレイを購入

早速、週末に秋葉原に行き、raspberry pi2 と PiTFT 3.5" タッチディスプレィを購入しました。


Raspberry Pi2
raspberry pi2


PiTFT Plus 480x320 3.5" TFT+Touchscreen
adafruit PiTFT


PiTFTの箱には説明書が入っていません。

でも、あわてずあせらず基盤の型番プリント(製品名)から、販売元を探してマニュアルをダウンロード。



マニュアルには、「タッチディスプレイを使うにはドライバ組み込み済の raspbian イメージを使うと簡単です。」とあったので、 ダウンロードした raspbian イメージをノートバソコンで micro SDカードに書き込みました。


    イメージの書き込み手順
  1. 2015-09-24-raspbian-jessie-pitft35r.zip からイメージ圧縮ファイルをダウンロードします。
  2. ダウンロード・ファイルをzip展開して、ドライバ組み込み済の raspbian イメージ 2015-09-24-raspbian-jessie-pitft35r.img ファイルを取得します。
  3. イメージ書き込み準備として、パソコンのSDカードスロットのファイルシステム名を df コマンドで調べます。
  4. dd コマンドを使って、調査したファイルシステム(SDカード・デバイス)に raspbian イメージを書き込みます。

SDカード・デバイス確認
1
2
3
4
5
6
7
8
9
10
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev            3.8G  4.0K  3.8G   1% /dev
tmpfs           777M  1.2M  776M   1% /run
/dev/sda5       427G  297G  109G  74% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none            3.8G  152K  3.8G   1% /run/shm
none            100M   40K  100M   1% /run/user
/dev/sdb1        15G   32K   15G   1% /media/robo/0403-0201

SDカードを PC に挿入して、どのファイル・システムに割り当てられているか上記のコマンドで確認します。
どうやら私の環境では /dev/sdb1 に SDカードが割り当てられているようでした。


SDカードへのイメージ書き込み
1
2
$ sudo dd bs=4M if=./2015-09-24-raspbian-jessie-pitft35r.img of=/dev/sdb
$ sudo sync

dd コマンドで、SDカード・ドライブにイメージを書き込みます。
SDカード・ドライブ全体に書き込むよう、調査したファイル・システムから末尾のパーティション番号を外しています。
sync コマンドは、遅延書き込みをフラッシュさせるよう念のために実行しています。

【注意】
私のPC環境は、Ubuntu 14.04 LTS 64bit ですので、サンプル内容も Linux 用になっています。
他の環境の方、ごめんなさい。



3.5"タッチディスプレイで raspbian を起動

ドライバ組み込み済の raspbian イメージを書き込んだ mini SDカードを raspberry pi に入れて、 電源となるmicro USB ケーブルをつなぐと無事に raspbian が起動しました。
暗くてよく見えませんが、電源のUSBケーブルだけでなく、USBキーボードやUSBマウスも繋がっています。


Raspbian
raspbian

本体とタッチディスプレイが機能することを確認できましたので、 これでやっと本編の raspberry pi での Firefox OS 起動作業に移れます。


Foxberry Pi Demo

raspberry piで、firefox os を起動するにあたり、先ずは mozilla wikiのFoxberry Pi Demoに挑戦です。
Foxberry Pi Demoにある、 Firefox OS demo filesをダウンロードして、ブートイメージを作ることにします。

それでは、いざダウンロード

ffos-rpiバイナリ・イメージ
ffos-rpi-04-img
イメージファイルが、なくなっている...。


Hacking b2g on Raspberry Pi

気をとりなおして mozilla wikiのHacking b2g on Raspberry Piに挑戦してみることにします。
詳細については、去年の Firefox OS Advend Calendar 12月03日を担当された水城珠洲さんのブログ投稿 RaspberryPiでFirefox OSを動かしてみた が詳しいですよね。

ビルドしている時間もないのでHacking b2g on Raspberry PiFirst download the buildで紹介されているバイナリ・イメージを利用することにします。

ffos-rpiバイナリ・イメージ
ffos-rpi-04-img
1年前から更新されていない...。


「こまけぇことはいいんだよ」と自分に言い聞かせて、イメージをSDカードに書き込んでみましたが、
残念なことに私の環境(raspberry pi 2と、pi2 用の PiTFTのため?)では、firefox OSが起動してくれませんでした。
SDカードへの書き込みは、別々のカードで2回行いましたが、電源ON時のSDカード・アクセスも発生せずブートに失敗しているようです。
調査する時間がないので Firefox OSの起動は、一旦保留にしておくことにしました。

raspbian版の Firefox をインストール

raspbian にはパッケージ管理システム(apt)があり、iceweaselという raspbian 版の Firefox もあるそうなのでインストールしてみます。


iceweasel インストール

1
2
$ sudo apt-get update
$ sudo apt-get install iceweasel

1.でパッケージデータベースを更新(最新化)して、2.でインストールしています。
ネット接続が必要なので Ether net cable か Wi-Fi USBドングルが必要です。

iceweasel
ffos-rpi-04-img


WebIDEに Firefox Simulator が…

iceweaselのメニューの中に WebIDEの文字が!
さらにWebIDE中のメニューには、Firefox OS シミュレータがあるじゃないですか!


WebIDE
WebIDE


Firefox OS Simulator menu
Firefox OS simulator


シミュレータを起動させてみるとエラー
simulator error

よろこんだのもつかの間、やっぱりシミュレータの起動は無理でした。


Firefox Marketplaceで少し幸せに

iceweaselのメニューには、Firefox Marketplace も入っています。
そして Marketplace の Firefox OS カテゴリのアプリの中には、iceweasel にインストールできるものもありました。
Web標準技術でできている Firefox OS/Firefox OS アプリならではの結果ですね。


Firefox Marketplace
firefox marketplace


iceweaselにインストールできたFirefox OSカテゴリのゲーム
game Air Fight


結び

触りだしてから2〜3日では、raspbery piで Firefox OS を起動させるのに足りないという当然の結果となりました。
ですが、全てWeb技術で出来ている Firefox OS / Firefox OS アプリは、run any wher の理想を体現していることを感じさせてもらえたと思います。
Firefox OS の起動はできませんでしたが、raspberry pi は携帯できるコンピュータの夢を見せてくれるに十分なデバイスです。

みなさん、技術的な成果が書けなくて、ごめんなさい。

このページは、勉強のため html5-boilerplate を基に手作業で作成しました。