Raspberry Pi[57] gpsfake
Raspberry Pi上で、本物のGPSを接続せずに、
自作のNMEAファイルを使って gpsd をテスト・デバッグするためのツール。
✅ gpsfakeとは?
- gpsd公式のテスト用ツール
- 自作のNMEAログファイルを仮想GPSデバイスとして再生
- gpsdを自動的に起動し、送信を行う
- クライアントツール(cgps,gpspipeなど)で 実GPSと同様に確認可能
✅ 基本の使い方(1秒ごとに再生)
gpsfake -c 1 -n gps.txt
| オプション | 説明 | 
|---|---|
| -c 1 | 1Hz(1秒ごとに1行送信) | 
| -n | 起動直後に再生開始(待機なし) | 
✅ 送信するNMEA文をコンソールに表示したいとき
gpsfake -c 1 -l -n gps.txt
| -l | ログ表示:送っているNMEA文を標準出力に表示する |
✅ デバッグレベルを追加したいとき(詳細ログが見える)
gpsfake -c 1 -l -D 5 -n gps.txt
✅ 使用前の注意点(衝突防止)
本物のGPSがつながっている場合は…
sudo systemctl stop gpsd
sudo systemctl stop gpsd.socket
✅ これで gpsd が勝手に復活しないようにする
→ gpsfake が起動する gpsd と衝突しない!
✅ 終了後に本物のGPS運用に戻す場合
sudo systemctl start gpsd.socket
sudo systemctl start gpsd
(必要なら sudo systemctl enable gpsd.socket も)
✅ gpsfake 終了方法
- Ctrl + Cでいつでも中断
- 自動で gpsdも終了する
🧪 確認
別端末で:
cgps -s
✅ 緯度・経度・速度などが gps.txt のNMEAデータに応じて表示される!
gpsfakeは整合性もチェックするので、チェックサムが合わないとか、他のNMEAと整合していないとデータをはじくこともあるので、NMEAを自分で作る場合はちゃんと作らないとだめなようです。また、NMEAに含まれているからと言って、gpsd からとれるとも限らない(GGAにはHDOPが含まれるけど、GGAからHDOPは取得しない)など、少し癖があります。

