Wearables — 指輪・ネックレス・足首・腕時計を基板からアプリまで
nRF52840を使った指輪・ネックレス・足首バンド・腕時計の開発メモ。基板、3Dプリント筐体、ファームウェア、BLE、iOS/Webアプリの進捗。
概要
指輪・ネックレス・足首バンド・腕時計の開発メモ。回路、筐体、ファームウェア、アプリを制作中。4種ともnRF52840を使用。BLEの仕様を共通化して、iOSアプリとWebアプリでまとめて扱う構成。
| デバイス | ねらい | 現状 |
|---|---|---|
| スマートリング | 心拍・SpO2・睡眠とジェスチャー。薄さ最優先 | フレキ基板の配線中。ファームはビルド済み |
| スマートネックレス | マイクで音声を拾い、文字起こし | ファームと受信側を実装。実機検証はこれから |
| 足首バンド | 歩数・歩行時間。足首での心拍も試験中 | XIAOで加速度ログとUSB回収が動作 |
| スマートウォッチ | 円形LCD・歩数・BLE | 実機で起動。IMU・省電力・BLEまで確認 |
スマートウォッチの例
XIAO nRF52840 Sense、1.28インチ円形LCD、80mAhのLiPoを使用。実物を重ねて高さを測り、筐体を設計。部品の高さは9.5mm、底とベゼルを含む設計上の総厚は11.3mm。
- 筐体は寸法を1つのJSONに集め、そこからCADを生成。部品どうしの干渉に加えて、バネ棒・ベルト・USBプラグの通り道を形状で検査。太いバネ棒を入れたときに干渉が検出されることも確認
- ファームはZephyrで、表示・IMU・電池のピン配置はボード定義だけに書き、同じアプリを開発ボードとXIAOで使用
- 静止時の加速度は9.77〜9.96 m/s²。5秒静止で消灯、動かすと点灯
- 書き込みはUSBシリアル経由で、ボタン操作は不要
共通BLE仕様とアプリ
BLEは標準サービス・共通サービス・個別サービスの3層に整理。各デバイスの既存ファームウェアに共通サービスを追加する構成。UUIDは1つのJSONにまとめ、iOSアプリとWebアプリから読み込み。
- iOSアプリ(SwiftUI + CoreBluetooth): 4種を同時に扱い、記録をJSONで書き出し
- Webアプリ(React + Web Bluetooth): Chromeから直接つなぐか、iOSの記録を読み込んで表示。データはブラウザ内で処理