GNSS受信機 Mosaic-go CLAS にRTK補正データを受け渡す方法あれこれ

Septentrio社のGNSS受信機 Mosaic-go CLAS(以下、受信機)を使っているけど、RTK測位という高速・高精度な測位方法も試してみたい。 そのためには受信機に「補正データ」を渡す必要があり、その方法もいくつかある。
そんなニッチ過ぎる情報です。

動作確認環境

GNSS受信機:Mosaic-go CLAS firmware version 4.15.0

Windows環境で「補正データ」をやり取りする方法

結構いろんな方法があります。

①内蔵のNTripクライアントを使う

手順は こちらの解説公式動画が分かりやすいです。
公式動画の手順を使う場合は、Internet over USB の設定 も必要。
構成はこんな感じ




困ったのは1点だけ。
ネットワーク共有を有効にすると、受信機のIPアドレスが192.168.3.1から別のものに変わるけど、「結局どのIPアドレスになったの?」がわかりにくい。
答えは、192.168.137.の部分は2~254のいずれか。例:192.168.137.117)。
上記リンク先の手順に従って「インターネット共有」を行うと、(レジストリとか触ってなければ)192.168.137.* が割り当てる。

コマンドプロンプトarp -a を実行し、192.168.137.* のアドレスが受信機の新しいIP。

> arp -a
省略
インターフェイス: 192.168.137.1 --- 0x16
  インターネット アドレス 物理アドレス           種類
  192.168.137.249       56-1d-69-ea-93-f1     静的
  192.168.137.255       ff-ff-ff-ff-ff-ff     静的
省略


あとは、ブラウザでアクセスして、Corrections > NTRIPで設定すれば設定完了。
アイコンや線が緑色になればOK。


②PCから RxAssistant や RxControl を使って、受信機に補正データを送る

Septentrio純正ツールRXtoolsの「RxAssistant」「RxControl」「Data Link」には、NTripクライアント機能が内蔵されている。
ツールでNTripキャスターの情報を設定して、出力先に受信機のCOMポートを指定すればOK。
あとはツールが補正データを送り続けてくれる。

③PCから STRSVRを使って受信機に補正データを送る(TCP/IP編)

Septentrio公式ツールでなくても、RTKLIBに含まれるSTRSVRというツールを使うと、RxAssistantと同じようなことができる。
構成はこんな感じ


GUIのツールなので操作は簡単。
STRSVRを立ち上げて、Inputを設定


Outputを設定。前述のネットワーク共有を使っていない場合、受信機のIPアドレスは 192.168.3.1 固定。なので、送信先は 192.168.3.1:28784 に設定すればいい。
28784は受信用のポート番号。別の用途でも28784を使う場合は、受付ポート番号を増やすこともできる。


Startを押す


Web画面で次のように表示されていればOK


④PCから STRSVRを使って受信機に補正データを送る(シリアル編)

同じSTRSVRを使って、シリアルポート経由でデータを送るという方法もある。
構成はこんな感じ


バイスマネージャーでCOMポートを確認


InputはTCP/IP編と一緒。

Outputは先ほど確認したCOMポートを設定。


Startを押す


Web画面で次のように表示されていればOK



Linux環境で「補正データ」をやり取りする方法

前提:Linuxだと受信機内蔵のNTripクライアントを使うのが難しい

Mosaicチップには色々な機能があるので、本来はネットワーク関連機能も充実しているし、簡単に補正データが受信できそう。
なんだけど、残念ながらそのチップを使ったMosaic-go CLASはコンパクトな分、ネットワーク機能が限定的。。。
Windowsのネットワーク共有のような手軽な手段もない。
NAT設定やP2PP(Point-to-Point Protocol)などネットワーク環境を整える手段はあるけど、受信機にデフォルトゲートウェイを伝える手段が見当たらない。
(もしかするとSeptentrio独自の制御コマンドを送れば設定できるのかもしれないけど、未確認。)

①PCから RxAssistant や RxControl を使って、受信機に補正データを送る

原理的にはWindows環境と同じなので省略

②PCから str2strを使って受信機に補正データを送る

STRSVRのCUI版「str2str」を使う。

インストール方法:

$ sudo apt update
$ sudo apt install rtklib


実行方法 (aaa.jpとmount_pointは例なので、適切なのに置き換える。 )

$ str2str -in ntrip://aaa.jp:2101/mount_point -out tcpcli://192.168.3.1:28784
stream server start
2025/10/18 01:41:51 [WW---]          0 B       0 bps (0) connecting... (1) connecting...
2025/10/18 01:41:56 [CC---]       3358 B    6912 bps (0) aaa.jp/mount_point (1) 192.168.3.1
2025/10/18 01:42:01 [CC---]       8542 B    6887 bps (0) aaa.jp/mount_point (1) 192.168.3.1
2025/10/18 01:42:06 [CC---]      11998 B    6884 bps (0) aaa.jp/mount_point (1) 192.168.3.1

[CC---]と出ていれば、転送OK。bpsは転送速度

Web画面を確認して、次のように表示されればOK


③その他

str2strでシリアルポートにも送れそう。
rtklib-qtというパッケージもあったので、GUIでもできそう(どっちも未確認)

$ apt search rtklib-qt
rtklib-qt/jammy 2.4.3.b34+dfsg-1 amd64
  RTK and other advanced GNSS positioning techniques -- Qt GUI


情報を集めるときに、下記書籍が参考になりました。