我有一个系统,该系统将GPSD用作定位源。我需要将其与另一个使我纬度,经度&的系统集成在一起。时间。
我能够使用nmealib生成NMEA句子:
user@locahost :~/Desktop/nmealib$ build/samples_generate
$GPGGA,154400.00,5000.0000,N,3600.0000,E,3,01,0.0,10.9,M,0.0,M,0.0,0000*7d
$GPGSA,A,3,00,00,00,00,00,00,00,00,00,00,00,00,0.0,0.0,0.0*32
$GPGSV,1,1,01,00,00,000,00,00,00,000,00,00,00,000,00,00,00,000,00*78
我的目标是将其输送到GPSD。
选项1:使用FIFO文件:
mkfifo /tmp/mkfifo
gpsd /tmp/mkfifo
./samples_generate > /tmp/mkfifo
选项2:使用TCP插座:
gpsd tcp://localhost:8888
/samples_generate | nc -p 8888
在这两种情况下,GPSD都出错了。
本质上,我想具有与gpsfake相似的功能,但不使用logfile,而是使用我脚本中的stdout。
您对如何实现此设置有任何想法吗?
我发现了如何管道数据:
stdbuf -oL build/samples_generate | gpsd -n -N /dev/stdin
- stdbuf -Ol 使样本的输出_generate线条缓冲,否则可以将文本缓冲并以大块而不是线条,而不是每行
希望这对有同一问题的人有帮助。
工作设置的gpsmon日志