概要
- Core Time 2用のチップに SiFli SF32LB52J を選定
- オープンソースSDK と豊富なRAMが決め手
- スマートウォッチ開発の 全体像と主要構成要素 を解説
- ハードウェア選定で最重要なのは MCU/無線 と ディスプレイ
- PebbleOSの オープンソース化 を通じた開発促進を目指す提案
スマートウォッチ開発:チップ選定とPebbleOSオープンソース化
概要とシリーズの目的
- YouTubeポッドキャストで フル動画公開、PocketCasts・Spotify・Apple Podcastsでも配信すること
- 本シリーズでは スマートウォッチ開発の手順 を段階的に解説すること
- 初回は MCU/無線チップの選び方 に焦点を当てること
- 今後は ディスプレイや他ハード/ソフトウェア についても順次解説予定であること
- PebbleOSの オープンソース化 を通じて新しいスマートウォッチ開発を促進する提案
スマートウォッチの主要構成要素
- スマートウォッチは 三大要素 で構成されること
- ウォッチ本体(ハードウェア)
- ファームウェア/OS(ソフトウェア)
- モバイル連携アプリ(iOS/Android)
- 消費者向け電子機器設計は 制約最大化 の演習であること
- 目標体験(例:30日連続稼働、常時表示)を定め、仕様に落とし込むこと
- 仕様に基づき ハード/ソフト構成要素 を選定・設計すること
- ハードウェアは 5つの主要システム で分解できること
- マイコン(MCU)+Bluetooth
- ディスプレイ
- センサー・出力(タクトスイッチ、タッチ、マイク、加速度計、スピーカー等)
- 電子部品(基板、バッテリ、受動部品等)
- 機構部品(ケース、ガラス、ボタン、ストラップ、充電ケーブル等)
- センサーやバッテリ等は 選定が容易 だが、MCU/無線・ディスプレイは難易度が高いこと
MCU/無線チップ選定の経緯
- 初代Pebble時代は STM32F2 を採用した背景説明
- 当時は Bluetooth無線非内蔵 だったため、TI CC2564等を併用したこと
- MCUは スマートウォッチの心臓部 であり、CPU・RAM・フラッシュ等を統合すること
- MCU選定が 最も重要な制約最大化点 となる理由
- ソフトウェア互換性、消費電力、コストに直結すること
- 特に ソフトウェア互換性 が最大の難所であり、OSやドライバの移植工数が発生すること
- 開発コストが製品価格に大きく影響するため、 開発しやすさ も重要な選定基準となること
- 24時間Bluetooth接続 が必須であり、MCUの消費電力がバッテリー持続に直結すること
Core Time 2用チップ選定理由
- Core 2 Duoでは Nordic nRF52840 を採用し、 nimBLE (オープンソースBLEスタック)を利用したこと
- Core Time 2では さらなるRAM/性能 が必要となったため、他社チップも検討したこと
- Nordic新製品はRAM不足や価格面で難あり、必要なディスプレイインターフェースも未対応
- Apollo、BES、Dialog等も検討したが オープンソースSDK未提供 が障壁となったこと
- その中で SiFli社 から偶然連絡があり、 オープンソースSDK や開発協力の申し出を受けたこと
- SiFli SF32LB52J の主な特徴
- 512KB以上のSRAM、16MB PSRAM搭載、専用MIPディスプレイインターフェース内蔵
- BLE接続時50μAの極低消費電力、価格は2ドル未満
- 1~2MB SRAMモデルもラインナップ、将来的な拡張性あり
- SDKがGitHubで公開 されており、PebbleOS移植が容易であること
- 結果として Core Time 2のチップはSF32LB52J(1.8V版) に決定したこと
今後の展望・参考リンク
- 次回は ディスプレイ選定 について解説予定であること
- SiFli関連情報
- SF32LB52xリファレンスガイド(GitHub)
- Devkit購入(Taobao、Aliexpress予定)(外部リンク)
まとめ
- スマートウォッチ開発は 制約最大化 の連続であり、 MCU/無線チップ選定 が最重要ポイントであること
- オープンソースSDK と開発協力体制が、今後のPebbleOSベース開発の普及に不可欠であること
- PebbleOSのオープンソース化 による新たなデバイス創出への期待を提案