GeoMotion Sender / Receiver
スマートフォンの高精度GPSを、そのままカーナビの現在地にする。 内蔵GPSの精度に不満のあるAndroidカーナビを、2つのアプリで置き換えます。
🔗 仕組み
スマートフォン
GeoMotion Sender
GPS・加速度センサー・磁気センサーの情報をまとめ、位置と方位を算出して送信します。
Androidカーナビ
GeoMotion Receiver(無料)
受信した位置情報をシステムの現在地として登録し、ナビアプリに使わせます。
通信はペアリングした2台の間だけで完結します。位置情報が外部サーバーに送信されることは一切ありません。
📱 GeoMotion Sender
ライセンス対象スマートフォン側にインストールする送信アプリです。位置と方位を算出し、カーナビへ流し続けます。
センサーフュージョンによる方位
GPSの方位は停車中や低速時に暴れます。本アプリは速度2m/sを境に、低速時は加速度センサーと磁気センサーから求めたコンパス方位、高速時はGPS方位へ自動で切り替えます。
送信頻度の調整
0.5Hz〜5.0Hzを0.5Hz刻みで調整できます。推奨は1.0Hz。上げすぎると受信側の処理が追いつかない場合があります。
粘り強いBluetooth接続
接続方式を3段階でフォールバックし、切断時は10秒間隔で最大30回(約5分間)自動再接続します。10秒ごとのハートビートで接続状態を監視します。
バックグラウンド動作
フォアグラウンドサービスとして動作するため、他のアプリを操作していても送信は止まりません。接続先デバイスは保存され、次回から選び直す必要はありません。
リアルタイムのステータス表示
GPSの取得状況と精度、コンパス方位、各センサーの状態、現在のフュージョンモードを1秒間隔で表示。累計送信数と接続数も確認できます。
送信データ
緯度・経度・方位角・GPS精度・タイムスタンプ・方位モード・シーケンス番号を、1行1件のJSONとして送信します。
🚗 GeoMotion Receiver
完全無料カーナビ側にインストールする受信アプリです。ライセンスは不要で、単体でも無料でお使いいただけます。
システムの現在地を置き換え
受信した位置をAndroidのGPSプロバイダに書き込むため、Googleマップをはじめ端末のどのナビアプリからも、そのまま現在地として利用できます。
受信データの検証
緯度・経度・方位・精度の範囲、シーケンス番号の重複と順序、タイムスタンプのずれ(±30秒)を確認し、異常なデータは破棄します。
注入間隔の調整
50ms〜1000msの範囲で設定できます。標準は200ms、表示をより滑らかにしたい場合は100ms、最高精度は50ms(バッテリー消費は増えます)。
接続を待ち続ける設計
カーナビ側が接続の待ち受け役です。1回あたり最大5分の待機を最大10回繰り返すため、エンジン始動後にスマートフォン側を起動しても間に合います。
停止すれば元通り
STOPすると登録した位置プロバイダを解除し、カーナビ本来のGPSに自動で復帰します。
受信状況の可視化
接続状態、最後に受信したデータ、受信件数・注入件数・シーケンス番号を画面上で確認できます。ナビアプリや設定画面へのショートカットも備えています。
🛠 セットアップ
- 1
2台をBluetoothペアリング
スマートフォンとカーナビを、Androidの設定画面であらかじめペアリングしておきます。初回のペアリングだけはアプリからではなく端末の設定で行う必要があります。
- 2
カーナビ側で「仮の現在地情報アプリ」に指定
「設定」→「端末情報」→「ビルド番号」を7回タップして開発者向けオプションを有効にし、「仮の現在地情報アプリを選択」でGeoMotion Receiverを指定します。この設定は必須で、未設定だと位置情報が反映されません。
- 3
カーナビ側で受信を開始
GeoMotion Receiverを起動してSTART、続いてENABLE INJで注入を有効にします。
- 4
スマートフォン側から送信を開始
GeoMotion Senderを起動し、「デバイス選択」でカーナビを選んでSTART。接続されると送信が始まります。
- 5
ナビアプリを起動
いつものナビアプリを開くと、スマートフォンのGPSに基づいた現在地で案内が始まります。
✅ 動作環境
- Android 8.0(API 26)以上
- Bluetooth機能
- 位置情報サービス(送信側)
- 開発者向けオプションと「仮の現在地情報アプリ」の設定(受信側)
- 送信側・受信側の両方にアプリのインストールが必要
💳 ライセンス
ライセンスが必要なのは送信側のGeoMotion Senderのみです。インストールから3か月間は無料でお試しいただけます。
⚠️ ご利用にあたって
- GPSとBluetoothを常時使用するため、スマートフォンのバッテリー消費が増えます。
- 現在はクローズドベータ期間中です。Google Playからの入手にはテスター登録が必要です。
- 運転中の操作は行わず、安全な場所に停車してから設定してください。本アプリは運転中の安全を保証するものではありません。
