ARIAのために AnimeJapan 2015 へ行ってきた

2015/3/30

AnimeJapan 2015へ行って参りました。
当初は行く予定ではなかったのですが、松竹ブースにてARIAの新作グッズが販売されるとの知らせを受けまして、無理をしてでも既に入っている予定を消滅させ、行くことにしたのです。

『ARIA The AVVENIRE』公式サイト: 2015/03/05 AnimeJapan 2015出展決定!!

【販売予定物】
○『ARIA The AVVENIRE』クリアファイル(A4サイズ)・・・¥400円(税込)

○特製ポストカードセット3種
『ARIA The ANIMATION』(6枚セット)・・・¥800円(税込)
サイズ:110×160mm

『ARIA The NATURAL』(8枚セット)・・・¥800円(税込)
サイズ:110×160mm

『ARIA The ORIGINATION+ARIETTA』(8枚セット)・・・¥800円(税込)
※(ARIETTA1枚+ORIGINATION7枚になります。) サイズ:110×160mm

 一日目 21(土)
そんなに早く売り切れにはならないと踏んでいたので、会場には9時頃に到着し入場待機列へ。
ファストチケットではないので、展示場内に入れたのは11時頃でした。
真っ先に松竹ブースへ向かい無事確保致しました。

AnimeJapanAnimeJapan

そういえば「たまゆら」って実はまだ見たことないのですが、気にはなっているので時間のある時に見ていきたいと思っています。

AnimeJapanで販売されていたARIAグッズは、コミケットスペシャルでも同じく販売されていたようですね。

Open Web Board のBLE Notification のバグ修正

2015/3/21

KDDIが発表したFirefox OSを搭載した開発ボード「Open Web Board
イメージファイルやソースコードも公開されました。

au Firefox OS 関連技術情報: http://opensource.kddi.com/owb/#download

以前、とあるイベントでOpen Web BoardとBLEデバイスを使ったアプリ開発をしていたのですが、その際にOpen Web BoardのGeckoに独自実装されているBLE GATTのNotificationの値が取れないというバグを発見しました。
現時点(2015.1.23公開)のソースコードでも未修正のようなので、まとめておきます。


ソースコードの取得についてはKDDIのサイトに書いてある通りです。

イメージファイル作成方法: http://opensource.kddi.com/owb/owbsource.html

ビルド環境についてはMDNを参照のこと。私が以前書いた記事も参考になるかもです。
(=>ZTE OPEN C FirefoxOS(B2G)をビルドしてアップデートする2

また、ビルドすると以下のようなエラーで止まってしまうので、Makefileの修正が必要です。

device/rockchip/rksdk/BoardConfig.mk:57: *** 空の変数名. 中止.

コロンとイコールの間にスペースが入ってしまっているだけです。

--- device/rockchip/rksdk/BoardConfig.mk.orig   2015-01-07 14:47:22.000000000 +0900
+++ device/rockchip/rksdk/BoardConfig.mk        2015-03-21 01:20:09.295321600 +0900
@@ -54,7 +54,7 @@
 include device/rockchip/rksdk/wifi_bt_common.mk

 #Bluetooth
-BOARD_HAVE_BLUETOOTH : = true
+BOARD_HAVE_BLUETOOTH := true
 BOARD_HAVE_BLUETOOTH_BCM := true

 #xuxy add

本題のBLEの修正は以下のようになります。(Gist)

--- ./gecko/dom/bluetooth/bluedroid/BluetoothGatt.cpp.orig      2015-03-19 02:05:19.361468298 +0900
+++ ./gecko/dom/bluetooth/bluedroid/BluetoothGatt.cpp   2015-03-19 02:50:24.378295237 +0900
@@ -2922,7 +2922,9 @@
     data_conn_id.AppendInt(mNotifyConnCommPara.connId);

     nsString data_value;
-//    data_value.APpendInt(mNotifyParaData);
+    char strValue[MAX_HEX_VAL_STR_LEN];
+    array2str(mNotifyParaData.value, mNotifyParaData.len, strValue, sizeof(strValue));
+    data_value = NS_ConvertUTF8toUTF16(strValue);

     nsString data_bdAddr;
     BdAddressTypeToString(&mNotifyParaData.bda, data_bdAddr);

以下のAPI仕様によると、Notification のデータは void onnotify(BluetoothGattEvent gattEvent) のパラメータgattEvent.value で DOMString として取得できます。
ソースコードを見ても分かるように、データのバイト配列を16進数文字列に変換しています。
アプリ側でデータを使うにしても、割と泥臭い処理を書く必要がありますね…

Open Web Board / BLEマニュアル API仕様: http://opensource.kddi.com/owb/owbble.html#api

ちなみに、早い段階でOpen Web Boardを入手された方への注意点があります。
BLE APIの名前が navigator.mozBle から navigator.owbBle へ変更されているので、以前のバージョンのサンプルプログラム等を参照されている場合は変更が必要です。
まだ独自実装の段階なので、ベンダープレフィックスがmozからowbへ変更されたのでしょう。

そういえば、以下との兼ね合いはどういう感じなんでしょうかね?

mozilla wiki: B2G/Bluetooth/WebBluetooth-v2

ZTE Open Cのコミュニティビルド

2015/3/12

KDDIから日本初 一般向けのFirefox OS端末「fx0」が昨年末より発売されましたが、新たに契約する気もないので…
未だに手元のFirefox OS機はZTE Open Cです。(あとOpen Web Boardか)

ZTE OPEN C FirefoxOS(B2G)をビルドしてアップデートする1
ZTE OPEN C FirefoxOS(B2G)をビルドしてアップデートする2

以前、ZTE Open C用にFirefox OSのビルドの記事(上記)を書きましたが、良さげな非公式ビルドが公開されてました。
(Mozilla公式のサイトでは無いようです)

Community Builds for the ZTE Open C: http://builds.firefoxos.mozfr.org/doc/en/devices/zte-open-c

現在、v2.1(Beta), 2.2(Aurora), 3.0(Nightly) のアップデートファイルが公開されています。
例のOpen C Upgrade Tool でroot化済みであれば、リカバリモードで update.zip を突っ込めば終わりです。

手順も丁寧に書かれてありますし、手軽にアップデートできそうですね。

最近はいわゆるスマホVRのハコスコGoogle Cardboardで3DCGを見ようとプログラム書いてたんですが、Open Cは deviceorientation イベントが動かないっぽい?
各バージョン試してみましたが、動かんようです…