raspberry-pi - GPSD 没有看到完整的数据
问题描述
我正在尝试使用带有 4" 触摸屏设置的 Raspberry Pi 来驱动和捕获一些 WiFi 信号。给我带来问题的部分是让 GPS 正常工作。
我正在尝试使用很久以前获得的 Microsoft Streets & Trips 附带的模块。
lsusb 将设备显示为“总线 001 设备 007:ID 1546:01a5 U-Blox AG [u-blox 5]”
dmesg | grep tty 显示:[8.276615] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM 设备 [344.931792] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM 设备
如果我发出 cat /dev/ttyACM0,我确实会看到数据流
sudo gpsd /dev/ttyACM0 -F /var/run/gpsd.sock 然后 gpsmon /dev/ttyACM0 给出以下内容:
但是当我尝试 cgps -s 我得到:
我似乎得到了一些数据,但没有纬度/经度/时间数据。
我应该断定不支持这个 GPS 模块吗?
解决方案
你确定你的接收器有卫星定位吗?另外,您有 GPS 数据流的日志吗?您知道您使用的是什么特定型号的接收器吗?
从您的第一个屏幕截图来看,您肯定是在接收来自 GPS 的数据,因为它正在识别几个不同的 NMEA 语句。最重要的是,第一个屏幕截图显示了似乎是一个有效的GPGLL
句子(我还没有确认校验和):
$GPGLL,,,,,224538.00,V,N*40
我最初的预感是 GPS 接收器没有卫星定位。这是基于
- 空话
GPGLL
。上面句子中唯一填充的字段是 UTC 时间和状态字段。状态值为V
,表示数据无效。 - 第二个屏幕截图中的状态
NO FIX
。 - 第一个屏幕截图中的各种框给我的印象是 GPSD 正确解析了各种 NMEA 数据包。例如,GSV 框列出了视野中的各种卫星。
- 输出将
lsusb
设备报告为 u-blox 接收器。U-blox 接收器通常得到 GPSD 的可靠支持,因此如果不支持此接收器,我会感到惊讶(但一切皆有可能)。在不知道具体型号的情况下,很难说任何确定的东西。
我只使用过几个不同的接收器,但我的一般经验是,当它们在启动时没有修复时,它们会发送空/部分数据包。这些数据包中的日期/时间数据可能是由于接收器上的实时时钟 (RTC)造成的。RTC 在 GPS 接收器上很常见,因为它们通常会大大提高首次定位时间 (TTFF)。因此,您有时间是有道理的,但它被标记为无效。
建议
您的接收器正在报告可见的卫星(尽管没有正在使用)并且状态NO FIX
是特别有力的证据,这对我来说是您的接收器可能没有修复。试着把它移到能更好看天空的地方。还要确保它是否需要您连接的任何类型的外部天线硬件。最后,您可能需要等待一段时间才能得到修复。如果您使用该设备已经有一段时间了,您可能会遇到 TTFF 超过 10-20 分钟的冷启动。
推荐阅读
- snaplogic - Snaplogic 查询两个源并将数据连接在一起
- html - 如何将 XML 数据添加到 Wix 页面?
- seo - 不同的图像导致谷歌排名下降
- java - 如何在事先不知道数组大小的情况下获取数组的全局引用?
- html - HTML5幻灯片笔记工作(轮播)按钮不起作用
- python - 当 setup.py 使用 Python 版本 3 解释器运行时,如何构建 py2 Wheel 包?
- php - 使用开关或多个三元
- angular - Angular Kendo:标签条的每个标签都有特定的网址
- video - Flutter 直播
- typescript - 打字稿在编译时减去两个数字