遅ればせながら、やっと Watchface を作成しました。
ちなみに、Pebble Watchfaceはコレです。【Pebble watchface beats-jp.pbw 9,558 バイト】
※ご利用は自己責任でお願いします。
このWatchface、文字だけで味気ないモノではありますが、JSTとGMT、そして・・・
今やその存在を知っている人もほとんどいない、インターネットタイムを同時に刻む時計です。
インターネットタイムとは、Swatch社が提唱していた、世界共通の時刻系です。
かつてはちょっとした話題になり、CNNのホームページにも表示されていたのですが、2000年を迎えることなく、廃れてしまった記憶があります。
インターネットタイムについては、この辺や、ここいら辺に詳しく記載されています。
で、このインターネットタイムを表示できたのが、Swatch .Beatシリーズというデジタル腕時計。
改めて写真を検索してみると、なかなか格好良い時計です。もう入手は困難な、ビンテージモデルになってしまいました。
なんとなく、インターネットタイムの雰囲気が味わいたくて作ったのが今回のWatchfaceとなります。
備忘録も兼ねて、こいつの製作過程をつらつらと、書き連ねていきます。
初の Pebble Watchface なワケですが、実はARMプロセッサーを扱ったのも、今回が初めてです。
タイトルのEABIとは、ARMプロセッサの Application Binary Interface のコト。
軽量で効率的、浮動小数点演算も高速といわれているバイナリです。
Pebbleのアプリケーションは、このEABIバイナリで構成されています。
EABIのバイナリを作成するには、EABI用のツールチェインを使用してソースコードをコンパイルする必要があります。その辺のクロスコンパイル環境の構築は、以前記載した、Pebble SDK のインストールを、手順通りにしておけばOK.
以降は、Pebble SDK がインストールされている事を前提に書いてます。
1) Watchface作成のプロジェクトを生成します。
プロジェクトの生成は、Pebble SDK のツールが活躍します。
私の場合、PebbleKitは、”~pebbledev/PebbleKit-v1.1/” に配置しています。
また、Watchfaceは、 ”~pebbledev/pebble-prj/”配下に作っていく感じです。
今回のプロジェクト名は、”beats-jp” です。
プロジェクトの生成は、「create_pebble_project.py△SDKのパス△プロジェクト名」のようにコマンドを実行します。
(補足:上記コマンド入力例の’△’部分は半角スペース)
create_pebble_project.pyとは、Pythonで書かれた、プロジェクト生成スクリプトです。では実行。
~/pebbledev/PebbleKit-v1.1/Pebble/tools/create_pebble_project.py ~/pebbledev/PebbleKit-v1.1/Pebble/sdk beats-jp
こいつを実行すると、beats-jpフォルダが生成され、その中には、Buildに必要な各種シンボリック、プログラムソースの雛形などが生成されます。SDKへのパスを間違えると、wafというツール実体へのシンボリックも間違ったパスを見るため、動作しなくなるので要注意。
次に、プロジェクトの初期設定をします。生成したフォルダにおります。
今回の場合、”~pebbledev/pebble-prj/beats-jp”をカレントディレクトリとして、以下のコマンドを入力
./waf configure
※ちなみに、Buildは、同じフォルダで
./waf build
これでコーディングの準備が整いました。
と、ここまで書いて眠くなってきてしまったので、続きは別エントリーで。
今回のソースは GitHub にアップしてあります。
https://github.com/ZIEYA/pebble-prj
beats-jp というフォルダがそれです。