Glonass BN-808 Glonass BN-808 USB GPS 接收器 Ubuntu 18.04 中的接收器

Glonass BN-808 Glonass BN-808 USB GPS 接收器 Ubuntu 18.04 中的接收器

我在 18.04 中安装了 OpenCPN,并购买了 Glonass BN-808 USB GPS 接收器。它显然是 UBLOX M8030,虽然我不确定这实际上意味着什么,但它应该在 Linux 中受支持。然而,虽然系统盘可以看到总线 001 设备 003 上的接收器(这与 OpenCPN 请求的 tty 或 /dev 格式完全不同),Ubuntu 无法从所述接收器读取任何数据。我已按照 OpenCPN 手册中的说明进行操作,但没有成功。有人有什么建议吗?谢谢 Dave

编辑1:tail -f /var/log/syslog 的输出

我运行了 tail -f /var/log/syslog,得到了比你大得多的输出,对我来说没有任何意义。
检测到了 ublox 接收器,但从那里输出的内容为:

May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870051] usb 1-1.1: New USB device found, idVendor=1546, idProduct=01a8 
May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870060] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 
May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870064] usb 1-1.1: Product: u-blox GNSS receiver 
May 23 15:34:19 dave-Aspire-ES1-523 kernel: [ 1018.870068] usb 1-1.1: Manufacturer: u-blox AG - www.u-blox.com 
May 23 15:34:20 dave-Aspire-ES1-523 mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1" 
May 23 15:34:20 dave-Aspire-ES1-523 mtp-probe: bus: 1, device: 5 was not an MTP device 
May 23 15:34:20 dave-Aspire-ES1-523 kernel: [ 1019.001058] cdc_acm 1-1.1:1.0: ttyACM0: USB ACM device 
May 23 15:34:20 dave-Aspire-ES1-523 kernel: [ 1019.001512] usbcore: registered new interface driver cdc_acm 
May 23 15:34:20 dave-Aspire-ES1-523 kernel: [ 1019.001513] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters 
May 23 15:34:20 dave-Aspire-ES1-523 upowerd[1059]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1 
May 23 15:34:20 dave-Aspire-ES1-523 upowerd[1059]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1:1.1 
May 23 15:34:20 dave-Aspire-ES1-523 upowerd[1059]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1/1-1.1:1.0 
May 23 15:34:31 dave-Aspire-ES1-523 ModemManager[831]: [device /sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1] creating modem with plugin 'u-blox' and '1' ports 
May 23 15:34:31 dave-Aspire-ES1-523 ModemManager[831]: Could not grab port (tty/ttyACM0): 'Cannot add port 'tty/ttyACM0', unhandled serial type' 
May 23 15:34:31 dave-Aspire-ES1-523 ModemManager[831]: Couldn't create modem for device '/sys/devices/pci0000:00/0000:00:12.0/usb1/1-1/1-1.1': Failed to find primary AT port 
May 23 15:42:58 dave-Aspire-ES1-523 systemd-resolved[770]: Grace period over, resuming full feature set (UDP+EDNS0) for DNS server fe80::8e0d:76ff:fe57:2816%3. 
May 23 15:48:17 dave-Aspire-ES1-523 systemd-resolved[770]: Grace period over, resuming full feature set (UDP+EDNS0) for DNS server 192.168.1.1. 
May 23 15:48:19 dave-Aspire-ES1-523 systemd-resolved[770]: Using degraded feature set (UDP) for DNS server fe80::8e0d:76ff:fe57:2816%3. 
May 23 15:50:31 dave-Aspire-ES1-523 systemd-resolved[770]: Using degraded feature set (UDP) for DNS server 192.168.1.1.

我之前运行过 apt-get install gpsd-clients,但不确定它是否正确加载,我确实看到过几次“失败”这个词。

答案1

确保检测到它的最佳方法是检查/var/log/syslog其连接:

  1. 断开 GNSS 接收器
  2. 打开终端并运行tail -f /var/log/syslog命令
  3. 连接 GNSS 接收器并等待其初始化

对于我的 u-blox7 GPS/GLONASS,我有以下输出:

5 月 22 日 23:50:08 主机名内核:[99544.380440] usb 3-2:使用 xhci_hcd 的新全速 USB 设备编号 12
5 月 22 日 23:50:08 主机名内核:[99544.509111]usb 3-2:发现新的 USB 设备,idVendor=1546,idProduct=01a7
5 月 22 日 23:50:08 主机名内核:[99544.509115] usb 3-2:新的 USB 设备字符串:Mfr=1、Product=2、SerialNumber=0
5 月 22 日 23:50:08 主机名内核:[99544.509117]usb 3-2:产品:u-blox 7 - GPS/GNSS 接收器
5月22日 23:50:08 主机名内核:[99544.509119]usb 3-2:制造商:u-blox AG - www.u-blox.com
5 月 22 日 23:50:08 主机名内核:[99544.509363] usb 3-2:ep 0x83 – 将间隔舍入为 1024 微帧,ep desc 表示 2040 微帧
5 月 22 日 23:50:08 主机名 mtp-probe:检查总线 3,设备 12:“/sys/devices/pci0000:00/0000:00:14.0/usb3/3-2”
5 月 22 日 23:50:08 主机名 mtp-probe:总线:3,设备:12 不是 MTP 设备
5 月 22 日 23:50:08 主机名内核:[99544.537420]cdc_acm 3-2:1.0: ttyACM0: USB ACM 设备
5 月 22 日 23:50:08 主机名内核:[99544.538041] usbcore:已注册的新接口驱动程序 cdc_acm
5 月 22 日 23:50:08 主机名内核:[99544.538044] cdc_acm:用于 USB 调制解调器和 ISDN 适配器的 USB 抽象控制模型驱动程序

注意上面的粗线 - 我们看到它确实是u-blox 7并且它被识别为串行端口 -ttyACM0(真的/dev/ttyACM0)。

要测试 GNSS 接收器,您可以使用gpsmon(它将 NMEA 解码为时间、纬度、经度和其他数据):

  1. 安装gpsmonsudo apt-get install gpsd-clients
  2. 使用以下命令启动gpsmon找到的串行端口sudo gpsmon /dev/ttyACM0
  3. 等待 GNSS 找到卫星并获取 NMEA 数据。

注意:要以普通用户身份访问串行端口,您需要将您的用户添加到dialout组中sudo usermod -a -G dialout $USER

答案2

您的内核没有正确处理该类型。

创建文件:/etc/udev/rules.d/49-ublox.rules 通过命令说:

sudo nano /etc/udev/rules.d/49-ublox.rules

并将以下文本放入其中:

# 1546:01a8 - uBlox Receiver
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="1546", ATTRS{idProduct}=="01a8", MODE:="0666"

然后重新启动或者写入:

 sudo udevadm control --reload-rules

之后再次插入设备。设备应显示为 /dev/ttyACM0(数字可能会改变)。然后您可以继续前面的答案。

相关内容