Thursday, April 23, 2015

Garmin Vivoactiveレビュー (+カスタムアプリ製作レビュー)

さてさて、Apple Watchに潰されるかと奮闘するがごとく、スマートウォッチ方向に大きく舵を切った新製品群がGarminからでてきてますが、その中でもVivoactiveは軽くて安めで一番の売れ筋なので、残念なFenix2の代替として試し買いしてみました。

ざっと試してみた感触では、特筆すべきはやはり、
  • 軽い!
  • 時計表示もカスタムアプリ開発で自由自在に作成可能 (※作ってみた)
  • バッテリー残量表示も%単位で表示可能、バッテリーの保ちも良好

  • といったことかと思います。安っぽい感じの作りだが、意外にも50m防水なのもイイ!

    反面、気になった事もあり、例えば:
  • コントラストはものすごく低い、見にくい
  • 時計はGPSと連動できない
  • 時計表示のカスタムアプリでは秒表示しない(バッテリーセーブのためにすぐにSleep modeに入り、秒毎の表示更新はしなくなる)
  • プラスチック主体で軽い反面、ぶっちゃけ安っぽい、おそらく原価はかなり抑えられてる
  • デュアルクロック機能は?

  • といったことがあげられます。

    スマートウォッチとしての機能:
  • iPhone/Androidと連携し、天気予報やカレンダー通知
  • ライフログ: 移動距離とかカロリー計算
  • 様々な時計表示やカスタムアプリが開発/ダウンロード可能 ()

  • といった部分ですが、まあ天気予報みたいなのは、確かに(iPhone出さなくていいから)便利ではありますが、そもそもあまりにしょっちゅう時計画面を頻繁に見るようなライフスタイルはどうか、という部分がありますので、期待しすぎるのはよくないかもしれません。

    ライフログは、ぶっちゃけ、今日は運動してないなあ、みたいなことを実感する程度のものです。それでもまあ、レコーディングダイエット効果というか、意識させられるだけでも運動しようという気持ちが起こりやすくなるので、あって困るものではないかとおもいます。

    で、個人的にはカスタム時計画面およびカスタムアプリが最大のメリットのように感じます。プログラマブルな腕時計、なんて今までほとんど無かったというか、かなり画期的なことのように思えます。



    という訳で、実際にいくつか作ってみました(笑)。
    (※下記に写真アリ)

    ここからは技術的/専門的な話になります。。。

    開発言語
    Javascript的な簡易スクリプト。JavaやPythonを採用しなかった理由は動作環境がどうしても重くなるからだと思われる:多彩なライブラリや言語機能は動作環境の負担が大きい。
    言語としてはかなり簡素なため、動作は軽く、また、学習・習得も結果的に容易。ライブラリ仕様もほぼ必要最小限で悪くない。

    開発環境
    Win/MacOSX。しかし、WinXPでもシミュレータが動かなかったり、MacOSXも10.7では動かなかったりと、成熟度が低い。また、フォントの大きさがシミュレータと実際の機器で違ったり、フォントのアラインメントが甘いため、画面レイアウトを詰めるのに困難がある。カスタムアプリでは利用できないフォントがある。

    動作環境
    成熟度はまだまだの段階。OSリブートやメモリリーク、バッファーオーバーランといった問題も残っており、また、ライブラリ機能も不十分なところが一部ある。あと、RAMサイズ等の制限は厳しい。実機でのデバッグ手法がまだほとんどないため、アプリがクラッシュする原因追及といったデバッグが困難。

    拡張可能な機能
    アプリ関連のライブラリ機能が不足気味に見える。例えば、アクティビティスタート/ストップはできるが、ストップしたら、再継続できない(pause -> resumeができない)。よって、オートポーズは実装不可能。オートラップやラップ単位の計測は自前で実装する必要があるが、コードサイズが大きくなりすぎるとRAM不足で動作不良を起こす可能性もある。

    実例
    とりあえず表示できそうなデータは全部グラフ化させてみた(^^;
    詰め詰めの画面、、、


    試しに逆にシンプルにカレンダ表示、、、サイズ的にギリギリ月表示できた!

    (ちなみにもう一個トレーニングアプリも作ったけど、ポーズ状態から継続できない現SDK仕様には納得いかないので、没状態。。。)

    という訳で、今まで「選ぶ」だけだった腕時計表示が、それをゼロから自分で好きなように作れる、という快感はiPhone/iPadのSDKの自由度のすばらしさを味わったときの感じに似ていてとてもイイものです(^^) それこそSwatchみたいなオシャレな見かけでも、ダイバーズウォッチみたいなものでもできるわけなので。

    それに別に自分で作らなくても、人が作ったもので気に入ったものをダウンロードすればいいので、自由度は十分大きいです。ただ惜しむらくは、コントラストがかなり低いので、見栄えがいまひとつ、、、で、秒表示できないのも残念。個人的にはApple Watchにはそれほど興味でないというか、Garminでいいよ、という気にはなります、安いし(^^;
    あえてApple Watchと比較するなら、バッテリー持続時間、防水性能、価格、トレーニング機能の成熟度でアドバンデージがあるかと思います。

    なんだか、ランニング/バイク用GPS腕時計というより、次の段階(スマートウォッチ)の製品という印象が強いです。やはり会社として危機感があるんでしょうね、iPhone/AppleWatchときたら、Garminの製品は全体的にかなり打撃を受けるので。Garminは全般的にクオリティが今ひとつながら、攻めの姿勢を崩さないところはいいですね、日本勢もCASIOあたりには頑張ってほしいんですが、、、

    Garmin Fenix2レビュー

    今更ながら、Garmin Fenix2のレビューです。

    以前から使ってたFR610が、他の機種同様ベルトがとれてしまったので、スペアベルトを買ったらこれがなんと合わない! どうやらベルト接合部の規格がFR610では変わっており、初期のものにはつけられないことが判明。。。

    FRシリーズはあまりに問題が起こりすぎるので、この際だからとGarmin Fenix2を買ってみました。FRシリーズとは別のチームが開発しているともいうので、試してみようと。

    が、今度はこれがソフトウェア面で予想外にかなり出来が悪かったのでした。。。具体的には:

  • コントラストが低く、暗がりでかなり見にくい
  • 結構な頻度でフリーズする
  • ANT+ sensorはそれぞれ一つしか登録できない。複数の自転車にANT+センサをつけてる場合、いちいちセンサ登録し直す必要がある
  • センサ検知を一つずつ行う。。。HRモニターを検知した後、バイクセンサ検知、それが終わってからやっとGPS検知、それが終わってから初めてスタート画面が表示される。よって、トレーニング始めるまで異様に時間がかかる
  • トレーニング終了後に内容詳細表示させようとすると、いちいちFITデータを読み直すためか、数分とかかかる
  • 内容詳細画面は縦スクロール式だが、残像がきつい上にスクロールが遅い
  • 内容詳細画面のスクロールが、いちいち途中でフリーズする。スクロール先の画面ビットマップデータを一定サイズ毎に作成するたびにフリーズしてる感じ?
  • Sleep mode状態の時、最初の一回はlightボタンが効かないことが多い。sleep modeから復帰しないと効かないとか?


  • ...ととにかく、まっとうな製品とは思われないほど使い勝手が悪いのでした、Fenix3では少しはマシになってるかとは思いますが。。。ついでに、今見るとなんとウレタン性ベルトが切れかけている、、、Garmin製品はほんとに脆弱だなあ。

    なんだかんだいっても、FRシリーズのチームの方が成熟した製品を作っているように思います。Fenix2はとても多機能ではあるんですけどね。

    次に買うならFR620かその後継、と思ってましたが、Garminはここにきて、Smartwatchとして先手を打ってきましたね、というわけで次の記事でVivoactiveについて書きたいと思います。

    追記:
    Garmin Forumによれば、Fenix3も同じくアウトドア部門チームによる開発だそうですが、ソフトウェアのコードベースはFRチームと共通化され、というよりFR920XTと同じコードベースになったようで、上記の多くの問題は解決され、動作もきびきび動くなったらしいです。要は、ソフトウェア的にはConnect IQサポートを搭載した同世代のものとなります。