はじめに
Hondaはモビリティをもっと便利で楽しくするために、さまざまなデジタルプロダクトを開発しています。
- 車に搭載された Android Automotive OS 上で動くアプリ
- CarPlay、Android Auto で車のディスプレイに投影して使うアプリ
- 車やバイクとスマートフォンをつなげて使うコンパニオンアプリ
これらのプロダクトを知っていただくために、国内の技術カンファレンスにも積極的に出展しています。
今回初めてiOSDC Japan 2025に協賛してブース出展しました。
ブースでは来場者の皆さんに楽しんでいただけるよう、ラジコンを使った縦列駐車ゲームを用意しました。
スマートフォンをコントローラーとして操作し、Bluetoothで制御しているラジコンを縦列駐車させるゲームです。
シンプルな操作ながら、正確さとスピードが求められるちょっと難しいゲームです。
このラジコンは以下の要素で制作しています。
- ラジコンのボディ
- with Emile(エミル)を3Dプリンターで印刷して塗装
- iOS用のコントローラーアプリ
- SwiftUI
- CoreBluetooth
- CoreMotion
- ラジコン側のBluetooth制御
Embedded Swift
マイコンや組込みシステム向けに Swift を使えるようにする技術、フレームワーク、ツール周りの集合体を “Embedded Swift” と呼ばれています。
Bluetooth 制御 × Embedded Swift でのメリット
ラジコンをRaspberry Pi Pico 2+Bluetoothで制御するという用途において、Embedded Swift を使うと次のような利点があります。
- 安定性
- Bluetooth の通信途中のバッファオーバーフローや不正なポインタアクセスなどが原因のクラッシュを未然に防げます
- 既存ドライバの活用
- 既存の Bluetooth モジュールの CやC++ ドライバがありますが、これを Swift 側でラッパーなしまたは最小限のラッパーで使えるようにし、モジュールの組み込みを容易にします
- コードの可読性
- Swift の言語機能などが使えるので、可読性・保守性がよくなります
- 小さなバイナリ
- マイコンにはリソース制約がりますが、Embedded Swift は小さなバイナリを生成することを目指していているので、Bluetooth スタックを載せた上で動作させるマージンが増えます
終わりに
iOSアプリ開発で慣れ親しんだSwiftの表現力や安全性が、組込みの領域でもそのまま活かせるのはとても魅力的でした。
iOSエンジニアにとって、組込みはもはや遠い存在ではないのかもしれません。
- iOSはCiscoの登録商標であり、Apple Inc.がライセンスに基づき使用しています。
- SwiftはApple Inc.の商標です。
- AndroidはGoogle LLCの登録商標です。
- BluetoothはBluetooth SIG, Inc.の登録商標です。
- Raspberry Pi は Raspberry Pi Ltdの登録商標です。

