TCPとシリアルを使用したGPSD


1

だから私はTCP経由で入ってくるNMEAフィードとRS-232フィードのDCDライン上のPPS信号でUbuntu 14.04でgpsdを実行しようとしています。私が使用しているGPSにはRS-232を使用するという選択肢もありますが、その場合はTCP経由で使用する必要があります。

シリアル経由でNMEAとPPSを使用してgpsdを起動しても問題ありません。次のようなものを使います。

sudo gpsd -n /dev/ttyCTI1 /dev/pps0

それからgpsmonを起動すると、NMEA文字列とPPS行の両方が遭遇するのがわかります。

次のようにしてgpsdを起動します。

sudo gpsd -n tcp://192.168.43.172:10001 /dev/pps0

NMEA文字列だけが見えます。

/ dev / pps0でppstestを実行し、/ dev / ttyCTI1でppscheckを実行すると、予期される出力が生成されます。

何が間違っている可能性があるかについての任意のアイデア?私はソースから構築されたgpsd 3.18を使っていることに注意してください。


推測:gpsdはttyを使うとき(gpsdのソースを読むことで確認する)PPSしか使いません。 NMEA TCPパケットの形式がわかりません。形式がttyと同じ場合は、次のようにします。 socat gpsdのttyを偽造します。しかし、待ち時間はおそらく異なるでしょう...
dirkt

情報をありがとう。 TCPストリームを/ dev / virtualcom0にリダイレクトしましたが、同じ結果になります。ppsはありません。他の考えですか?
Rob_S

次のアイデアは「ソースを読み、何が起こるのかを調べる」です。または付ける gdb デバッグシンボル付きのバイナリに変換して、何が起こるのかを調べます。
dirkt
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.